동적으로 TMXTiledMap::create()를 하면 화면에 리소스를 띄우는 데 까지 수십초 이상 소요되는 문제가 있었다.
디버그모드에서만 발생하는 문제라서 한참을 고민하고 불편해했었는데, '혹시?!'하는 생각에 코드 한 줄 수정했더니 아주 빠르게 잘 돌아간다.
문제는 VLD(Visual Leak Detector)때문이었다.
VLD가 new, delete할 때마다 개입해서 하는 짓이 많다보니, 잦은 new(100*100칸의 tileset이라면 1만번~최대 수만번의 new가 발생할 것)때문에 그렇지 않았나 싶다.
결국 TMXTiledMap을 이용하는 프로젝트에서는 게임이 돌아가는 화면을 제대로 보려면 디버그시 VLD를 꺼야만 한다.
그러면 내 미천한 실력으로 인해 줄줄 새어나가는 메모리는 누가 봐주지..
'개발일지 > 투디맵프로젝트' 카테고리의 다른 글
0.1버전 리팩토링(을 시도)하였다. (0) | 2016.03.14 |
---|---|
0.1버전 완성 (0) | 2016.03.11 |
cocos2d-x TMXTiledMap 테어링(티어링)문제 해결 (0) | 2016.02.22 |
존 기반 맵 돌아다니기 완성 (0) | 2016.02.21 |
투디맵 프로젝트 본격 시작 (0) | 2016.02.20 |