챕터 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

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