문제 : 

테스트하려고 패키징한 게임에서 1분내 랜덤한 타이밍으로 갑자기 안움직이길래

아 ㅅㅂ 뭐지? 했다.

 

여러가지 디버깅을 해보니 플레이어의 상태를 관리하던 객체 데이터가 날라가는것 =~=

나는 그 상태에 따라 움직이기 때문에 값이 날라가버려 움직여지지 않았던 것이다ㅋㅋ

 

상태를 관리하는 Enum값이 0아니면 1, 2, 3이 되어야 할 애들이 갑자기 253이렇게 바뀌고 난리였다~


문제 해결

내가 관리하는 상태 클래스를 Player클래스에서 포인터 타입으로 가지고 있었다.

하지만 UPROPERTY가 붙지 않은...

 

UPROPERTY가 붙지않은 포인터는 GC에서 걸려지기 때문에

내 상태 데이터가 GC에서 자동으로 걸러지는거였더라리~

 

바로 UPROPERTY붙이고 실행하니 다행이 해결 되었다.


느낀점

엔진에서 다룰 필요가 없기 때문에 UPROPERTY를 붙이지 않았는데

이제 이러한 문제 까지 고려해야겠다

 

잘 배웠다

+ Recent posts