'2013/09'에 해당되는 글 12건

  1. 2013.09.23 cocos2d-x 기본 컨셉
  2. 2013.09.22 챕터 6 - 씬을 전환하는 방법 (1)
  3. 2013.09.22 챕터 5 - 음악 재생 및 이펙트 효과음 재생 하는 법
  4. 2013.09.22 챕터 4 - 충돌 체크하는 법
  5. 2013.09.21 챕터 3 - 표창을 발사하는 방법
  6. 2013.09.21 챕터 2 - 스프라이트를 움직이는 방법
  7. 2013.09.21 챕터 1 - 스프라이트를 추가하는 방법
  8. 2013.09.21 Tutorial - cocos2d-x 로 간단한 게임 만들기
  9. 2013.09.21 cocos2d-x 기본 세팅 - 4 (2)
  10. 2013.09.20 cocos2d-x 기본 세팅 - 3

cocos2d-x 기본 컨셉

|

현재 cocos2d-x 홈페이지에 있는 내용을 간단하게 요약하여 정리 후 포스팅할 예정입니다.

혼자서 공부하면서 얻은 지식이나 방법들을 미약하지만 공유하고 싶습니다.

cocos2d-x 는 오픈소스 기반이며 쉽고 강력한 엔진입니다.

C++, Lua, javascript등의 언어를 지원하고 아이폰,안드로이드,윈도우폰,블랙베리,타이젠,등을 지원하는 

크로스 플램폼 엔진입니다.

cocos2d-x는 현재 150만명이 다운받았고 사용하고 있습니다 . 많은 게임들이 앱스토어나 구글플레이에서 높은 수익을 얻고 있습니다.

 

 

Trackback 0 And Comment 0

챕터 6 - 씬을 전환하는 방법

|

SimpleGame은 기초적인것은 완성되었습니다. 우리는 좀 더 전문적인 게임을 만들기 위해서 몇가지 기능을 더 추가할 생각입니다.

이번 챕터에서는 우리는 새로운 씬을 추가할것입니다. 적들을 일정 개수만큼 없애면 "You Win!" 그렇지 못하면 "You lose"화면이 출력됩니다.

GameOverScene.cpp 와 GameOverScene.h 파일을 만듭니다.

 

 

 

 GameOverScene 파일을 만들면 아래와같이 생성되는데 이 두개의 파일을 Classes 폴더 하위에 옮깁니다.

먼저 두개의 파일을 선택하고 del 키를 누르거나 오른쪽 - 삭제 메뉴를 클릭합니다.

 

 

 

 이렇게 제거를 하고 난 다음에 실제로 존재하는 파일위치를 변경합니다,

클래스를 생성하면 proj.win32 폴더에 파일이 생성되는데 이파일을 Classes 폴더에 옮깁니다.

예) C:\Android\cocos2d-x\cocos2d-x-2.1.5\projects\SimpleGame\proj.win32

     C:\Android\cocos2d-x\cocos2d-x-2.1.5\projects\SimpleGame\Classes

visual studio 의 폴더와 실제 폴더 위치를 동일하게 해줘야 나중에 문제가 생기지 않습니다

 

 

 

 

 

이렇게 파일의 위치를 옮기고 Class폴더에서 오른쪽 버튼 - 추가 - 기존항목을 눌러 cpp와 h를 추가하거나 폴더에서 드래그앤 드롭으로 추가합니다.

파일의 위치를 수정하고 GameOverScene.h와 GameOverScene.cpp를 아래와 같이 수정합니다

팁:

1. 클래스 멤버 함수는 .m 파일에서는 h파일에 선언없이 사용할수 있지만 c++에서는 무조건 선언해줘야된다.

2. 함수 create() (2.0 이전 버전에서는 node()) 는 c++에서는 self 라는 키워드가 없습니다.

CREATE_FUNC는 더 쉽게 create()함수를 생성하게 도와주는 매크로 입니다.

