是否可以在Windows中创建全屏颜色叠加效果?

时间:2020-03-06 14:35:00  来源:igfitidea点击:

我记得我以前的Radeon图形驱动程序有许多叠加效果或者彩色滤光片(无论它们叫​​什么),它们会以例如棕褐色调或者底色。我当前的NVIDIA卡似乎没有这种功能,所以我想知道是否可以为Vista创建自己的显卡。

我不知道是否有某种方法可以挂接到窗口的渲染引擎,或者挂接到NVIDIA的驱动程序来实现这种效果。仅仅能够修改颜色会很酷,但根据屏幕坐标修改颜色或者执行其他更多功能会更好。一个示例就是颜色从屏幕中心开始越长的时间就变得越不饱和。

我没有特定的使用场景,因此我无法提供更多信息。基本上,我只是想知道在这方面是否有什么需要处理的。

解决方案

我们可以在所有内容之上都放置一个全屏分层窗口,并通过单击事件进行传递。但是,与在WDM渲染器的DirectX上下文中建立钩子相比,这既麻烦又缓慢。但是,到目前为止,这是不可能的,因为Microsoft没有为此提供任何公共接口。

尽管Flip 3D实用程序可以执行此操作,但是即使程序中没有该功能,它也位于WDM DLL中,由顺序调用(显然,隐藏/未记录的功能,因为它没有任何其他用途)。因此,几乎没有另一个死角了,从这里我就不费心去深入研究了。

在这方面,我们能做的最好的就是等待某种官方API。