「504i」JavaオプションAPI・拡張APIのススメ(1/3)「504i」シリーズに搭載されているJavaプラットフォームDoJa-2.0には、機種ごとに異なったAPIを搭載している部分が存在する。いわゆるオプションAPI・拡張APIと呼ばれているものだ。本記事では、このオプションAPI・拡張APIとは何なのか、どのようなことができるのか解説していく
2002年5月、ドコモから504i用Javaプラットフォーム「DoJa-2.0」の仕様が公開された(5月20日の記事参照)。503i用「DoJa-1.0」に引き続き、草の根プログラマーにプログラミングの道が開かれたわけだ。 その際プログラミングガイドとAPIリファレンスのほかに、ある仕様も公開された。それはオプションAPI・拡張APIと呼ばれるもので、504i全機種ではなく、ある特定の機種では対応しているAPI仕様だ。DoJa-1.0ではこの種のAPIの仕様は公開されておらず、存在していたかどうかも不明(*1)だった。それがDoJa-2.0では仕様書の形で明らかにされたのである。 オプションAPI・拡張APIへの対応は各端末メーカーに任されており、全APIは仕様書として取りまとめられてはいるものの、各端末メーカーの対応状況はまちまちだ。しかし、その仕様は、実装すると今まで実現できなかったようなアプリケーションが作成可能となるものが多い。 *1 草の根プログラマーたちによる調査によって、公開されていなかったバイブレータの制御は一部機種で明らかになった
オプションAPI・拡張APIの仕様は、Webサイトで公開されており、APIリファレンスと各メーカー(端末)の対応状況一覧を無償で入手できる。同じく公開されている504iエミュレータを使って、これらのAPIを試せる。ただし、追加モジュールを入手してエミュレータに組み込む必要のあるものや、エミュレータに対応していないAPIも存在するため、動作確認には注意が必要だ。 オプションAPI・拡張APIは、大きく以下のカテゴリに分類される。
2Dグラフィックス描画では、以下の機能が追加される。
追加機能は傾向として画像を動的に加工するものが多い。拡大・縮小、回転・反転、パレットの変更、背景との合成が追加されたことで、1つの画像からいくつもの別パターンの画像を生成できるようになる。今まで必要な画像をすべてファイルとして用意していた場合、その必要がなくなるため、画像リソースの大幅な軽減が期待できる。 透過色指定によって、“抜き”の表現も行える。クリッピング領域の指定や、矩形のコピーも可能となった。通常の画像描画以外では、スプライト描画も追加された。スプライト描画でも反転や回転の表示、背景との演算ができる。 またイメージマップと呼ばれる、複数の画像で大きなイメージを表現する仕様も存在する。これはゲームのマップの表現などに有用である。変わったところでは、アニメーションGIFの任意のフレームだけ描画する機能や、E-アニメータと呼ばれる特殊フォーマットのアニメーション再生も可能である。E-アニメータのデータ作成には専用ツールを用いる。
3Dグラフィックス描画は、高レベル3D描画と低レベル3D描画の2種類が存在する。高レベル3Dグラフィックス描画は、J-フォンのJavaアプリで採用された3Dグラフィックス描画でおなじみの、エイチアイの「Mascot Capsule」が採用されている(5月21日の記事参照)。「Mascot Capsule」の特徴は、比較的容易に基本的な3Dグラフィックスを利用できること。実際の処理はすべてソフトウェアで行っているため、パフォーマンスは端末の性能に左右される。 低レベルグラフィックス描画は、機能的にかなりリッチで、高レベルよりもさらに細かく制御できる。APIはOpenGLのAPI体系に近い仕様となっており、コンシューマーゲームプログラマーにとって有用な仕様だ。しかも実際の処理は専用LSIでレンダリング処理を行っているため、描画速度は高レベル3D描画よりかなり高速である。 [コネクト 伊藤広明, ITmedia] Copyright © ITmedia, Inc. All Rights Reserved. 前のページ | 1/3 | 次のページ モバイルショップ
最新CPU搭載パソコンはドスパラで!!
最新スペック搭載ゲームパソコン
FEED BACK |