API 19 (4.4.2)のBasicGLSurfaceViewを実行してみました。
OpenGLを用いてトライアングル+テクスチャマップ。
ドロイド君テクスチャを、三角形に貼って、くるくると回転させる。
見た目は2次元ですが、3次元処理している。
model view projection変換をちゃんとやっている。完全なGLの3Dサンプル。
このサンプルで分かること:
1.Android SDK でOpenGL Esをどう使うのか。
2.シェーダー、テクスチャの扱い方。
ドロイド君テクスチャを別のテクスチャに変更するやり方
新しいテクスチャファイルを用意し、以下の場所に置く(testTexture.png)
BasicGLSurfaceView\bin\res\crunch\raw\testTexture.png
eclipsのプロジェクトのbin/res/crunch/raw に上のテクスチャを登録する。
File-> OpenFile でオープンするとPackageExplorerで見えるようになる。
GLES20TriangleRenderer.javaの以下の部分を書き換える
InputStream is = mContext.getResources()
.openRawResource(R.raw.testTexture);
このままだと、R.javaにこのテクスチャが登録されていないので、エラーがでます。ただ、このR.javaを直接書き換えても、書き換えられない。
R.raw.testTexture の上にマウスポインタを置くと、どうすればいいかの選択しがでるので、Rに登録するという内容のものを選べば、R.javaが書き換わります。