高機能化、多機能化が進む携帯電話や携帯端末に3Dグラフィックスシステムをインプリメントしようとする動きに呼応する形で、3DグラフィックスAPI“Open GL”の規格策定を行なっている業界団体“Khronos Group”は米国時間29日、携帯機器用“OpenGL”APIの仕様を“SIGGRAPH 2003”の“OpenGL Birds of a feather”セッションにて公開した。このAPIは“OpenGL ES”と名付けられ、名称は“(For)Embeded Subset”(組み込み用サブセット)に由来する。
“OpenGL ES”は携帯機器などへの組み込み向けのOpenGLとして提供される。携帯電話やPDAはもちろん、カーナビやその他の3Dグラフィックス開発向けAPIという位置づけだ |
サブセットということは、大本となっている“OpenGL”からの機能削減版ということになるわけだが、携帯機器に特化し、機能が追加されている部分もある。たとえば、携帯機器の画面は解像度が低いために、3Dグラフィックスを処理する際にもそれほど高い演算精度を必要としない場合が多く、携帯機器に搭載されているCPUの浮動小数点(実数)演算性能がそれほど高くないというケースも考えられる。そこで“OpenGL ES”では、整数レジスターで実数演算体系をインプリメントさせる固定小数点演算系の命令体系もサポートされている。
将来的にはプログラマブルシェーダーもサポート
今回発表された“OpenGL ES”はバージョン1.0で、これは“OpenGL 1.3”をベースとして開発されている。2004年には“OpenGL 1.5”ベースの“OpenGL ES 1.1”、そして2005年には“OpenGL 2.0”ベースの“OpenGL ES 2.0”がリリースされる予定となっている。
“OpenGL ES”ロードマップ |
注目すべきはこの“OpenGL ES 2.0”で、このタイミングで産業界からの携帯機器の3D機能強化の強いリクエストと、“Khronos Group”の評議メンバーの合意があればプログラマブルシェーダーの採用にも踏み切るのだという。先頃発表された“プレイステーションポータブル(PSP)”のように、小型機器があそこまで高度な3Dグラフィックシステムを実装してくる昨今、近い将来に組み込み用GPUがプログラマブルシェーダー・アーキテクチャーを実装してくるのも当然の流れとも考えられる。
なお、現時点では、“OpenGL ES”の仕様が決まったという段階であり、“OpenGL ES”を完全にサポートするような組み込み用GPUの発表はまだ行なわれていない。“Khronos Group”のメンバーには米3Dlabs社やカナダATIテクノロジーズ社といった大手GPUベンダーも加盟しているため、近い将来に、この“OpenGL ES”を完全にサポートした組み込み用GPUが登場する可能性は非常に高い。
しかし一方で、GPUベンダー大手の米エヌビディア(NVIDIA)社は現在“Khronos Group”に加盟していない点が多少気に掛かる(NVIDIAは初期の“Khronos Group”メンバーであったものの、すでに同団体から脱退している)。組み込み用GPUに向けては、独自路線で何かを画策しているという可能性も考えられる。
ある“Khronos Group”加盟企業の担当者によれば、「(“OpenGL ES”は)携帯電話への応用が期待されており、単価は安いかもしれないが、マーケットは非常に大きいので魅力がある。NVIDIAがここを無視するはずがない」と述べており、近い将来、GPU戦争がこのフィールドに飛び火することがあるかもしれない。
“Khronos Group”参加企業一覧 |
“Khronos Group”ブースでは“OpenGL ES”対応の試作機を展示
“SIGGRAPH 2003”の展示会場に設けられた“Khronos Group”ブースでは、メンバー企業である三菱電機(株)と米テキサス・インスツルメンツ社による、具体的なアプリケーション例が展示されており、“OpenGL ES”そのものが非常に具体性の高いものであるという点をアピールしていた。
三菱電機は“Khronos Group”ブースにてドコモの504i、505i系の携帯電話を“Z3D”シリーズ採用機器のサンプルとして展示していた。すでに日本で発売済みの製品の展示なのだが、携帯電話の機能が日本に比べてまだ低い北米では非常にインパクトが強いようで、立ち止まって見る人の姿が目立った |
三菱電機が展示していたのは、同社の組み込み用GPUコア“Z3D”シリーズの最新版、『Z3D II』を搭載した携帯電話(“Z3D”シリーズはNTTドコモの携帯電話への採用例がある)。担当者によれば、“OpenGL ES”への対応は次期バージョンの『Z3D III』からになる見込みで、さらにその次の『Z3D IV』では、“OpenGL ES 2.0”のリリーススケジュールと内容に同調し、プログラマブルシェーダーに対応する予定があるのだという。
“Z3D”シリーズのロードマップ |
『Z3D III』以降の製品についてはまだ詳しいスペックが明らかになっていないが、現行の『Z3D II』が、
- 動作クロック:Z3D=30MHz、Z3D II=50MHz
- 画面解像度:最大320×240ドット(可変)、16ビットカラー(1ビット、4ビット、16ビットの範囲で可変)
- テクスチャー:256×256ドット、16ビットカラー(1ビット、4ビット、16ビットの範囲で可変)
- ステンシルバッファー:256×256ドット、2ビット
- Zバッファー:16ビット
- パフォーマンス:1シーンあたり、2000~3000ポリゴン+テクスチャーマッピングで平均10fps程度(Javaオーバーヘッド含む)
というスペックなので、Z3D III以降はこれを上回るものになることだろう。
TIのDSP“OMAP”で“OpenGL ES”をインプリメントした試作機。ジオメトリーをARMで、ラスタライズをOMAPにて実行している。TIはCPU+OMAPというソリューションで“OpenGL ES”をサポートしていくという |
一方、TIが提供する“OpenGL ES”ソリューションは、ソフトウェアベースによるもので、ブースにあった試作デモ機ではCPUのARMプロセッサーにてジオメトリー演算(T&L処理)を行ない、TI製プログラマブルDSP“OMAP”にてラスタライズ(レンダリング)を行なう仕組みを採用していた。システムの開発は英クライテリオン・ソフトウエア社の協力のもとで行なわれているそうで、同社の3Dグラフィックス開発スイート『RenderWare』シリーズへのインプリメントも期待される。