#setlinebreak(on)

Cocos2d-xに関しての開発情報をまとめます。


*目次 [#o88058e5]
#contents


*Cocos2d-xとは? [#k1c1301f]
-Cocos2d-xは、2Dゲーム開発に用いられるオープンソースのフレームワークです。Unityと異なり、無料で使用可能です。
-マルチプラットフォームに対応しており、Android、iOS向けのアプリを同時開発することができます。
-C++で開発可能です。
-Unity2Dと比較して、Cocos2d-xは圧倒的にパフォーマンスに優れているようです。
[[Unity2D vs cocos2d-x描画性能検証レポート>http://www.slideshare.net/crooz_techblog/unity2-d-vs-cocos2d-x]]より



*開発環境の構築 [#o0ac6da2]
-[[Cocos2d-x開発環境の構築(Windows)>./Cocos2d-x開発環境の構築]]
-[[Cocos2d-x開発環境の構築(Mac)>./Cocos2d-x開発環境の構築(Mac)]]


*TIPS [#n72619f5]
各TIPSのプロジェクト名は MyGame とし、HelloWorldシーンがそのまま残っているものとして説明します。
**CocoStudioのAnimation Editorで出力したアニメーションを再生する [#ra259cd0]
CocoStudioのアニメーションエディタAnimation Editorで出力したアニメーションファイルをアプリ側で読み込んで再生する手順です。
CocoStudioは http://www.cocos2d-x.org/download から無料でダウンロード出来ます。
+Animation Editorでアニメーションをエクスポート
CocosStudioを起動し、Animation Editor を選択してアニメーションエディタを起動します。
DemoPlayerを選択、プロジェクト保存先を選択、キャラが表示されたら、
ファイル>プロジェクトを出力 で、アニメーションデータをエクスポートします。
出力されたExportフォルダを、フォルダごと、MyGame\Resources にコピーしておいてください。
なお、これらのファイル構成はテスト用の為特に深く考えていません。
+ソリューションエクスプローラでソリューションを右クリック>追加>既存のプロジェクト で、
.\cocos2d\cocos\editor-support\cocostudio\proj.win32\libCocosStudio.vcxproj
を開き、追加します。
+libCocosStudioのプロジェクトをVisualStudio2013にアップグレード
追加されたライブラリをソリューションエクスプローラで見ると、『libCocosStudio (Visual Studio 2010)』という風に、古いVisualStudio形式のままなのがわかります。
『libCocosStudio (Visual Studio 2010)』を選択して右クリック>VC++ コンパイラとライブラリのアップグレード を選択すると、アップグレード確認が出るのでアップグレードしてください。
+MyGameプロジェクトに、libCocosStudioライブラリをリンク
ソリューションエクスプローラでMyGameプロジェクトを選択して右クリック>プロパティ>共通プロパティ>参照>新しい参照の追加 で、
libCocosStudioのチェックを有効にして、OKを押します。
+インクルードディレクトリを追加
MyGameプロジェクトのプロパティ>構成プロパティ>C/C++>全般 の、『追加のインクルードディレクトリ』の右側にある『▼』をクリックして、出てきた『編集』をクリック。
新しい行を追加(フォルダのようなアイコンをクリック)で、『$(EngineRoot)cocos\editor-support』を追加してOKを押します。
これで、#include "cocostudio/CCArmature.h" のような記述ができるようになります。
+実装
 #include "cocostudio/CCArmature.h"
HelloWorld::init() 内で、
 Size visibleSize = Director::getInstance()->getVisibleSize();
 Point origin = Director::getInstance()->getVisibleOrigin();
 // アニメーション再生
 {
     cocostudio::ArmatureDataManager::getInstance()->addArmatureFileInfo(FileUtils::getInstance()->fullPathForFilename("Export/DemoPlayer.ExportJson"));
     cocostudio::Armature* armature = cocostudio::Armature::create("DemoPlayer");
     armature->getAnimation()->play("walk");
     armature->setPositionX(origin.x + visibleSize.width / 2);
     armature->setPositionY(origin.y + visibleSize.height / 2);
     armature->setScale(0.3f); // そのままだと大きすぎるので、ちょっと小さく表示する
     this->addChild(armature);
 }

    ホーム 一覧 単語検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS