cocos2d-x 004 그림 띄우기

cocos2d-x 004 그림 띄우기

지난 시간에 이어서 cocos2d-x 를 배웁니다.

사실 화면 띄우기를 해볼 차례인데, 다음으로 미루고 그림 띄우기를 해봅니다.

cocos2d-x는 기본적으로 씬(Scene, 화면)이라는 개념이 있고, 씬 위에 레이어를 올리는 방식으로 보입니다. 레이어 위에는 스프라이트(그림)을 올립니다.

1개의 씬은 1개의 cpp 파일이라고 보면 될 것 같고요. 만약 Temp라는 씬을 만들고 싶다면, TempScene.cpp/h 파일을 만들어주는 것이죠.

씬(화면) – 레이어 – 스프라이트(그림). 이러한 계층 구조입니다.

현재 씬(화면), 레이어, 스프라이트 등 모두 다 준비가 되어 있는데요. HelloWorldScene.cpp 가 그것입니다. 전부 준비가 되어있기 때문에 마지막 부분에서 그림만 바꿔 표시해보겠습니다.

그림을 준비합니다. 그림이나 폰트는 Resources 폴더 안에 준비하면 됩니다.

기본제공되는 HelloWolrd.png 를 복사해서, 같은 크기로 main.png 라는 그림을 준비했습니다.

현재 저희 프로그램은 HelloWorldScene.cpp 의 bool HelloWorld::init() 함수를 부르고 있는데요. 이 함수의 가장 하단 내용은 다음과 같습니다. 헷갈리므로 주석은 제거하고 설명합니다.

auto sprite = Sprite::create(“HelloWorld.png”);
sprite->setPosition(Vec2(visibleSize.width/2 + origin.x, visibleSize.height/2 + origin.y));
this->addChild(sprite, 0);

눈치밥으로 HelloWorld.png 라는 그림을 중앙에 띄우는 내용임을 알 수 있습니다.

그럼 바로 그 아래에 코드를 이어 씁니다. main.png 를 띄워봅시다.

auto sprite2 = Sprite::create(“main.png”);
sprite2->setPosition(Vec2(visibleSize.width / 2 + origin.x, visibleSize.height / 2 + origin.y));
this->addChild(sprite2, 0);

이렇게 코드를 덧붙이고 게임을 실행하면 아래 화면처럼 나옵니다.

그림 띄우기 성공입니다.