블로그 이미지
게임같은 인생 인생같은 게임 쿡지

카테고리

분류 전체보기 (12)
준&빈 (1)
나만의 개념 챙기기 (2)
My Story (0)
cocos2d-x (7)
My Games (0)
My_Work (0)
Etc (2)
Total
Today
Yesterday

'2013/04'에 해당되는 글 1건

  1. 2013.04.24 CCLabelBMFont 사용시 주의 점. 3



CCLabelBMFont *M_MakeLabel(float x, float y, const char *str, int align, float fontSize)

{

    float size = fontSize*mg.factor/52.0f;

    

    CCLabelBMFont *label = CCLabelBMFont::create(str, "BDFont.fnt");

    label->retain();    // 이 부분을 빼 놓으면 실행시 에러 발생!!

    

    label->setAnchorPoint(CCPointMake(0, 1));

    label->setPosition(CCPointMake(x, y));

    

    switch (align) {

        case 1:

            label->setAnchorPoint(CCPointMake(0.5, 0.5));

            label->setAlignment(kCCTextAlignmentCenter);

            break;

            

        case 2:

            label->setAnchorPoint(CCPointMake(1, 1));

            label->setAlignment(kCCTextAlignmentRight);

            break;

            

        default:

            label->setAnchorPoint(CCPointMake(0, 1));

            label->setAlignment(kCCTextAlignmentLeft);

            break;

    }

    

    label->setScale(size);

    label->setString(str);

    

    return label;

}


cocos2d-x 클래스는 retain()과 release()로 메모리를 관리한다.

특히 클래스를 메소드 내에서 선언하여 전역적으로 사용할 경우 반드시 retain()를 해줘야만 한다.

아니라면 release()이후 메모리 상에 문제가 생길 수 있다.

Posted by 알 수 없는 사용자
, |

최근에 달린 댓글

글 보관함