레이블이 Cocos2d-x인 게시물을 표시합니다. 모든 게시물 표시
레이블이 Cocos2d-x인 게시물을 표시합니다. 모든 게시물 표시

2014년 4월 25일 금요일

Cocos2d-x stable version of v3.0 release!

[caption id="attachment_910" align="aligncenter" width="480"][ Cocos2d-x v3.0] [ Cocos2d-x v3.0][/caption]드디어 cocos2d-x 3.0의 stable 버전이 release 되었다.

이 얼마나 기다리고 기다리던 버전인가..ㅠㅠ

대충 살펴봤을 때는 큰 변화는 없어보인다.

[릴리즈 노트 확인하기]

그런데 눈에 띄는 무언가 있다.

Cocos Code IDE beta 버전도 함께 release 되었다.

Lua/Javascript로 개발할 때 사용할 수 있는 IDE인 것 같다.

Cocos Code IDE

나는 해당 사항 없으니까 패스..

이와 함께 Cocos2d-x 3.0을 지원하는 CocoStudio v1.3.0.1도 release 되었다.

이것 또한..아직 사용하지 않으니까 패스..

2014년 4월 16일 수요일

cocos2d-x 3.0 rc2 released!

cocos2d-x 3.0 rc2 버전이 릴리즈 되었습니다.

바뀐 점을 대충 발로 번역해 보면 아래와 같습니다.

영어를 잘 못해서 번역을 제대로 한 것인지 모르겠지만..ㅋㅋ




Fixed

  • Cocos2dxHelper.runOnGLThread() 가 안드로이드에서 제대로 동작합니다.

  • 안드로이드 4.2 이상의 디바이스에서 충돌이 발생한 ics(ice cream sandwich)의 jni local reference가 변경되었습니다.

  • Auto-culling이 회전된 스프라이트와 제대로 동작합니다.

  • setup.py : 환경변수를 적용시키기 위한 재부팅이 필요하지 않습니다.

  • cocos 콘솔에서 생성된 프로젝트는 iOS 5.1기반의 iOS 디바이스에서 충돌할 것입니다. (고쳐졌다는 내용이겠죠..?)

  • 기타 마이너 버그 수정






원본


Fixes



  • Cocos2dxHelper.runOnGLThread() works as expected on Android

  • jni local reference changed in ics caused crash on Android devices with Android 4.2 or higher

  • Auto-culling works as expected with rotated sprites

  • setup.py: no need to re-boot Windows in order to make environment variables to take effect

  • Project created by cocos console will crash on iOS devices with iOS 5.1

  • And other minor bug fixes



Full Changelog


Read the complete changelog

 

 

2014년 3월 25일 화요일

Cocos2d-x 3.0 rc0 버전 릴리즈 및 프로젝트 생성 방법 변경

Cocos2d-x로 게임을 하나 만들어 보겠다고 설치고 있지만..

정작 만들어 놓은 게임이 없다..

그런데 그동안 버전이 참 많이 바뀌었다..

그 원인 중 하나는 오픈소스인 것도 원인인 듯 하다..

아무튼.. 지금은 3.0 beta2 버전으로 공부 중인데 이번에 rc0 버전이 나왔다.

그런데 3.0 beta2와 rc0가 바뀐 내용이 있지만 그 중에 아쉬운 점이 하나 있어서 이렇게 올린다.

이전에 포스팅한 적 있는 GUI로 프로젝트를 생성할 수 있게 해주는 스크립트가 이번 버전에서는 제외되었다!

no

 

참 편리하게 쓰고 있었는데..

왜 제외 되었는지 모르겠다..

대신 이번에는 cocos라는 콘솔 명령어가 추가되었다.

혹자는 cocos2d 측에서 개발툴을 염두해둔 콘솔 명령어 추가가 아닌가..하는 추측도 한다.

아무튼..

엔진 압축을 풀어보면 베이스 디렉토리에 setup.py가 추가되어 있는 것을 볼 수 있다.

이 스크립트는 cocos2d-x와 Android NDK, SDK 그리고 Ant 의 경로 설정을 하는 설정 스크립트이다.

기존에 설정되어 있다면 별 과정없이 끝나고 아니면 환경변수에 추가된다.






D:\tools\cocos2d-x\cocos2d-x-3.0rc0>setup.py 

Setting up cocos2d-x...

-> Adding COCOS2D_CONSOLE_ROOT environment variable... ALREADY ADDED

-> Looking for NDK_ROOT envrironment variable... FOUND

-> Looking for ANDROID_SDK_ROOT envrironment variable... FOUND

