메뉴 건너뛰기

창작에 관련된 질문이나 간단한 팁, 예제를 올리는 곳

만약 CocoStudio로 UI를 만든 후
GUIReader를 써서 지정 폰트를 불러오면
엔진 버그로 인해서 메모리 누수가 생긴다.
이걸 고치려면 LabelBMFont.cpp를 아래와 같이 수정해야 한다.

void LabelBMFont::setFntFile(const char *fileName)
{
    if (!fileName || strcmp(fileName, "") == 0)
    {
        return;
    }

    _fntFileName = fileName;
    _labelBMFontRenderer->initWithString("", fileName);
    _labelBMFontRenderer->setFntFile(fileName);
    updateAnchorPoint();
    labelBMFontScaleChangedWithSize();
    _fntFileHasInit = true;
    setText(_stringValue.c_str());
}

initWithString을 지우고
SetFntFile을 집어넣는다.

원래대로라면 Init를 두번하는 셈이 되므로
이 경우 TextAtlas가 중복 생성되서 메모리 누수가 발생한다.

일단 cocos2d-x의 CCLabelBMFont는 두번 init를 허용하지 않는데
왜 이렇게 두번 init하게 프로그램을 짜놨는지 모르겠다.
실수겠지...
조회 수 :
783
등록일 :
2014.03.10
02:21:11 (*.75.34.131)
엮인글 :
게시글 주소 :
https://hondoom.com/zbxe/index.php?mid=study&document_srl=769819

clans

2014.05.24
11:26:02
(*.197.153.233)

좋은정보 퍼가요 제블로그에 출처 남겨둘게요.^^

sunghoon

2014.05.31
19:30:24
(*.177.106.187)

좋은 정보 감사합니다. 퍼갈게요

List of Articles
번호 제목 글쓴이 날짜 조회 수
10 cocos2d-x 2.2.2 윈도우 환경 기본 메모리 누수 똥똥배 2014-03-10 640
» cocos2d-x 2.2.2 UILabelBMFont 메모리 누수 해결법 [2] 똥똥배 2014-03-10 783
8 Cocostudio의 ActionNode 메모리 누수 해결법(cocos2d-x 2.2.2) [2] 똥똥배 2014-03-09 776
7 cocos2d-x CCMenuItem 자신을 지웠을 때 생기는 에러 똥똥배 2013-09-13 442
6 cocos2d-x Clipping Layer 수정 똥똥배 2013-09-10 670
5 cocos2d-x 게임을 iOS에 이식할 때 생기는 문제들 똥똥배 2013-08-26 543
4 cocos2d-x에서 schedule_selector 정의 변화 [1] 똥똥배 2013-08-19 521
3 cocos2d-x 외부파일을 이용한 한글 처리 [1] 똥똥배 2013-07-08 1938
2 cocos2d의 가비지 컬렉터 똥똥배 2012-02-07 1962
1 cocos2d-x 터치와 업데이트 활성화 시키기 똥똥배 2011-10-27 10656