さて、前回作成したプロジェクトには、いくつものプラットフォーム向けのプロジェクトフォルダと、ソース・コードをまとめる「
Classes」フォルダ、そしてリソースファイルをまとめる「
Resources」フォルダがありました。プロジェクト関連のフォルダは、それぞれの開発ツールで作業するためのプロジェクトなので、プログラムの内容には直接関係しません。作成するプログラムの内容は、「
Classes」フォルダにあるソースコードファイルだけ読めばわかるようになっています。
このフォルダの中には、2つのクラスを定義したソースコードが入っています。「
AppDelegate」クラスと、「
HelloWorld」クラスです。これらを定義するために計4つのファイルが用意されています。以下に簡単に整理しておきましょう。
◎AppDelegateクラスこれがアプリケーション本体の処理に関するクラスになります。これには以下の2つのファイルが用意されています。
AppDelegate.h――ヘッダーファイルです。これを見れば、AppDelegateというクラスがどういうものなのか、わかります。
AppDelegate.cpp――実装ファイルです。このクラスに用意されている具体的な処理の内容はこれを見ればわかります。
◎HelloWorldクラスこれは、サンプルとして用意される「シーン」に関するクラスです。アプリケーションを起動すると最初に表示される画面の内容がここに用意されます。
HelloWorldScene.h――ヘッダーファイルです。シーンのクラスがどう定義されていてどんな内容が書かれているか、これでわかります。
HelloWorldScene.cpp――実装ファイルです。シーンで実行している具体亭な内容はこれでわかります。簡単なアプリの作成は、まずここを書き換えることから始めることになるでしょう。
■アプリケーションとシーン
見ればわかるように、Cocos2d-xのアプリは、「
アプリケーション本体のクラス」と「
シーンのクラス」の組み合わせになっています。
アプリケーション本体クラスには、実際に画面に表示されるような内容はまったく書いてありません。これは、アプリケーション自体で必要になる設定や処理を行ったりするためのものです(HelloWorldのシーンを作成して実行する処理もここに書いてあります)。これは各アプリに1つだけ用意されます。アプリが起動されると、まずこのクラスにある処理が実行されるわけですね。
シーンのクラスが、具体的に画面に表示される内容を記述するものです。これは、必要に応じていくつも作成します。そうしてシーンを切り換えながら画面の表示を変更したりするのですね。シーンの中には、ゲームで使用するさまざまな部品(テキストの表示や、スプライトといったグラフィックの部品など)が用意され、それらを制御するための処理がまとめられます。
この2つの働きと役割の違いをまずしっかりと頭に入れておきましょう。