두매크로를 사용하기 위해서는 init()를 구현해야됩니다.

3. cocos2d-x에서는 안드로이드 sdk 에서는 try catch를 지원하지 않기 때문에 초기화를

생성자에서 한번 init에서 한번 촉화 합니다

4. setter 및 getter _lable와 _layer는 다양한 매크로로 구현할수 있으며,

위 코드에서 CC_SYNTHESIZE_READONLY 는 getter 만 구현 합니다.

GameOverScene.cpp 코드

GameOverScene.cpp 에서는 하나의 scene 과 하나의 layer 로 구현된다. 하나의 신은 여러 layer 포함할수 있습니다.하나의 레이어의 중앙에 "You Win!" 혹은 "You Lose!"를 출력합니다.

1. GameOverLayer _label 과 GameOverScene _layer 은 선언되었고, init에서 retain을 해주고 소멸자에서 release를 해줘야 됩니다.

2. NSAutoReleasePool 은 cocos2d-x 에서도 존재합니다.

우리는 두가지 경우에 release()를 호출합니다.

  • 개체에 new 로 선언했을때 예를 들어 CCSprite * sprite = new CCSprite();
  • 개체가 static 함수에 의해서 만들어질때 예를 들어 CCSprite * sprite = CCSprite::create(); 에는 필요하지 않지만 sprite->retain()을 호출하면 sprite->release()를 호출해야 됩니다.

 

우리는 HelloWorldScene 다음 변수를 추가해야 됩니다.(얼마나 많은 적을 죽였는지 카운팅 해주는 변수)

int _projectilesDestroyed;

HellWorld::HelloWorld() 에서 초기화 시켜줍니다.

HelloWorld::HelloWorld()

        :_targets(NULL),

        _projectiles(NULL),

        _projectilesDestroyed(0)

{

}

GameOverScene.h 를 HelloWorldScene.cpp 에 include 를 해줍니다.

#include "GameOverScene.h"

 

이길때 처리

HelloWorld::update() 함수의 TargetsToDelete 루프에 다음 코드를추가합니다.

        //충돌한 적에 대한 처리

        CCARRAY_FOREACH(targetsToDelete, jt)

        {

               CCSprite * target = dynamic_cast<CCSprite *>(jt);

               _targets->removeObject(target);

               this->removeChild(target, true);

              

               _projectilesDestroyed++;

               if(_projectilesDestroyed >= 5){

                       GameOverScene * gameOverScene = GameOverScene::create();

                       gameOverScene->getLayer()->getLabel()->setString("You win!");

                       CCDirector::sharedDirector()->replaceScene(gameOverScene);

               }

 

        }

질때 처리

HelloWorld::spriteMoveFinished에 다음 코드를 추가합니다.

//배열에 집어넣었던 or 표창을 배열에서 제거한다.

        if(sprite->getTag() == 1) //

        {

               _targets->removeObject(sprite);

 

               //적이 하나라도 화면을 벗어나면 게임에서 진다.

               GameOverScene * gameOverScene = GameOverScene::create();

               gameOverScene->getLayer()->getLabel()->setString("You Lose :[");

               CCDirector::sharedDirector()->replaceScene(gameOverScene);

        }

 

 

모든 준비가 끝났습니다. 컴파일을하고 실행을 합시다.

적. 표창 ,배경음악, 승리화면 등 모두 완성 했습니다.

 

 

Trackback 0 And Comment 1
  1. 감사합니다 2013.10.06 00:04 address edit & del reply

    많은 도움이 됐습니다!!

    튜토리얼 한번 따라하기 무지 힘드네요..

    무슨 셋팅이 저리도 복잡한지.. ㅠㅠㅠ

챕터 5 - 음악 재생 및 이펙트 효과음 재생 하는 법

|

이번 챕터에서는 우리는 배경음악 및 게임내 효과음을 재생하는 방법을 배울것입니다.

