2017-05-14 4 views
0

私はAndroid上でのOpenGL ES 3を使用している、と私がsRGBテクスチャをロードし、そのためのミップマップを生成しようとしています。私は内部フォーマットのためにGL_SRGB8を使用しています、glGenerateMipmap(GL_TEXTURE_2D)でミップマップを生成し、GL_LINEAR_MIPMAP_LINEARを使用してください。私はそれを使用しようとすると、黒いテクスチャを描きます。glGenerateMipmap黒の質感の3つの結果

私が代わりにGL_RGB8を使用している場合は、それが動作します。ミップマップを使わないと、GL_SRGB8が動作します。デスクトップのOpenGLでも同じコードを実行しましたが、これも機能します。これをOpenGL ESで動作させる方法はありますか? GPU上のミップマップの生成

答えて

0

両方濾過(ダウンサンプルを作成するため)及びレンダリング(出力画像を書き込むために)となるようにカラーフォーマットを必要とします。 sRGBは、仕様でレンダリング可能なフォーマットであることが保証されていません(GLES 3.2仕様の表8.10)。

あなたはCPUにミップマップを生成し、それらを手動でアップロードする必要があります。

関連する問題