-> Looking for ANT_ROOT envrironment variable... NOT FOUND
Please enter its path (or press Enter to skip): D:\jjorae.com\apache-ant-1.9.3\bin
ADDED
-> Added: ANT_ROOT = D:\jjorae.com\apache-ant-1.9.3\bin

Set up successfull:
ANT_ROOT was added into registry

Please restart the terminal or restart computer to make added system variables take effect

D:\tools\cocos2d-x\cocos2d-x-3.0rc0>

이러면 일단 엔진 설정은 끝!

그럼 이제 패스가 잡혀있어서 cocos라는 명령을 그냥 아무데서나 사용할 수 있다.

cocos 명령은 아래와 같은 기능을 가지고 있다.






Available commands:
compile Compiles the current project to binary
new Creates a new project
run Compiles & deploy project and then runs it on the target
deploy Depoly a project to the target

이 명령들은 cocos명령 뒤에 인자로 넣어주면 된다.

아래와 같이 하면 각각의 기능에 대한 help를 볼 수 있다.






C:\Users\rhcho>cocos new --help 

usage: cocos new [-h] [-p PACKAGE_NAME] -l {cpp,lua,js} [-d DIRECTORY]
[-t TEMPLATE_NAME] [--no-native]
[PROJECT_NAME]

Creates a new project

positional arguments:
PROJECT_NAME Set the project name

optional arguments:
-h, --help show this help message and exit
-p PACKAGE_NAME, --package PACKAGE_NAME
Set a package name for project
-l {cpp,lua,js}, --language {cpp,lua,js}
Major programming language you want to use, should be
[cpp | lua | js]
-d DIRECTORY, --directory DIRECTORY
Set generate project directory for project
-t TEMPLATE_NAME, --template TEMPLATE_NAME
Set the template name you want create from

lua/js project arguments:
--no-native No native support.

Game1이라는 프로젝트를 생성해 보겠다.






C:\Users\rhcho>cocos new -p com.jjorae.game1 -l cpp -d D:\tools\cocos2d-x\projects Game1 

C:\Users\rhcho>python D:\tools\cocos2d-x\cocos2d-x-3.0rc0\tools\cocos2d-console\bin\/cocos.py new -p com.jjorae.game1 -l cpp -d D:\tools\cocos2d-x\projects Game1
Runing command: new
> Copy template into D:\tools\cocos2d-x\projects\Game1
> Copying cocos2d-x files...
> Rename project name from 'HelloCpp' to 'Game1'
> Replace the project name from 'HelloCpp' to 'Game1'
> Replace the project package name from 'org.cocos2dx.hellocpp' to 'com.jjorae.game1'
C:\Users\rhcho>

이렇게 한 다음 Visual Studio나 Xcode를 사용해 프로젝트를 불러온 다음 빌드하면 아래와 같은 화면을 볼 수 있다.

왼쪽 하단에 fps를 보여주는 곳이 이전 버전과 비교해 조금 바뀐 것을 볼 수 있다.

Cocos2d-x 3.0 rc0 초기화면

2014년 2월 6일 목요일

Eclipse에서 cocos2d Library project(libcocos2dx) 못찾을 경우

Cocos2d-x 3.0 beta2에서 안드로이드 프로젝트로 사용하기 위해서 Eclipse에서 프로젝트를 import하면 라이브러리 프로젝트의 경로가 잘못되어서 에러가 떨어진다.

(내가 참고한 블로그나 책의 경우에..)

그런데 다들 프로젝트 내에 포함되어 있는 cocos2d 디렉토리를 옮기거나 설치되어 있는 cocos2d-x 엔진 디렉토리에서 라이브러리 프로젝트를 import 시킨 후 다시 라이브러리 프로젝트를 설정해주는 방식을 사용하고 있었다.

난 그 방식들이 제대로된 해결책이 아닐 것이라는 생각에 프로젝트 내에 포함되어 있는 cocos2d 디렉토리를 사용하기로 하고 삽질을 해봤다.

화르르

역시..

cocos2d 디렉토리는 사용하라고 있는 것이었다.

xcode에서는 자동으로 읽어오지만 Eclipse용으로는 제대로 설정이 되어있지 않나보다..

일단 프로젝트 내의 라이브러리 프로젝트를 import한 후에 프로젝트를 import했더니 따로 설정을 변경할 필요 없이 정상적으로 로드되었다..

응..? 뭐지..하고나니까 당연한 것이었다는 생각이 든다..

참고한 곳에서는 내가 설치한 cocos2d-x와 디렉토리 구조도 조금씩 달랐다..OTL

너무 책만 쳐다보고 했나보다..

