2012年2月21日火曜日

色がおかしかった原因

先ほどの記事で、色がちょっとおかしかった原因が判明。
凡ミスでした。
スプライトの仮想VRAMをAndroidBitmapに設定するのは、ちゃんとAndroid用のパレットテーブル(16bitカラー)を咬ませていたのに対し、BGの仮想VRAMを設定するときに誤ってWindows用のパレットテーブル(32bitカラー)を咬ませていたのが原因。

という訳で、修正して実行したところ、問題解決。
AndroidでもちゃんとWindowsと全く同じ画面が表示されました。

ちなみに、現時点でのVG-Engine+InvaderBlockのソースコードのファイルは次のような構成になっています。

それぞれのファイルの意味は、
  1. Android.mk: ndk-buildをするためのmakefile
  2. com_suzukiplan_IBLOCK_IBLOCK.h: javahで生成したJNIヘッダ
  3. game.c: InvaderBlockの処理
  4. NUL: ndk-buildをした時に生成されるゴミファイル
  5. vge.h: VG-EngineのAPIを使うためのヘッダファイル
  6. vge_a.c: VG-Engine本体(Android版)
  7. vge_w.c: VG-Engine本体(Windows版)※Android版ではビルドしない
  8. vgeapi.c: VG-EngineのAPI
  9. vgeint.h: VG-Engine本体とAPI間で共用する内部データ定義等のヘッダファイル
灰色の網掛け部分は、私が作ったファイルではなく、自動生成物です。
今回のVG-EngineのAndroid対応で作っているソースはvge_a.cのみ。
その他のソースは、Windows版から1行たりと修正していません

要するに、Windows版とAndroid版の動きは全く同じです。
なので、今後、InvaderBlockV2のスクリーンショット等を掲載するときは、Windows版のものを載せます。

(補足)
先ほどの記事では、(テンションが高かったため)携帯でタブレットの写真撮影をし、メールでPCに飛ばし、それを載せていたのですが、私の携帯は従量課金制なので勿体無い。ついでに、携帯のSDカードは、バッテリーを外さないと取れないという、素晴らしく使い難い設計(iida製のPLYという機種)なので、SDカードに保存したデータをPCへ持ってくるのも面倒くさい。

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。

合理的ではないものを作りたい

ここ最近、実機版の東方VGSの開発が忙しくて、東方VGSの曲追加が滞っています。 東方VGS(実機版)のデザインを作りながら検討中。基本レトロUIベースですがシークバーはモダンに倣おうかな…とか pic.twitter.com/YOYprlDsYD — SUZUKI PLAN (...