CocosBuilderが使いやすいっぽい。
これは、ゲーム部分というより、タイトル画面とかステージ選択画面とかで使うのが吉だと思う。
注意!Version 2.1のにcocos2d-xが対応したようだ。
RC版「Release Candidate(製品候補版)」だが、「Version 2.1 RC 3」を使うように(2012/10/14現在)
cocos2d-iPhoneのために作られたっぽいが、
しかも、cocos2d-xでも使えるらしい。
URL:http://qiita.com/items/40fa88d149fdecaa9f86
「Example」を公式サイトからダウンロードしてProjectへ追加している、
しかし、cocos2d-xには専用のクラスがすでに同梱されているのでしなくてよさそう。
cocos2d-xのフォーラム
URL:http://tillawy.wordpress.com/
1. プロジェクト作成
CocosBuilderを起動して、File -> New -> New Project… にて、実際のcocos2d-xプロジェクトの
※〜.xcodeproj->の中に「CocosBuilder Files (start here)」フォルダを作って、その中に作成した「Project」フォルダで作成するのが好ましい。
「CocosBuilder Files (start here)」フォルダに「Resrources」を入れてそれは、画像の管理にする。
2.Publish先設定
「File -> Project Settings…」にてどこにファイルを保存するかが選べる。
参考のサイトと同様、「CocosBuildet Test」の略で、CCBTestにした。
3.ZIPで保存する設定はしない
zip形式で保存するにはチェックする。後ほど説明するPublishするときにzipになる。
チェックしないと「"〜.ccbi」になる。
が!!!cocos2d-xは対応してないのでチェックしない
Please note that cocos2d-x can’t read archive zip files (AFAIK), so you need to uncheck (public to zip file) in cocosbuilder project settings
4.レイヤーファイルの作成
「File -> New -> New File…」からメニューを出す。
「Root object type」を「CCLayer」にして作成。
実際に作られるのはmmファイルとかではなくて専用の.ccbファイルが出来るようだ。
左下のProject内に一覧が出てるがそこにレイヤーが追加される。
※次回からこれを開く
右上の設定は、このように名前を入れる。
CCBTestにした。これはあとからPublishされる名前になるはず。
5.Publishする
Publish(option+command+S)を選ぶ!
2.0のバージョンはPublish Archive File(option+shift+command+S)もあった。
これで、CocosBuilderの作業は終わり
6.素材を移す
ドラッグ&ドロップしてResourcesフォルダからXCodeへ「CCBTest.ccbi」をコピー。
7.最後に組み込み
今回、AppDelegate.cppを改変する。
もともとは、HelloWorldシーンを実行させている。
・AppDelegate.cppの上がわのinclude設定。
#include "CCBReader.h" #include "CCNodeLoaderLibrary.h"
・AppDelegate.cpp
// create a scene. it's an autorelease object CCScene *pScene = HelloWorld::scene(); // run //pDirector->runWithScene(pScene);
↓これを今回のやつに置き換える。
cocos2d::extension::CCNodeLoaderLibrary * ccNodeLoaderLibrary = cocos2d::extension::CCNodeLoaderLibrary::sharedCCNodeLoaderLibrary(); cocos2d::extension::CCBReader * ccbReader = new cocos2d::extension::CCBReader(ccNodeLoaderLibrary); CCNode * node = ccbReader->readNodeGraphFromFile("CCBTest.ccbi"); CCScene * scene = CCScene::create(); if(node != NULL) { scene->addChild(node); } ccbReader->release(); // run pDirector->runWithScene(scene);
↑のコードのcocos2d::extension::が長くてうっとおしいので
USING_NS_CC_EXT;
を一番上に追加して、
CCNodeLoaderLibrary * ccNodeLoaderLibrary = CCNodeLoaderLibrary::sharedCCNodeLoaderLibrary(); CCBReader * ccbReader = new CCBReader(ccNodeLoaderLibrary); CCNode * node = ccbReader->readNodeGraphFromFile("CCBTest.ccbi"); CCScene * scene = CCScene::create(); if(node != NULL) { scene->addChild(node); } ccbReader->release(); pDirector->runWithScene(scene);
にしてもいい
↓のように、ファイル名間違ってなくてもなぜか出来ない場合はCocosBuilderのVersionを確認しよう
ット思ったが、できない!!!