약간의 코드만을 추가하는것만으로도 쉽게 음악을 재생할수있습니다.

cocos2d-x 에서는 SimpleAudioEngine가 존재합니다.

먼저 첨부파일 2개를 다운받으시고 Resources 폴더에 집어넣으세요

 

5.zip

HelloWorldScene.cpp의 상단에 SimpleaudioEngine.h 를 include 시켜줍니다.

#include "SimpleAudioEngine.h"

배경음악을 재생시켜주는 것을 HelloWorld::init() 메서드 에 집어넣어줍니다.

(편의상 맨 아래 코드에 집어넣었습니다.) 

CocosDenshion::SimpleAudioEngine::sharedEngine()->playBackgroundMusic(

               "background-music-aac.wav",true);

 

그리고 화면을 터치시 발생되는 이펙트는 ccTouchesEnded()에 집어넣어줍니다.(편의상 맨 아래에 집어넣었습니다.)

CocosDenshion::SimpleAudioEngine::sharedEngine()->playEffect("pew-pew-lei.wav");

 

컴파일하고 실행을 하면 소리가 재생될것입니다.

 

 

Trackback 0 And Comment 0

챕터 4 - 충돌 체크하는 법

|

주인공은 표창을 발사한다 하지만 적들은 죽지않는다

이번 챕터에서는 표창과 적들의 충돌체크 방법을 소개한다.

게임에서 우리는 sprite에 태그를 붙인다 적 = tag 1 , 표창 = tag 2로

CCSprite는 CCNode를 상속받는데 CCNode에는 m_nTag라는 변수값이 있고 이 값

은 setTag() 및 getTag()로 접근할수 있다 우리는 이 Tag값을 이용해서 두가지

sprite를 구별한다.

먼저 HelloWorldScene.h 에 아래 코드를 추가한다.

생성자 및 소멸자도 추가한다.

이 코드는 적과 표창을 저장할수 있는 배열이다. (CCArray)

HelloWorld();

~HelloWorld();

protected:

        cocos2d::CCArray * _targets;

        cocos2d::CCArray * _projectiles;

               

HelloWorldScene.cpp 에서는 두개의 CCArray 을 메모리 할당하고 (HelloWorld::init() 메서드)

생성자에서는 변수를 초기화 하는 코드를

소멸자에서는 메모리를 해제하는 코드를 추가한다.

 addTarget() 함수를 수정하자.

target 에 태그를 붙이고(1번 태그), _targets 배열에 새롭게 만들어진 target 을 집어넣는 코드 

addTarget 함수 맨마지막에 집어넣자.

//targets 배열에 집어넣기

target->setTag(1);

_targets->addObject(target);

CccTouchesEnded() 함수를 수정하자.

_projectile 태그를 붙이고(2번태그) _projectiles 배열에 새롭게 만들어진 projectile 을 집어넣는 코드

//표창을 배열에 집어넣기

projectile->setTag(2);

_projectiles->addObject(projectile);

그리고 spriteMoveFinished 함수를 아래와 같이 변경한다.

void HelloWorld::spriteMoveFinished(CCNode * sender)

{

        CCSprite * sprite = (CCSprite *) sender;

        this->removeChild(sprite);

 

        //배열에 집어넣었던 or 표창을 배열에서 제거한다.

        if(sprite->getTag() == 1) //

        {

               _targets->removeObject(sprite);

        }

        else if(sprite->getTag() == 2)//표창

        {

               _projectiles->removeObject(sprite);

        }

 

}

update() 함수에서는 매 프레임 마다 충돌을 가지하고 충돌이 된 적이나 표창은 제거한다.

HelloWorldScene.h 에는 void update(float dt)를 선언하고

HelloWorldScene.cpp 에는 아래와 같이 정의하자

이렇게 정의한후 update() 함수를 매 프레임마다 블러주는 schedule 을 선언하자.

