InitMenuScence이 가장먼저 들어옴. 다음 Opend 따라서, PlatformInterface클래스들은 Static으로 구현되어있고, 델리게이트를 등록해야 하므로, InitMenuScene에서 구현하면, Scene이 열릴때는 제대로 동작하지만, Closed에서 델리게이트 해제를 하다보면, 다시 InitMenuscene이 동작하면서, 크래시가 발생하게됨.

Opend에서 객체를 얻어오고, 델리게이트를 등록, Closed에서 델리게이트 해제해서 사용하면 됨.

델리게이트 함수로 하나의 결과가 들어올때, 다른 델리게이트에서도 값이 들어온다면, 이전의 실행중이던 델리게이트는 멈추던데.. 스레드와 비슷한 개념은 아닌듯....



크래시가 날경우, 포럼에서 답변달아둔것인데 아래처럼 고쳐 사용하면 됨.

In ScriptPlatformInterface.cpp, in the IMPLEMENT_PLATFORM_INTERFACE_SINGLETON macro, add the AddToRoot line:
   
/* make the singleton object */ \
Singleton = ConstructObject<Class>(SingletonClass); \
check(Singleton); \
Singleton->AddToRoot(); \ // <-- 여기

'Language > UnrealScript' 카테고리의 다른 글

UObject  (0) 2012.03.27

+ Recent posts