2

現在、OpenGL-UIシステムを拡張しています。このため、フォント部分を書き直し、ミップマップを使用すると表示される問題に直面しました。画像が何千もの単語を言っているという事実のために:

フォントの問題

フォントの透明度がフェードアウトしていることがわかるように(テキストは8回表示されるはずです!)、これはLUMINANCE_ALPHA-texturesを使用している場合にのみ発生します。テクスチャをロードするコードは基本的に同じですが、使用される形式が異なります。これがLUMINANCE_ALPHA使用するものです。

TexImageInternalFormat.LUMINANCE_ALPHA、TexImageFormat.LUMINANCE_ALPHA、TexImagePixelType.UNSIGNED_BYTE

線形フィルタリングが有効になり、クランプがに設定されGL_CLAMP_TO_EDGEます。私にとってはミップマップの問題のように見えますが、さまざまな設定を試しましたが、機能していません。すでに述べたように、RGBAテクスチャは問題なく機能しています。このアプリケーションはiOSでも実行されるため、LUMINANCE_ALPHA-textureを使用すると、RGBAと比較してRAMを大幅に節約できます。

何が原因で、どうすれば解決できますか?

4

1 に答える 1

0

結局のところ、ImageFormat設定が間違っていました。

LA8 = new ImageFormat("LA8", TexImageInternalFormat.LUMINANCE_ALPHA, TexImageFormat.LUMINANCE_ALPHA, TexImagePixelType.UNSIGNED_BYTE, 4);

最後の数値は、この形式のピクセルあたりのバイト数を示し、の場合は2である必要がありLUMINANCE_ALPHAます。PVRリーダーは、画像データの欠落について文句を言わず、例外はスローされていません。4を2に変更すると、問題が解決します。

于 2013-01-18T19:12:58.263 に答える