먼저 파이썬이 설치되어있어야 한다.


명령 프롬프트를 열고 다음 경로로 이동한다.


<Cocos2d-x 설치 경로>/tools/project-creator



아래와 같이 입력하면 새로운 프로젝트를 생성할 수 있다.


python create_project.py -project PROJECT_NAME -package PACKAGE_NAME -language PROGRAMMING_LANGUAGE


옵션)

-project PROJECT_NAME : 프로젝트 명

-package PACKAGE_NAME : 패키지 명

-language PROGRAMMING_LANGUAGE : 사용할 프로그래밍 언어. 다음 세가지 중 하나 [cpp | lua | javascript]


예제)

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



프로젝트의 루트 폴더 생성 위치는 <Cocos2d-x 설치 경로>/projects 밑이다.



본 내용은 아래 버전을 기준으로 작성되었습니다.


  • Cocos2d-x 2.2.5


,

폴더 구조


HelloCpp 샘플 프로젝트로 설명을 하면,


HelloCpp 루트 폴더 : <Cocos2d-x 설치 경로>/samples/Cpp/HelloCpp


HelloCpp/proj.플랫폼 : 각 플랫폼 별 프로젝트 폴더


HelloCpp/Classes : Cocos2d-x를 사용하는 코드가 구현된 .cpp, .h 소스 파일들


HelloCpp/Resources : Cocos2d-x에서 사용하는 .png와 같은 리소스 파일들.




안드로이드 관련


  • build_native.sh 실행시 HelloCpp/Resources 폴더 밑의 파일들이 <안드로이드 프로젝트 폴더>/assets 폴더로 복사된다.


  • 소스 파일 추가시, HelloCpp/proj.android/jni 밑에 Android.mk 파일도 다음과 같이 수정해줘야 한다.


LOCAL_SRC_FILES := hellocpp/main.cpp \
                   ../../Classes/AppDelegate.cpp \
                   ../../Classes/HelloWorldScene.cpp \

                   ../../Classes/추가된 파일.cpp




본 내용은 아래 버전을 기준으로 작성되었습니다.


  • Cocos2d-x 2.2.5


,



테스트 환경


  • 윈도우 7 (32비트)




기본 프로그램들


기본적인 안드로이드 앱 개발 환경(NDK 제외)은 구축되어있는 것으로 가정한다.


  • JDK (8u20)
  • Android ADT bundle + SDK (23.02, 20140702)




프로그램 버전 및 다운로드


1.  Cocos2d-x 2.2.5


2. Android NDK Revision 10


3. Cygwin (Cygwin DLL 1.7.32)





프로그램 설치



1. Cocos2d-x 2.2.5 / Android NDK


    • 원하는 위치에 압축을 푼다


2. Cygwin


    • setup-x86.exe (혹은  setup-x86_64.exe)를 실행하여 설치를 진행한다. 설치 과정 중 나머지는 default로 하여도 무방하나, 패키지 선택시 Devel 항목 밑에 make 패키지 옆에 Skip을 눌러 최신 버전이 표시되어 해당 패키지가 설치되도록 한다.



    • 설치 후, setup-x86.exe을 다시 실행하여 설치된 항목을 확인해보면, 아래와 같이 관련 패키지가 함께 설치되어 있는 것을 볼 수 있다.






환경 설정


  • NDK_ROOT 환경 변수를 추가하고, 압축 푼 Android NDK의 루트 경로(파일들이 존재하는 경로)를 그 값으로 입력한다.


-> 환경 변수 설정하는 방법







HelloCpp 샘플 프로그램 실행



1. 버그 수정


Cocos2d-x를 윈도우에서 빌드하다보면, 주 개발 환경이 Mac OS로 맞춰져있는 탓으로 보이는 몇가지 문제가 발생한다. 다음은 그 문제점 해결을 위한 작업이다.


