반응형

유니티 Spawn 2

Part 3-13-9. 미니 RPG : 몬스터 자동 생성, 完

미니 RPG 몬스터 자동 리스폰 서버 측에서 한다. 몬스터가 죽으면 몬스터의 전체적인 숫자를 맞춰주기 위해 랜덤한 위치에서 스폰을 한다. 이렇게 서버측에서 스폰을 한 후 클라이언트에게 알려준다. 📜 GameManager public Action OnSpawnEvent; public GameObject Spawn(Define.WorldObject type, string path, Transform parent = null) { GameObject go = Managers.Resource.Instantiate(path, parent); switch(type) { case Define.WorldObject.Monster: _monsters.Add(go); if (OnSpawnEvent != null) OnSp..

Part 3-13-7. 미니 RPG : Destory

미니 RPG Destroy 오브젝트가 Destroy 될 때 오브젝트가 메모리 해제되면 유니티의 Object의 == 연산자 오버로딩으로 인하여 해제된 객체를 == null 비교 연산할 땐 그 객체를 참조하는 참조 변수들은 댕글링 포인터가 되는 것이 아닌 “null”이 되도록 처리된다. 따라서 해제된 오브젝트의 컴포넌트를 참조하는 것들을 잘 확인해야 한다. 크러쉬가 날테니까! 오브젝트가 해제되면 당연히 그 오브젝트의 컴포넌트들에도 참조할 수 없다. 형변환 연산 비용 줄이는 대안 📜GameManager 에서 오브젝트들을 스폰하고 디스폰하는 작업을 할 것이다. 근데 어떤 오브젝트를 스폰해야하는지를 알아야 한다. 그러면 📜BaseController 타입으로 업캐스팅해서 받는 방법도 있을테고(근데 이러면 상속이 아..

반응형