HelloWorld::init() 맨 아래에 선언해주자(return true 바로 위)

this->schedule(schedule_selector(HelloWorld::update));

컴파일을 하고 난후면 표창을 던지면 적이 죽는 모습을 볼수 있을 것이다.

 

Trackback 0 And Comment 0

챕터 3 - 표창을 발사하는 방법

|

표창을 던져서 적을 죽이는 코드를 추가하자. 먼저 레이어에 터치가 가능하게 하는 코드를 추가하자

bool HelloWorld::init() 맨 아래에 추가(return true 바로위)

 

//터치가능하게

this->setTouchEnabled(true);

Cllback 함수인

"void ccTouchesEnded(cocos2d::CCSet *pTouches, cocos2d::CCEvent *pEvent);"

를 HelloWorldScene.h 에 추가하고

HelloWorld.cpp 에 아래 함수를 추가하자

이제 터치를 하면 표창을 던질수 있다.

 

 

 

 


 

 

소스 설명

 

 

  int realX = winSize.width + (projectile->getContentSize().width/2);

  float ratio = (float)offY/(float)offX;

  int realY = (realX * ratio) + projectile->getPosition().y;

 

ratio = 삼각함수 비를 그대로 곱해줘서 x값에 비례하는 y값을 구할수 있습니다.

 

 

 


 

 

float length = sqrtf((offRealX * offRealX) +(offRealY * offRealY));

float velocity = 480/1;

float realMoveDuration = length/velocity;

 

1. length 는 피타고라스의 정리 a^2 + b^2 = c^2

sqrtf 함수는 제곱근을 구하는 함수입니다.

2. velocity 는 속력을 구하는 공식입니다.

가로 길이 480 / 1초

3. 시간을 구하는 함수입니다.

시간= 거리/속력

 

기초 물리공식

거리: 속력*시간

속력: 거리/시간

시간: 거리/속력 입니다..  

*계산 예문

 거리는? 60km *1시간 = 60km       속력은? 60km /1시간 = 60km     시간은? 60km / 60km =1시간

Trackback 0 And Comment 0

챕터 2 - 스프라이트를 움직이는 방법

|

챕터 1 - 스프라이트를 추가하는 방법

 

챕터1 에서 우리는 Player 캐릭터를 Scene 에 추가하는 작업을 했었다.

하지만 히어로는 홀로 있다. 우리는 적들을 추가할 생각이다.

적들을 이동하는 함수

void addTarget()와

이동이 끝난 적들을 사라지게 하는 함수

void spriteMoveFinished(CCNode * sender);

를 추가할 생각이다.

void addTarget()void spriteMoveFinished(CCNode * sender);  HelloWorldh.h 에 추가하고

class HelloWorld : public cocos2d::CCLayerColor

{

public:

    // Here's a difference. Method 'init' in cocos2d-x returns bool, instead of returning 'id' in cocos2d-iphone

    virtual bool init(); 

 

    // there's no 'id' in cpp, so we recommend returning the class instance pointer

    static cocos2d::CCScene* scene();

   

    // a selector callback

    void menuCloseCallback(CCObject* pSender);

   

    // implement the "static node()" method manually

    CREATE_FUNC(HelloWorld);

    //addTarget 함수 추가( 생성)

    void addTarget();

    //스프라이트 제거

    void spriteMoveFinished(CCNode * sender);

};

아래 소스를 HelloWorldScene.cpp에 추가하자(그리고 using namespace cocos2d; 를 맨 위에 추가하는 건 잊지말자.) ->USING_NS_CC;

addTarget 추가

SpriteMoveFinished 추가

1. rand 함수는 c std 함수를 사용한다.

2. YES , NO 는 true , false 이다

3. callback 함수를 사용할수 있다. (cocos2d에서는 selector 에 대응됨)

