03.モデルOpenGLレンダラクラスを作る
(開発環境として「Eclipse」を使用した、古い情報です。
開発環境として「Android Studio」を使用した、新しい情報は、
「ホーム > プログラミング > モデルビューアを作る ( Android + OpenGL ES 1.0/1.1 ) ( Android Studio 2.3.3 版 )」)
モデル描画に関する処理を担うモデルOpenGLレンダラクラスを、トラックOpenGLレンダラクラスの派生クラスとして作成します。
使用開発環境は、Eclipse 3.7.2 ベースの Pleiades です。
解説
OpenGL ES のポリゴン描画にとって効率のよいデータ構造を用意し、このデータ構造のデータを作成し、ポリゴン描画をします。
実装
プロジェクトを開く
02.で作成したモデルビューアプロジェクトを開きます。
モデルデータ構造クラスの作成
モデルデータの構造を定義するモデルデータ構造クラスを作成します。
パッケージエクスプローラで、作成したプロジェクトの下の「src」の下の作成したパッケージを右クリックし、 右クリックメニューの「新規 >
クラス」 を選択します。
名前 にクラス名「Model」、
を入力し、「完了」ボタンを押します。
Modelクラスの中身を以下のようにします。
モデルOpenGLレンダラクラスの作成
モデル描画に関する処理を担うトラックOpenGLレンダラクラスを、ベースOpenGLレンダラクラスの派生クラスとして作成します。
パッケージエクスプローラで、作成したプロジェクトの下の「src」の下の作成したパッケージを右クリックし、 右クリックメニューの「新規 >
クラス」 を選択します。
名前 にクラス名「OpenGLModelRenderer」、
スーパークラスに、「OpenGLTrackRenderer」、
を入力し、「完了」ボタンを押します。
モデルOpenGLレンダラクラスにメンバ変数、アクセサの追加
モデルOpenGLレンダラクラスに、メンバ変数、アクセサを追加します。
シーン描画関数のオーバーライド
モデルOpenGLレンダラクラスに、シーン描画関数をオーバーライド関数として追加します。
モデル描画関数の追加
モデルOpenGLレンダラクラスに、モデル描画関数を追加します。
モデルビューアビュークラスの修正
モデルOpenGLレンダラクラスの作成にあわせて、モデルビューアビュークラスを修正します。
・m_rendererメンバ変数を、OpenGLModelRenderer型に変更します。
・m_rendererメンバ変数の生成を、OpenGLModelRendererオブジェクト生成に変更します。
・モデル作成処理と作成したモデルのセット処理を追加します。
実行
Android Virtual Device にて、動作確認。
※ ターゲット:「Android 4.0.3 - API Level 15」、ハードウェア:「GPU emulation」をyes、として作成したAndroid
Virtual Device にて動作確認。
ダウンロード
関連ページ
前項目:02.トラックOpenGLレンダラクラスを作る
次項目:04.ピックOpenGLレンダラクラスを作る