cocos newコマンドでプロジェクトを作成
プロジェクト名は「Label」で、一意に特定するためのパッケージ名「net.tks2.projects」です。言語はC++なので「cpp」とします。次のコマンドを実行してください。
パッケージ名はiOS/Androidともに、実際にAppStore(GooglePlayStore)に登録する際に必要なモノです。Xcode上からでもプロジェクトを作成できますが、クロスプラットフォーム(Android)開発を行うのでcocos
newコマンドを利用しています。
cocos newコマンド
cocos new Label -d ~/Documents -p net.tks2.projects -l cpp
コマンドが正常に完了するとDocumentsディレクトリにLabelフォルダーが作成されproj.ios_mac/Label.xcodeprojが作成されます。
Documents/Label/proj.ios_mac/Label.xcodeproj
iOS向けプロジェクトをXcodeで開きます。
不要なサンプルクラスを削除する
HelloWorldScene.cppとHelloWorldScene.hを選択し右クリックでファイル一覧を出しDeleteをクリックする。
Move to Trash(ゴミ箱に移動)を選択し削除する。
AppDelegateクラスで1件のエラー(HelloWordScene.hが見つからない)が発生しますが、この時点では気にしなくても大丈夫です。
続いてLabelを実装するクラスを用意します。フォルダーを選択し右クリックでファイル一覧を出しNew File...をクリックします。
追加するファイルの種類はC++のクラスなので続いてLabelを実装するクラスを用意します。iOSのSourceを選択しC++ Fileをクリックします。
追加するファイル名を入力します。ここではTopとします。Nextボタンをクリックします。
Classesのフォルダー内に作成します。Createボタンをクリックします。
ファイル作成後、ひな形となるコードが表示されていますが、それらすべて削除して、それぞれ次に示すコードを入力してください。なお、ヘッダーにはLayerクラスを継承するTopクラスとメンバ関数の宣言を、実装部にはscene関数とinit関数の最小限の実装を行います。
Top.h
#ifndef __Label__Top__
#define __Label__Top__
#include "cocos2d.h"
class Top : public cocos2d::Layer
{
public:
// 初期化のメソッド
virtual bool init();
static cocos2d::Scene* createScene();
// create()を使えるようにしている。
CREATE_FUNC(Top);
};
#endif /* defined(__Label__Top__) */
Top.cpp
#include "Top.h"
USING_NS_CC;
Scene* Top::createScene()
{
// 「シーン」は自動解放オブジェクトです
auto scene = Scene::create();
// 「レイアウト」は自動解放オブジェクトです
auto layer = Top::create();
// シーンに子としてレイヤーを追加
scene->addChild(layer);
// シーンを返す
return scene;
}
// 「INIT」初期化
bool Top::init()
{
if ( !Layer::init() )
{
return false;
}
return true;
}
これでTopクラスの用意が出来ました。
HelloWorldSceneクラスを削除した際にエラーが発生しました。AppDelegate.cppのエラー箇所の修正を行います。
#include "HelloWorldScene.h"
↓変更
#include "Top.h"
"HelloWorldScene.h"を"Top.h"に変更します。
AppDelegate.cppのapplicationDidFinishLaunching関数内でエラーが発生します。
エラー箇所の修正を行います。
auto scene = HelloWorldScene::createScene();
↓変更
auto scene = Top::createScene();
"HelloWorldScene"を"Top"に変更します。
ビルド&実行後の表示
まだ画面が真っ暗です。
ここでは、TopSceneクラスの画面が表示されていますが、このクラスは必要最小限の実装だけです。これで開発の準備は整いましたので、Xcodeの左上にある[Stop]ボタンをクリックするか、メニューから[Product]→[Stop]を選択してiOSシミュレータを停止します。
これをひな形にして開発していけば良いでしょう。
コメントをお書きください