cocos2dx\include\selector_protocol.h -> 이안에 정의 되어있음

  • schedule_selector(_SELECTOR) (SEL_SCHEDULE)(&_SELECTOR)

  • callfunc_selector(_SELECTOR) (SEL_CallFunc)(&_SELECTOR)

  • callfuncN_selector(_SELECTOR) (SEL_CallFuncN)(&_SELECTOR)

  • callfuncND_selector(_SELECTOR) (SEL_CallFuncND)(&_SELECTOR)

  • callfuncO_selector(_SELECTOR) (SEL_CallFuncO)(&_SELECTOR)

  • menu_selector(_SELECTOR) (SEL_MenuHandler)(&_SELECTOR)

  • event_selector(_SELECTOR) (SEL_EventHandler)(&_SELECTOR)

  • compare_selector(_SELECTOR) (SEL_Compare)(&_SELECTOR)

이것들은 callbck 함수 정의에 의해서 사용할수 있다. 예를들면

CCTimer::initWithTarget 은 두번째 인자가 SEL_SCHEDULE 타입이다.

bool initWithTarget(CCObject *pTarget, SEL_SCHEDULE pfnSelector);

우리는 schedule_selector(_SELECTOR)을사용할수있다.

우리는 적들을 생성하는 함수를 1초에 한번 호출하도록 설정할수 있다.

bool HelloWorld::init()의 맨 아래에 (return true; 바로 위) 아래 소스를 추가하자

//gameLogic 함수를 매초마다 실행

this->schedule(schedule_selector(HelloWorld::gameLogic),1.0f);

아래에 소스도 추가하자

HellWorldScene.h 에는 void gameLogic(float dt);을 추가하고

HellWorldScene.cpp에는 아래 소스를 추가하자

void HelloWorld::gameLogic(float dt)

{

   this->addTarget();

}

 

 

 

 

Trackback 0 And Comment 0

챕터 1 - 스프라이트를 추가하는 방법

|

 

간단한 게임을 만들기 전에 프로젝트 파일을 먼저 만들고 프로젝트 파일을 엽니다. 프로젝트 파일명은 SimpleGame으로 하겠습니다.

프로젝트 파일 만드는법

http://studycocos2d-x.tistory.com/4  링크 참조

SimpleGame의 Classes 폴더를 열어보면 기본적으로

AppDelegate.cpp

AppDelegate.h

HelloWorldScene.cpp

HelloWorldScene.h

파일이 존재한다.

 

 

1. 이미지 파일을 추가하는 법

여기에 있는 3개의 이미지를 SimpleGame에서 사용할 예정입니다.

이 이미지를 저장한후 SimpleGame의 폴더의 리소스 폴더에 저장을 합니다,

예) C:\Android\cocos2d-x\cocos2d-x-2.1.5\projects\SimpleGame\Resources

 

2. 스프라이트를 추가하는 법

HelloWorldScene.cpp 의 init 메서드를 아래와 같이 고치자.

 

 

 


 

팁 1 - 오브젝티브

1. c++ 의 _super 키워드를 사용하지 말아라. CCLayer::init() 것을 사용해서 부모 클래스를 호출하는게 더 낫다.

2.  get/set 메서드를 사용해라 . 만약 너가 CCSprie의 ContentSize를 사용하기 원한다면 , 너는 sprite->getContentSize() 처러 사용할수있다.

3. player.position = ... 이것은 player->setPosition(...) 이것과 같다.

4. 하지만 structs에 접근할때는 "width" 나 "height"를 사용한다.

5. 자주 사용하는 메서드 CGGeometry, such as CGRectMake, CGPointMake, CGSizeMake, CGPointZero, CGSizeZero, CGRectZero 이것들은 ios의 것들과 비슷하게 정의 해 놓았다. CG, NS, UI등을 CC로 변경하였다.

6. cocos2d-x는 메모리에 접근할때 "->" 이런식으로 메모리 주소로 접근한다.

7. this 키워드는 object c의 self 와 같다

