-1

単純な緑色の図面を作成するためのすべてのコンポーネントがあると思いますが、明らかに間違っています。多分誰かが私が欠けているものに光を当てることができますか?

@Override
public synchronized void onDrawFrame(GL10 unused) {
    Bitmap b = Bitmap.createBitmap(512, 512, Bitmap.Config.RGB_565); 
    b.eraseColor(Color.GREEN);
    GLES20.glEnable(GLES20.GL_TEXTURE_2D);
    GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, b, 0);
}
4

1 に答える 1

1

glTexImage2D は何も描画しません。画像をテクスチャにコピーするだけです。上記の画像でテクスチャリングされているジオメトリ(クワッドなど)を描画する必要があります。

また、glTexImage を使用するには、バインドされたテクスチャ オブジェクトが必要です。つまり、最初に を使用glGenTexturesして新しいテクスチャ ID を取得し、次にそれglBindTextureをバインド/作成する必要があります。

また、画像が一定のままである場合は、フレーム描画ごとに再アップロードしないでください。

しかし、最も重要なことは、緑の四角形を描きたいだけなら、緑の四角形だけを描かないのはなぜですか? これにはテクスチャは必要ありません。

于 2012-12-27T20:45:38.567 に答える