cocos2dx 3.x HelloWorld 코드 인식
3101 단어 helloworldcocos2dx
1. AppDelegate.cpp bool AppDelegate::applicationDidFinishLaunching() {
// initialize director
auto director = Director::getInstance();
auto glview = director->getOpenGLView();
if(!glview) {
glview = GLView::create("My Game");
director->setOpenGLView(glview);
}
// turn on display FPS
director->setDisplayStats(true);
// set FPS. the default value is 1.0/60 if you don't call this
director->setAnimationInterval(1.0 / 60);
// create a scene. it's an autorelease object
auto scene = HelloWorld::createScene();
// run
director->runWithScene(scene);
return true;
}
auto director = Director::getInstance();//감독류 초기화
auto glview = director->getOpenGLView();//감독 클래스를 통해 OpenGL 창 가져오기
director->setDisplayStats(true);//게임의 프레임 수를 표시할 지 여부와 같은 디버깅 정보를 설정합니다
director->setAnimationInterval(1.0/60);//게임 프레임 수 설정, 현재 1초 60 프레임으로 설정
auto scene = HelloWorld::createScene();//장면 생성하기
director->runWithScene(scene);//이 단계를 실행해야만 장면 클래스를 표시할 수 있습니다
2.HelloWorldScene.h #ifndef __HELLOWORLD_SCENE_H__
#define __HELLOWORLD_SCENE_H__
#include "cocos2d.h"
class HelloWorld : public cocos2d::Layer
{
public:
// there's no 'id' in cpp, so we recommend returning the class instance pointer
static cocos2d::Scene* createScene();
// Here's a difference. Method 'init' in cocos2d-x returns bool, instead of returning 'id' in cocos2d-iphone
virtual bool init();
// a selector callback
void menuCloseCallback(cocos2d::Ref* pSender);
// implement the "static create()" method manually
CREATE_FUNC(HelloWorld);
};
#endif // __HELLOWORLD_SCENE_H__
장면 클래스는 실제 장면이 아니라 새로운 장면 클래스입니다. auto scene = Hello World::createScene().
CREATE_FUNC(HelloWorld); #define CREATE_FUNC(__TYPE__) \
static __TYPE__* create() \
{ \
__TYPE__ *pRet = new __TYPE__(); \
if (pRet && pRet->init()) \
{ \
pRet->autorelease(); \
return pRet; \
} \
else \
{ \
delete pRet; \
pRet = NULL; \
return NULL; \
} \
}
매개변수TYPE__ 사실은 매크로 안의 매크로로 컴파일할 때TYPE__모두 HelloWorld로 교체, 사실 CREATEFUNC(HelloWorld)는HelloWorld::create() 함수로HelloWorld 대상을 만드는 데 사용됩니다.
3. HelloWorldScene.cpp Scene* HelloWorld::createScene()
{
// 'scene' is an autorelease object
auto scene = Scene::create();
// 'layer' is an autorelease object
auto layer = HelloWorld::create();
// add layer as a child to scene
scene->addChild(layer);
// return the scene
return scene;
}
auto scene = Scene::create();//장면 클래스 만들기
auto layer = HelloWorld::create();//HelloWorld 객체를 만들려면create 함수는 매크로 CREATE 를 사용합니다.FUNC(HelloWorld)가 정의합니다.
scene->addChild(layer);//layer 대상을 scene에 추가
return scene;//장면으로 돌아가기
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
안녕, 세계! C 프로그램
이번 포스팅에서는 Hello, World!
이해하기 쉬운 방식으로 C로 프로그래밍하십시오.
Hello, World를 이해하기 위해!
C로 프로그래밍하려면 다음 게시물에 대한 지식이 있어야 합니다.
(해시) 포함
(해...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.
bool AppDelegate::applicationDidFinishLaunching() {
// initialize director
auto director = Director::getInstance();
auto glview = director->getOpenGLView();
if(!glview) {
glview = GLView::create("My Game");
director->setOpenGLView(glview);
}
// turn on display FPS
director->setDisplayStats(true);
// set FPS. the default value is 1.0/60 if you don't call this
director->setAnimationInterval(1.0 / 60);
// create a scene. it's an autorelease object
auto scene = HelloWorld::createScene();
// run
director->runWithScene(scene);
return true;
}
#ifndef __HELLOWORLD_SCENE_H__
#define __HELLOWORLD_SCENE_H__
#include "cocos2d.h"
class HelloWorld : public cocos2d::Layer
{
public:
// there's no 'id' in cpp, so we recommend returning the class instance pointer
static cocos2d::Scene* createScene();
// Here's a difference. Method 'init' in cocos2d-x returns bool, instead of returning 'id' in cocos2d-iphone
virtual bool init();
// a selector callback
void menuCloseCallback(cocos2d::Ref* pSender);
// implement the "static create()" method manually
CREATE_FUNC(HelloWorld);
};
#endif // __HELLOWORLD_SCENE_H__
장면 클래스는 실제 장면이 아니라 새로운 장면 클래스입니다. auto scene = Hello World::createScene().
CREATE_FUNC(HelloWorld);
#define CREATE_FUNC(__TYPE__) \
static __TYPE__* create() \
{ \
__TYPE__ *pRet = new __TYPE__(); \
if (pRet && pRet->init()) \
{ \
pRet->autorelease(); \
return pRet; \
} \
else \
{ \
delete pRet; \
pRet = NULL; \
return NULL; \
} \
}
매개변수TYPE__ 사실은 매크로 안의 매크로로 컴파일할 때TYPE__모두 HelloWorld로 교체, 사실 CREATEFUNC(HelloWorld)는HelloWorld::create() 함수로HelloWorld 대상을 만드는 데 사용됩니다.
3. HelloWorldScene.cpp Scene* HelloWorld::createScene()
{
// 'scene' is an autorelease object
auto scene = Scene::create();
// 'layer' is an autorelease object
auto layer = HelloWorld::create();
// add layer as a child to scene
scene->addChild(layer);
// return the scene
return scene;
}
auto scene = Scene::create();//장면 클래스 만들기
auto layer = HelloWorld::create();//HelloWorld 객체를 만들려면create 함수는 매크로 CREATE 를 사용합니다.FUNC(HelloWorld)가 정의합니다.
scene->addChild(layer);//layer 대상을 scene에 추가
return scene;//장면으로 돌아가기
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
안녕, 세계! C 프로그램
이번 포스팅에서는 Hello, World!
이해하기 쉬운 방식으로 C로 프로그래밍하십시오.
Hello, World를 이해하기 위해!
C로 프로그래밍하려면 다음 게시물에 대한 지식이 있어야 합니다.
(해시) 포함
(해...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.
Scene* HelloWorld::createScene()
{
// 'scene' is an autorelease object
auto scene = Scene::create();
// 'layer' is an autorelease object
auto layer = HelloWorld::create();
// add layer as a child to scene
scene->addChild(layer);
// return the scene
return scene;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
안녕, 세계! C 프로그램이번 포스팅에서는 Hello, World! 이해하기 쉬운 방식으로 C로 프로그래밍하십시오. Hello, World를 이해하기 위해! C로 프로그래밍하려면 다음 게시물에 대한 지식이 있어야 합니다. (해시) 포함 (해...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.