8. init의 "bool"은 cpp에 "id"가 없기 때문에 대체를 했다.

9. 안드로이드에서, 타이틀바를 확보한 공간이 필요하다. 너는 플레이어의 위치를 아래와 같이 설정할수 있다.

(player.contentSize.width/2 + 40, winSize.height/2)

 

 


이렇게 설정하고 실행을 하면 흑백 화면에 캐릭터가 나타나서 잘 보이지 않는다.

배경화면을 하얀색으로 변경하자.

현재 HellWolrd 클래스는 CCLayer 클래스를 상속받고 있는데 배경화면을

변경하기 위해서는 CCLayerColor 클래스를 상속받도록 수정을 하여야 한다.

HelloWorldScene.h으로 이동하여 아래 처럼 수정하자.

class HelloWorld : public cocos2d::CCLayerColor

그리고

 

HelloWorldScene.cpp 파일로 이동하여

if ( !CCLayer::init() )

{

        return false;

}

을 아래처럼 수정하자.

 

 

if ( !CCLayerColor::initWithColor(ccc4(255,255,255,255)) )

{

        return false;

}

모든 파일들을 수정하고 실행을 하면 아래와 같이 실행창이 뜬다.

 

 

 

Trackback 0 And Comment 0

Tutorial - cocos2d-x 로 간단한 게임 만들기

|

http://www.cocos2d-x.org/

에 있는 간단한 게임 만들기를 한글로 번역해서 올릴 생각입니다.

정말 기초 게임이니 초보자들만 보시길 추천해드립니다.

Trackback 0 And Comment 0

cocos2d-x 기본 세팅 - 4

|

visual studio 에서 생성된 프로젝트 디바이스에서 실행시키기 위해선

cygwin으로 프로젝트를 빌드를 해야됩니다.

 해당프로젝트 파일로 가서 ./build_native.sh 를 입력합니다.

 

정상적으로 빌드가 완료 된것을 확인하고 이클립스를 실행합니다.

 

이클립스 file - new - project 를 실행시키거나

아래 그림처럼 Package Explorer 에서 오른쪽 버튼을 누르고 new-project를 실행시킵니다.

python으로 만들었던 통합 프로젝트를 불러올 것이므로 Android Project from Existing Code

를 클릭하고 next를 누릅니다.

 

MyGame - proj.android 를 누르고 확인을 누릅니다.

 

이클립스를 불러오면 아래 와 같이 오류가 뜹니다.

cocos2d-x lib파일을 추가해야 정상적으로 실행이 됩니다,

 

MyGame프로젝트에서 오른쪽 버튼

properties를 누르고 Java Build Path를선택합니다.

 

 

 

Link Source 버튼을 누르고

Linked folder location 에는 cocos2d-x\platform\android\java\src 폴더를 추가하고

floler name에는 lib를 입력하고 확인을 누릅니다.

 

 

 

프로젝트에서 오른쪽 버튼 누르고 Refresh 한번 선택해주고

이클립스 메뉴창에 Project - clean 을 클릭해줍니다.

마지막으로 프로젝트에 오른쪽 버튼 - Ran as - Android Application 버튼을 클릭하면 디바이스에서 정상적으로 실행이 됩니다.

 

오류-2가지

환경변수 path 에 자기자신의 시그윈 설치 폴더 경로를 추가로 입력해준다.

bash

;C:\cygwin64\bin;

 

 Unable to add에러

assets 파일에 접근할수 없을때 뜨는 에러

관리자 권한으로 설정을 해줘야됨

1. cygwin을 열고 자기자신의 프로젝트 파일로 이동

예) cd /cygdrive/c/Android/cocos2d-x/cocos2d-x-2.1.5/projects/MyGame/

2. 모든 권한 설정

chmod 777 -R * 입력 후 엔터

3. 다시빌드

./build_native.sh 입력 후 엔터

이렇게 하면 정상적으로 실행이 될것입니다.

 

