|
01. 機種依存 |
|
503で開発経験のある方にはすっかりおなじみと思いますが
iアプリには非常に機種依存があります。
504になってそれは縮まるどころかさらに酷くなったところもあります。
これが個人的に嫌いなところです。
しかしシェアが高いのでなんともいえないのが現状です..
まず504になって増えた機能の特徴でゲームに便利そうな機能を上げていきます。
3Dエンジンを搭載して3Dの表現が可能
スプライト機能を搭載してJ-PHONEのようなスプライト表現が可能(回転・拡大・縮小可能)
半透明描画が可能
パレット変更機能を使用可能
曲データの多重再生が可能
と言ったところですが...
実は3D以外互換性はありません。
しかもその3Dでさえ画面の真中にオブジェクトを一つ置くくらいの単純さ...
(一応動かせれますが..)
それでも各機種の専用アプリとして開発すれば制限に引っかからずに作れますが
実際にそのようなアプリは歓迎されません。
スプライト機能が無いので反転画像は別に用意しなければいけないし
パレット変更機能が無いので色違いのキャラの表現もままならない..
これは明らかに画像の無駄ですね。
唯一の良い所といえばdrawImageメソッドが範囲指定で出切る事です。
503では抜き色のある画像は一つ事に分けなければいけませんでしたが
504では部分抜き出しで抜き色の画像を描画できます。
これはMIDPにも無い機能で非常に重宝します。
ちなみに普及の度合いはN504>P504>SO504>F504>D504となっているようです。
スプライト機能はSOとPが持っています。
N504とP504は音楽多重再生が可能です。
F504はとにかく計算が高速です。
D504は低レベル3D機能を持っています。(OpenGLっぽい形式で3D表現可能です。)
N504はヒープメモリが少ない(600K,他機種は1M以上あります)
D504はメディアリソースメモリが少ない
F504は音を出す時に一瞬止まる
N504は他のに比べて画面がかなり広い
SO504は画面が一番狭い(128x128,このサイズにあわせて開発する事が多いでしょう)
SO504はInputStreamのavailableメソッドが効かない
それでは簡単なゲームでも作りながら解説していきます。