2

最近、このブログ投稿に出くわしました。ガンマ補正に関するさらに別の投稿で、 D3DPMISCCAPS_POSTBLENDSRGBCONVERT機能フラグの可用性を教えてくれました。

これにより、DirectX9でブレンドした後の適切なsRGB変換が可能になります。

私が理解していないのはそれをどうするかです。デバイスDirect3D9Exデバイスにこの機能を問い合わせることはできますが、サポートされている場合はどうすれば有効にできますか?ブレンディング前とブレンディング後の変換を選択できますか?はいの場合、どのように?

助けてくれてありがとう!

4

1 に答える 1

3

それはただ有益です。有効または無効にする方法はありません。ハードウェアがsRGB空間でブレンドする(POSTBLENDSRGBCONVERTがFALSE)か、線形空間でブレンドする(POSTBLENDSRGBCONVERTがTRUE)かのいずれかです。このキャップは、ハードウェアが何をするかを示しています。これにどのように対処するかは、アプリケーション固有になります。

古いハードウェアのみがsRGBでブレンドする必要があるため(DX10では線形ブレンドが必要です)、これらのパーツでガンマ補正レンダリングを無効にすることを選択できます。または、パフォーマンスを低下させたい場合は、非sRGBターゲットにブレンディングして(線形ブレンディングを取得するため)、そのターゲットからsRGBターゲットにコピーすることができます。

于 2011-06-27T18:55:05.000 に答える