-
카테고리
-
세부 분야
게임 프로그래밍
-
해결 여부
해결됨
FBX Loader 메모리 릭 해결법
21.10.10 20:18 작성 조회수 138
0
직접 엔진을 짜던 도중에 + 디버깅 중에
강의에서 사용된 FBX 로더의 메모리릭을 발견했습니다.
저만 그런건지 모르겠지만 해결법도 같이 공유합니다.
메모리릭의 원인은
FbxArray<FbxString*> _animNames;
이 FBX SDK의 데이터를 제대로 릴리즈 하지 않아서 그랬습니다.
저는 따로 셧다운 함수를 늘 만들어서 쓰는편인데, (디스트럭터에 해도 됩니다.)
해당 함수에 추가로
I32 count = _animNames.GetCount();
for (I32 i = 0; i < count ; i++)
{
_animNames[i]->Clear();
delete _animNames[i];
}
_animNames.Clear();
부분을 추가하시면 됩니다.
FBX SDK 문서를 보면 Clear 만으로 메모리를 해제해주는것 같았는데,
왜 인지는 모르겠지만 디버깅 중에 메모리 덤프가 C런타임에 잡혔습니다.
큰 메모리블록이 줄줄 새는건 아니지만 신경쓰인다면 이렇게 해제하세요!
혹시나 찾는 사람 있을까봐 글 작성합니다.
답변을 작성해보세요.
0
답변 1