Android-x86 を使ってパソコンで試せる Android 上での 3D グラフィックス OpenGL プログラミング 4章 第 大和 一洋 組み込み機器でも,見栄えのよい表示が欲しい場合は 3D グラフィックスが使われる.Android では 3D 表 示のために OpenGL が標準搭載されている.これを使って実際に 3D 表示を行ってみる. また,実行環境として第 3 章で解説した Android-x86 を使用するため,パソコンを使って簡単に試せる. (編集部) たものです. 本稿では,OpenGL と OpenGL ES に共通の基本的な事 1.OpenGL とは 項を扱うので,以降,特に断りがない限りこれらをまとめ ● 3D グラフィックスの API 仕様 OpenGL て OpenGL と表記します. OpenGL(Open Graphics Library)は,3D グラフィック ● OpenGL を採用する利点 ス の た め の API 仕 様 で す. こ の 仕 様 は 標 準 化 団 体 OpenGL は,次のような処理を行う API を提供します. (1) KHRONOS によって策定されており,団体名の「Open」 これらにより,比較的複雑な 3 次元物体の描画やリアルタ の名のとおりオープンな仕様として公開されているため, イム・アニメーションを実現できます. Windows,Mac OS X,Linux などのパソコン用 OS をは ・オブジェクトの 3 次元空間で平行移動や回転 じめ,Android や iOS などモバイル端末向け OS でも利用 ・アルファ・チャネルを使った透過処理 できます.また最近では,Web ブラウザ上でも使用でき ・照明による立体感の表現 るようになりつつあります. ・テクスチャ(静止画)の貼り付けによる質感表現 Android で利用できるのは,厳密には,OpenGL の組み ・視点の移動や視野角の設定 込み機器用のサブセットである OpenGL ES という API で ・ワイヤ・フレームでの表示 す.OpenGL から組み込み機器では使用しないような複雑 3D グラフィックスの API には,Windows 用の DirectX な処理を行う API や,ほかで代用できる API が削除され などもありますが,筆者は,以下の 2 点が OpenGL の特に 有用な特徴だと考えます. (1)さ まざまなプラットホーム(OS)上で同じ API を利用 Windows版OpenGL アプリケーション できる. 複数のプラットホームで動作させることが前提のアプリ glColor4f()など ケーションを作成する方には非常に有益でしょう.また, プラットホームごとに新しい技術を学習するコストも削減 できます.OpenGL そのものは共通ですが,OpenGL を使 OpenGL うためのウィンドウの作成やイベント処理などはプラット ホームによって異なります.それぞれの OS の標準的な方 Android版OpenGL アプリケーション iPhone版OpenGL アプリケーション onSurfaceCreated()など 図 1 さまざまなプラットホームにおける OpenGL 58 KEYWORD 3D グラフィックス,OpenGL,KHRONOS 法に従ってプログラミングすることになります(図 1) . また,本稿で説明する Android での OpenGL プログラミ ングには Java を用います.ほかのプラットホームでは,C Nov. 2011
© Copyright 2024 ExpyDoc