오픈소스 엔진인 cocos2d-x의 버전은 빠르게 올라가고 있으니..너무 책에만 의존하지 말고 스스로 공부를 해보는 것도 좋을 것 같다..ㅋ

[caption id="attachment_821" align="aligncenter" width="565"][ cocos2d-x 라이브러리 프로젝트 정상 로드 ] [ cocos2d-x 라이브러리 프로젝트 정상 로드 ][/caption]

2014년 1월 28일 화요일

cocos2d-x v3.0-beta2 released

5시간 전..

Cocos2d-x v3.0-beta2 버전이 릴리즈 되었다.

Cocos2d-x 공부를 시작하고(거의 안했지만..) 벌써 몇번의 릴리즈가 있었는데..

기존에 보던 책을 참고조차 하지 못할 지경이다..

어젠 그냥 배경 색만 바꿔놓는 예제를 만들었는데 한참 헤맸다...ㅠ

아무튼..이번 릴리즈에서는 크게 바뀌거나 추가된 것은 없는 것 같다.

아래는 cocos2d-x.org에서 가져온 내용이다.






We are happy to announce that cocos2d-x v3.0-beta2 is available for download:


Highlights



  • Performance improvements in the renderer (from 20% to 100% depending on the game).

  • Added support for creating AutoReleasePool in stack



Full Changelog


Read the complete changelog


Release Notes


Read more about all the new features at cocos2d-x v3.0 release notes

We would greatly appreciate if you can test this version and report any kind of bug and/or issue that you might find.

Thank you!

 

2014년 1월 23일 목요일

Cocos2d-x Multi-platform project 만들기

모바일 게임을 만들고자 여러 엔진을 검토했었다.

cocos2d-x가 1순위 였지만 다루던 언어가 달랐기에 너무 이질감이 생겨서 다른 쪽으로 눈을 돌렸다.

그나마 이질감이 없던 자바로된 바야바 엔진을 공부하며 간단한 게임도 만들어 보았다.

하지만 쉬운 엔진임에는 틀림없지만..편리한 엔진은 아니었다..

그래서 다시 cocos2d-x로 발길을 돌렸으나..

이미 나의 열정은 식어있었다..ㅎㅎ

그러다가 맥도 생긴 김에 간만에 프로젝트를 생성해 봐야겠다..하는 순간!

오호..새로운 기능이 생겼다!

5

그 동안 콘솔에서 잡다한 옵션을 줘가며 실행했던 스크립트가 GUI로 재탄생 했다.

거기다가 프로젝트 경로를 임의로 설정할 수가 있게 되었다!!!

가장 바라던 기능이며 온갖 삽질을 하며 분리 시킨 기억이 있다..

[caption id="attachment_794" align="aligncenter" width="511"][ 프로젝트 생성 GUI ] [ 프로젝트 생성 GUI ][/caption]./tools/project-creator/project-creator.py 를 실행하면 위와 같은 GUI를 볼 수 있다.

 

기본적으로 프로젝트명과 패키지명, 프로젝트 경로, 사용 언어를 선택할 수 있다.






#create_project 

 

First you need install python environment.

 

There have double ways create new cocos project.

Notice:The best of generate path is english path.

##1.UI

* Windows: double click "create_project.py" file

* Mac: ./create_project.py

* Linux: The tkinter was not installed in the linux's default python,therefore, in order to use the gui operate, you have to install the tkinter libaray manually. There is another way to create project by command line.  see below for details

##2.console

$ cd cocos2d-x/tools/project-creator

$ ./project-creator.py --help

$ ./project-creator.py -n mygame -k com.your_company.mygame -l cpp -p /home/mygame

위 내용은 README.md 파일에 적혀있는 내용이며 기존처럼 콘솔에서 프로젝트를 수행하는 방법으로도 사용 가능하다.

[caption id="attachment_795" align="aligncenter" width="515"][ 프로젝트 생성 완료 ] [ 프로젝트 생성 완료 ][/caption]위 그림과 같이 프로젝트가 성공 알림창이 뜨면 프로젝트는 생성된 것이다.

 

생성된 프로젝트를 xcode로 열어보면 아래 그림과 같이 깔끔하게 보인다.

[caption id="attachment_796" align="aligncenter" width="480"][ 프로젝트 오픈 화면 ] [ 프로젝트 오픈 화면 ][/caption]그리고 생성된 프로젝트를 빌드하고 실행하면~짠!

 

익숙한 cocos2d-x의 로고를 볼 수 있다.

[caption id="attachment_797" align="aligncenter" width="480"][ 프로젝트 실행 화면 ] [ 프로젝트 실행 화면 ][/caption]