utilForever / Cubby-v1

Voxel-based game client (based on AlwayGeeky's Vox)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Game Object를 할당할때 Base Object가 필요해보입니다.

ArtBlnd opened this issue · comments

class CubbyObject 을 보다 쉬운 오브젝트 디버깅을 위해서 모든 GameObject에 상속해줘야 한다고 생각합니다.

#ifdef _DEBUG
unsigned g_RegisteredObject = 0;

class CubbyObject
{
   CubbyObject()
   { g_RegisteredObject++; }
   ~CubbyObject()
   { g_RegisteredObject--; }
}
#else
class CubbyObject
{
   CubbyObject() = delete;
   ~CubbyObject() = delete;
}
#endif

해주면 좋을것같습니다. 적어도 언제 어디서 오브젝트가 삭제되는지 알면 디버깅이 편해지니까요.

그리고 오브젝트 디버깅을할때 굳이 오브젝트를 찾아가서 브릭포인트를 걸 필요가 없어집니다.
해당 디버깅 코드에 브릭포인트를 걸고 CubbyObject의 생성자나 소멸자에 브릭포인트를 걸면되니까요.

CubbyObject 자체에 넘버링을 해주는것도 괜찮을것같네요.

디버그 모드에서 게임 오브젝트의 생성 / 삭제 여부를 로그로 볼 수 있다면 많은 도움이 됩니다.
의견 감사드리고 추가 작업할 수 있도록 하겠습니다.

210d516 에서 CubbyObject를 추가했습니다.
모든 GameObject 클래스와 더불어 Manager에도 추가하는게 도움이 될까요?
(예를 들어, NPC와 NPCManager 클래스)