0

関連資料:http ://www.opengl.org/wiki/Image_Format#Color_formats

正規化されたテクスチャ形式(GL_RGB8_SNORMやGL_RGB16など)は、浮動小数点範囲にマップされる整数を格納します(符号付き正規化の場合は-[1.0,1.0]、符号なし正規化の場合は[0.0,1.0])。

GL_RGB32、GL_RGBA_SNORMなどのトークンを使用するのには非常に正当な理由があるように思われます。精度はGL_RGB32Fなどの専用浮動小数点形式を上回ります。また、完全を期すために、なぜ32ではなく8ビットと16ビットのフォーマットを正規化したのでしょうか。

では、なぜGL_RGB32、GL_RGBA32が存在しないのでしょうか。

4

1 に答える 1

0

GL_RGB32、GL_RGBA_SNORMなどのトークンを使用するのには非常に正当な理由があるように思われます。精度はGL_RGB32Fなどの専用浮動小数点形式を上回ります。

あなたはあなた自身の質問に答えたところです。許可するということは、単精度浮動小数点数への変換でその余分な精度の8ビットを破棄するか、それらの32ビット正規化整数を倍精度浮動小数点数に変換することを意味するためです

また、GL 4.2でさえ、倍精度浮動小数点テクスチャを使用できないことに気付くでしょう。

現在のハードウェアでは役に立たないため、許可されていません。現在のハードウェアは、テクスチャから倍精度値をフェッチすることを意味するため、サポートしていません。

于 2012-08-03T22:13:04.303 に答える