<Cocos2d-x 설치 경로>/samples/Cpp/HelloCpp/proj.android 밑에 build_native.sh 파일을 텍스트 편집기로 열고, 마지막에 다음 명령을 추가한다.


chmod 777 -R "$APP_ANDROID_ROOT"/assets



이 작업을 하지 않는다면?




2. C++ 코드 컴파일


1) Cygwin을 실행 후, <Cocos2d-x 설치 경로>/samples/Cpp/HelloCpp/proj.android로 이동한다.

cd <Cocos2d-x 설치 경로>/samples/Cpp/HelloCpp/proj.android



2) build_native.sh를 실행한다.


./build_native.sh


이 과정을 통해, 앱 코드Cocos2d-x 라이브러리 코드 모두 빌드되며, <Cocos2d-x 설치 경로>/samples/Cpp/HelloCpp/Resouces 밑에 있는 리소스 파일들이 <안드로이드 프로젝트 폴더>/assets로 복사된다.



3. 안드로이드 앱 빌드


1) Eclipse를 실행한다.


2) 다음 두 위치에서 프로젝트를 import한다.


<Cocos2d-x 설치 경로>/cocos2dx/platform/android/java

<Cocos2d-x 설치 경로>/samples/Cpp/HelloCpp/proj.android



3) HellopCpp 프로젝트의 속성을 열고, C/C++ Build 항목을 선택하고, build command의 내용을 cmd로 바꿔준다.



관련 에러: Cannot run program "bash": Launching failed



4) libcocos2dx -> HelloCpp 프로젝트 순으로 빌드한다.


5) 빌드된 앱을 실행하면 다음과 같은 샘플 프로그램을 볼 수 있다. 애뮬레이터(AVD)에서 실행할 경우에, 애뮬레이터 속성 중 Use Host GPU 옵션이 켜져있어야 한다.







[참고] Cocos2d-x 샘플 프로그램의 폴더 구조


,

프로그램 버전 및 다운로드

  1.  Cocos2d-x 2.2.5


    다운로드 : http://www.cocos2d-x.org/download


    -> Download v2.2.5 버튼을 눌러 다운로드한다


  2. Visual C++ 2010 express


    다운로드 : http://www.visualstudio.com/ko-kr/downloads/download-visual-studio-vs#DownloadFamilies_4





프로그램 설치

  1. Cocos2d-x 2.2.5


    -> 원하는 위치에 압축을 푼다


 
  2. Visual C++ 2010 express


    -> vc_web.exe를 실행하여 설치를 진행한다





샘플 프로그램 실행


  1. Visual C++ 2010 express를 실행한다
 
  2. 파일 - 열기 - 프로젝트/솔루션 메뉴를 선택한 뒤, 다음 위치의 솔루션 파일을 연다
 
    -> cocos2d-x-2.2.5\cocos2d-win32.vc2010.sln


  3. 왼쪽 솔루션 탐색기에서 HelloCpp 프로젝트(가장 기본적인 내용이 들어있는 샘플 프로젝트이다)를 오른쪽 클릭 후, '시작 프로젝트로 설정'을 선택한다.
 
  4. HelloCpp 프로젝트를 오른쪽 클릭 후, 빌드를 실행한다. (나머지 라이브러리들은 종속성에 따라 자동 빌드된다)

※ 빌드 중 "COFF로 변환하는 동안 오류가 발생했습니다" 에러가 발생할 경우, HelloCpp 프로젝트 속성 페이지에 들어가서, 구성 속성 -> 매니페스트 도구 -> 입력 및 출력 밑에 있는 매니페스트 포함 항목을 아니오로 바꾼다.



  5. 디버그 - 디버그 시작을 선택하거나, Ctrl+F5를 누르면, 아래와 같은 샘플 프로그램이 실행되는 것을 볼 수 있다.



 
  6. HelloCpp 프로젝트 대신에 TestCpp 프로젝트를 선택하면 Cocos2d가 지원하는 좀더 많은 기능이 들어간 샘플 프로그램을 볼 수 있다.



,