0

OpenGL 2シーンには壁とレンガのテクスチャがあり、何を設定してもきらめきと点滅を続けます。ズームインすると(そしてテクスチャがはっきりと見えます)、点滅ときらめきが止まります。しかし、ズームアウトしてシーン内を移動すると、点滅ときらめきが非常に顕著になります。これは、レンガの壁のテクスチャコードです。

brickwall.setTexParameteri(gl, GL2.GL_TEXTURE_WRAP_S, GL2.GL_REPEAT);
brickwall.setTexParameteri(gl, GL2.GL_TEXTURE_WRAP_T, GL2.GL_REPEAT);
brickwall.setTexParameteri(gl, GL2.GL_TEXTURE_MAG_FILTER,GL2.GL_NEAREST);
brickwall.setTexParameteri(gl, GL2.GL_TEXTURE_MIN_FILTER,GL2.GL_LINEAR);
gl.glGenerateMipmap(GL2.GL_TEXTURE_2D);

brickwall.enable(gl);
brickwall.bind(gl);
//...
brickwall.disable(gl);

私がグーグルで調べたところ、これはミップマップが解決する問題のようです。しかし、私の質問は、これをどのように行うのかということです。2サイズの画像のさまざまなパワーすべてのパラメータを作成、ロード、設定する必要がありますか?シーンのズームや移動がちらついたり、きらめいたりしないミップマップを使用してJOGL2テクスチャをロードおよび表示する例を教えてもらえますか?

4

1 に答える 1

2

glGenerateMipmapを使用してミップマップチェーンを生成していますが、適切なMINフィルターを設定していません。

brickwall.setTexParameteri(gl, GL2.GL_TEXTURE_MIN_FILTER,GL2.GL_LINEAR_MIPMAP_LINEAR);

* MIPMAP *フィルターはミップマップを使用しますが、他のテクスチャフィルターは使用しません。

于 2011-05-08T18:46:54.507 に答える