cocos環境構築メモ
cocos自体のインストール
まずは本体を公式からダウンロード。
現時点で最新版のv3.3
にした。
$ mkdir ~/lib $ mv /path/to/cocos2d-x ~/lib/cocos2d-x $ cd ~/lib/cocos2d-x $ ./setup.py
こいつらは現状インストールしていないから全部スキップした。
Please enter the path of NDK_ROOT (or press Enter to skip): Please enter the path of ANDROID_SDK_ROOT (or press Enter to skip): Please enter the path of ANT_ROOT (or press Enter to skip):
下記の内容が(zshを使っていれば)~/.zshrc
に書き込まれる。
# Add environment variable COCOS_CONSOLE_ROOT for cocos2d-x export COCOS_CONSOLE_ROOT=/Users/mihyaeru/lib/cocos2d-x/tools/cocos2d-console/bin export PATH=$COCOS_CONSOLE_ROOT:$PATH # Add environment variable COCOS_X_ROOT for cocos2d-x export COCOS_X_ROOT=/Users/mihyaeru/lib/cocos2d-x export PATH=$COCOS_X_ROOT:$PATH # Add environment variable COCOS_TEMPLATES_ROOT for cocos2d-x export COCOS_TEMPLATES_ROOT=/Users/mihyaeru/lib/cocos2d-x/templates export PATH=$COCOS_TEMPLATES_ROOT:$PATH
cocosコマンドが使えるようになる。
$ source ~/.zshrc
$ which cocos
/Users/mihyaeru/lib/cocos2d-x/tools/cocos2d-console/bin/cocos
お試しプロジェクト
新規プロジェクトを作成してみる。
$ cd ~/pj/cocos $ cocos new FirstSample -p com.mihyaeru.first_sample -l cpp Running command: new > Copy template into /Users/mihyaeru/pj/cocos/FirstSample > Copying cocos2d-x files... > Rename project name from 'HelloCpp' to 'FirstSample' > Replace the project name from 'HelloCpp' to 'FirstSample' > Replace the project package name from 'org.cocos2dx.hellocpp' to 'com.mihyaeru.first_sample' > Replace the mac bundle id from 'org.cocos2dx.hellocpp' to 'com.mihyaeru.first_sample' > Replace the ios bundle id from 'org.cocos2dx.hellocpp' to 'com.mihyaeru.first_sample'
こんな構造(1階層目だけ)になっている。
FirstSample ├── CMakeLists.txt ├── Classes ├── Resources ├── cocos2d ├── proj.android ├── proj.ios_mac ├── proj.linux ├── proj.win32 ├── proj.win8.1-universal └── proj.wp8-xaml
このコマンドで(ビルドしつつ)起動できる。
cocos run -p ios
ここまでで、README.md
に書かれている内容の自分向けメモが終わり。
ソースを弄ってみる
Classes/HelloWorldScene.cpp
内のHelloWorld::init()
に次のコードを追加してみる。
ボタンを押すとHelloWorld
のラベルがhoge
に変わるだけのサンプル。
auto buttonItem = MenuItemImage::create("CloseNormal.png", "CloseSelected.png", [label](Ref *sender) { label->setString("hoge"); }); buttonItem->setPosition(Vec2(200, 200)); auto buttonMenu = Menu::create(buttonItem, NULL); buttonMenu->setPosition(Vec2::ZERO); this->addChild(buttonMenu, 2);
とりあえず動かせたのでこの記事は終了。 Android版については今回は使用しないから割愛。
以降は...
昔のCocos2dの記憶を思い出しつつ、C++を頑張るぞい。