'잡다한것들전부 > 세팅' 카테고리의 다른 글

cocos2d-x 기본 세팅 - 4  (2) 2013.09.21
cocos2d-x 기본 세팅 - 3  (0) 2013.09.20
cocos2d-x 기본 세팅 - 2  (0) 2013.09.19
cocos2d-x 기본 세팅 - 1  (0) 2013.09.19
Trackback 0 And Comment 2
  1. 안탕 2013.11.06 02:51 address edit & del reply

    아 정말로 감사드립니다 막상 cocos를 쓸려고 했지만 검색되는 많은 셋팅 방법들이 구버젼들이라 에러상황이 많았었는데 덕분에 무사히 셋팅을 할 수 있었네요

  2. 도움받은방문자 2013.11.09 17:58 address edit & del reply

    책도 보고, 공식사이트도 참고하고, 여기저기 블로그 돌아다니면서 세팅하고 있는 중입니다.
    어느 블로그 방법으로 해도 안되어서 스스로 여러가지 시도하고있는데, 많음 도움이 된 것 같습니다.
    감사합니다~

cocos2d-x 기본 세팅 - 3

|

새로운 프로젝트 생성

cocos2d-x 2.1.4 버전 이후로는 install-templates-msvc.bat 파일이 제거되고

tools/project-creator 파일을 실행시켜야된다. 이 파일을 실행시키기 위해선

python을 설치 해야된다. cocos2d-x에서는 파이썬 2.7.2 버전을 다운받기를 권장하고 있다.

http://www.python.org/download/releases/2.7.2/

위 링크로 가서 자신의 os에 맞는 프로그램을 설치한다.

 

 

 

 설치가 완료되면 path를 수정한다.

파이썬이 설치된 경로 추가

예) ;C:\Python27;

앞뒤로 세미콜론(;)은 반드시 붙여주자

 

환경변수 설정이 완료되면 윈도우 + r 키를 누르고 cmd 창을 실행시키고

python --version 을 입력해서 python 버전이 제대로 출력되면 설치가 완료 된것이다.

 

 


 

프로젝트 생성

C:\Android\cocos2d-x\cocos2d-x-2.1.5\tools\project-creator

create_project.py로 통합프로젝트를 만들수있다.

cmd 창을 열자. cocos2d-x 가 설치된 경로로 이동한다.

명령어

cd C:\Android\cocos2d-x\cocos2d-x-2.1.5\tools\project-creator 로 이동

python 으로 create_project.py파일을 실행하면 친절하게 만들때 어떤식으로 만들지 설명이

나온다.

sample1과 sample2 에 있는거 대로 실행을 해보자.

Sample 1: ./create_project.py -project MyGame -package com.MyCompany.AwesomeGame

Sample 2: ./create_project.py -project MyGame -package com.MyCompany.AwesomeGame
 -language javascript

python create_project.py create_project.py -project MyGame -package com.MyCompany.AwesomeGame -language cpp 입력

 

Have fun! 이란 글자가 나오면 정상적으로 프로젝트가 생성된 것입니다.

C:\Android\cocos2d-x\cocos2d-x-2.1.5\projects

파일에 프로젝트가 생성됩니다.

C:\Android\cocos2d-x\cocos2d-x-2.1.5\projects\MyGame\proj.win32로 들어가시면 솔루션 파일이 있습니다. 실행하시면 visual Studio 에서 실행 가능합니다.

 

 

 ctrl + F5로 빌드한 모습

 

 

'잡다한것들전부 > 세팅' 카테고리의 다른 글

cocos2d-x 기본 세팅 - 4  (2) 2013.09.21
cocos2d-x 기본 세팅 - 3  (0) 2013.09.20
cocos2d-x 기본 세팅 - 2  (0) 2013.09.19
cocos2d-x 기본 세팅 - 1  (0) 2013.09.19
Trackback 0 And Comment 0
prev | 1 | 2 | next