2010年9月18日土曜日

Android版「Army & Maiden」その1

本日より、Android版の「Army & Maiden」の開発を始めました。

今日行った内容は下記の通りです。

・Android版「Army & Maiden」用のプロジェクトの作成。

・Hellow Woldの起動テスト。

・初期化から終了までの各種メソッドと、タッチパネルのメソッドの実装。

・ゲーム進行管理と描画を行うための、スレッドによるループ処理の実装。

取りあえずこんな感じです。まだスケルトンを作っただけという状態です。

描画実験



さて、来週ぐらいから、ラップ・クラスを作成して実装していくことになります。

「Army & Maiden」は、PCとAndroidの環境依存を吸収するために、以下のラップ・クラスを用意しています。

・WrpDw(描画処理をラップするクラス)
・WrpEnv(各種環境依存をラップするクラス)
・WrpFile(ファイルのデフォルト入出力先やリソース取得をラップするクラス)
・WrpNet(通信処理をラップするクラス)
・WrpSnd(音声処理をラップするクラス)

ゲーム内では、これらのラップ・クラスを通して、環境依存の処理に触れるようにしています。

PC版の「Army & Maiden」では、これらのラップ・クラスを継承した以下のクラスを用意しています。これらを起動時に初期化して、「AppLoop」クラス(アプリ本体)に登録しています。

・WrpDwPc
・WrpEnvPc
・WrpFilePc
・WrpNetPc
・WrpSndPc

来週から行うのは、これらのラップ・クラスのAndroid版の作成です。

・WrpDwAndroid
・WrpEnvAndroid
・WrpFileAndroid
・WrpNetAndroid
・WrpSndAndroid

これで、理論的にはゲームのプログラムを一切弄ることなく、移植が完成する予定です。

処理のメソッド自体は、既に「Ex Reversi」で開発したメソッドが流用できるので、かなりの部分コピペでいけるはずです。



とはいえ、これだけでは解決しない環境依存も存在します。

その一番の山場は、Androidの特殊な起動終了処理です。

これに対するメソッドも「AppLoop」クラスには用意しているのですが、PC版では未実装です。予約だけしてあるメソッドというわけです。

この部分を実装すれば、全ての動作が完成するはずです。



……とはいえ、実はこれで終わりではありません。

最後の仕上げというか、手こずる可能性があるのは、CPUとメモリーのスペック対策です。

メモリーに関しては、一応、PC版で16MB以内で全て動作するようにしてあるので大丈夫なはずです。PC版よりも画面サイズが小さいので、メモリー使用量は減るはずですし。

あとは、CPUの速度が追いつくかどうかです。

ここらへんは、実際の動作を見ての判断になります。



目標は2週間なのですが、色々と他の仕事もあるので、もう少しかかるだろうなという感じです。

上手くサクッといってくれればよいのですが。

0 件のコメント:

コメントを投稿