0

次のように、opengl を使用してテクスチャをスプライトに適用しようとしています。

int[] textures=new int[1];
gl.glEnableClientState(GL10.GL_TEXTURE_2D);
gl.glGenTextures(1, textures, 0);
gl.glBindTexture(GL10.GL_TEXTURE_2D, textures[0]);
gl.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MIN_FILTER, GL10.GL_NEAREST);
gl.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MAG_FILTER, GL10.GL_LINEAR);
Bitmap bitmap=null;
try {
   bitmap=  BitmapFactory.decodeStream(contxt.getAssets().open("gfx/garf.png"));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

GLUtils.texImage2D(GL10.GL_VERTEX_ARRAY, 0, bitmap, 0);
bitmap.recycle();

.....

私はアンドロイドでandEngineフレームワークを使用しており、スプライトのonManagedDrawメソッドを使用してこれを行っています。

誰でもこの方向で助けることができますか?

4

2 に答える 2

4

texImage2D( GL10.GL_TEXTURE_2D , 0, bitmap, 0);が必要だと思います。

于 2011-02-28T14:15:07.037 に答える
2

あなたの問題は、テクスチャが表示されないことだと思います:)

これは間違っています:

GLUtils.texImage2D(GL10.GL_VERTEX_ARRAY, 0, bitmap, 0);

次のようにする必要があります。

GLUtils.texImage2D(GL10.GL_TEXTURE_2D, 0, bitmap, 0);
于 2011-02-28T14:14:13.693 に答える