【发布时间】:2009-08-27 01:22:29
【问题描述】:
在一个充满来自 D3DX 的 Sprite 对象的 Direct3D 应用程序中,我希望能够全局调整亮度和对比度。如果可能的话,对比很重要。
我在这里看到了这个关于 OpenGL 的问题:Tweak the brightness/gamma of the whole scene in OpenGL
但这并不能满足我在 DirectX 环境中的需要。我知道这也是我可以用像素着色器做的事情,但这似乎就像用火箭筒射击苍蝇一样,我担心与旧 GPU 的向后兼容性,这些 GPU 必须在软件中执行任何着色器。看起来这应该是可能的,我记得在着色器时代之前,甚至像原版半条命这样的更老的游戏也有这样的设置。
编辑:另外,请注意,这不是一个全屏应用程序,所以这需要是只影响一个 Direct3D 设备的东西,而不是整个显示器的全局设置。
【问题讨论】:
-
这不会解决你的问题,但我认为在图像处理上下文中使用 gamma 一词的每个人都应该阅读:alvyray.com/Memos/9_gamma.pdf