게임 개발/Cocos2d-x

Cocos2d-x 3.0 beta 출시!

날개 2014. 1. 9. 01:59

어제인 2014년 1월 8일부로 Cocos2d-x 3.0 베타버전이 릴리즈 되었습니다.


그동안 3.0 alpha1 버전으로 오랫동안 기다렸는데요, 아마 두달 정도 기다린것 같습니.


알파에서 베타로 넘어온 이상 많은 부분의 개선이 있지 않을까 싶습니다.


자세한 내용은 http://cocos2d-x.org/news/172 에서 살펴 볼 수 있습니다.


그리고 드디어 3.0과 관련한 도큐먼트도 보강이 된 것 습니다. 사실 알파버전에서는 도큐먼트가 아무래도 많이 부족한 점이 있었죠. (대체로 샘플 프로젝트를 보면서 작업이 가능하기는 했습니다만...)



(출처 : http://cocos2d-x.org/news)



공식사이트에서 설명하는 지난 3.0 alpha1 버전에 비해 개선된 주요점을 보자면, 새로운 랜더러가 드디어 포함되었다고 합니다. 몇달전 추콩에서 밝힌바에 따르면 렌더러를 새로 설계함으로 상당한 퍼포먼스의 향상을 꾀할 수 있다고 합니다.(사실 iOS 장치에서보다 상대적으로 퍼포먼스가 취약하다고 지적을 받던 안드로이드에서의 퍼포먼스 향상을 위한것이라고 설명하던것으로 기억합니다.)


아직 베타이지만 레이블에 그림자효과나 아웃라인효과 등도 사용할 수 있고, TCP 콘솔로 원격 디버깅을 할 수도 있다고 하네요.


그리고 project_creator.py가 GUI가 생겼습니다. 기존 3.0 알파버전에서는 멀티플랫폼 프로젝트를 생성하기 위해서 터미널에서 타이핑으로만 프로젝트를 생성했는데요, 터미널에서 project_creator.py를 실행하면 GUI가 나타납니다. (사실상 터미널에서 타이프해도 불편할건 없긴 합니다.)

(Cocos2d-x 3.0 beta의 project_create.py GUI)


cocos2d 쓰레드에서 함수를 실행할 수 있도록, Scheduler::performFunctionInCocosThread()도 추가 되었다고 하네요.


그리고, 요즘 작업하느라 좀 애를 먹던 부분이 있었는데, 3.0으로 넘어오면서 Native Activie를 사용하기 때문에 안드로이드의 자바 SDK와 연동하는데 애를 좀 먹고 있었죠. 일부 사람들은 이 때문에 Native Activity를 상속받아서 작업 하시는 분들도 있던걸로 압니다.


이번 베타 버전에는 Native Activity를 상속받는 Cocos2dxActivity.java를 추가함으로 써드 파티 안드로이드 SDK를 통합하기가 알파버전에 비해 쉬워질거라고 하는군요.


물리엔진도 보강이 된것 같습니다. 아시는 분은 아시겠지만 3.0부터는 Cocos2d-x에서 물리엔진을 랩핑한 API를 제공합니다. 따라서 예전처럼 직접 Box2D를 컨트롤 하지 않고도 물리엔진을 사용할 수 있습니다.


그리고... Array와 Dictionary가 없어졌습니다. 새로 추가된 Vector와 Map을 사용해야 합니다. C++ STL에 익숙하지 않으신 분들은 조금 공부 해야 할 것 같습니다. (다만, STL의 vector와 map이 아닌 Cocos2d-x 3.0의 Vector와 Map을 사용해야 할 듯 합니다. 살펴보니 Cocos2d-x에서 사용하는 Auto Release가 구현되어 있더군요)


다른 점들은 좀더 살펴봐야겠습니다. 내일 부터(아니 오늘부터겠네요. 자정이 넘었으니...) 새로 받은 베타버전을 적용해 보아야 겠습니다.



끝.