Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/156.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 分层窗口、UpdateLayeredWindow和性能_C++_Mfc_Winapi - Fatal编程技术网

C++ 分层窗口、UpdateLayeredWindow和性能

C++ 分层窗口、UpdateLayeredWindow和性能,c++,mfc,winapi,C++,Mfc,Winapi,我使用的是分层窗口,它们似乎对性能造成了相当大的损失(我的一个核心被完全使用)。有没有办法调整分层窗口的性能?Direct2D是可行的替代方案吗?(我的分层窗口需要每像素alpha) 谢谢, H在Vista和更高版本(在Aero下)上,它不应该对性能有太大影响,因为操作系统无论如何都使用合成,并且为此进行了优化(这就是为什么Microsoft建议在运行Vista时使用图形卡)。在XP上,它肯定会减慢速度,因为它在设计时没有考虑到成熟的alpha合成 通过每像素alpha,您的意思是希望窗口的某些

我使用的是分层窗口,它们似乎对性能造成了相当大的损失(我的一个核心被完全使用)。有没有办法调整分层窗口的性能?Direct2D是可行的替代方案吗?(我的分层窗口需要每像素alpha)

谢谢, H

在Vista和更高版本(在Aero下)上,它不应该对性能有太大影响,因为操作系统无论如何都使用合成,并且为此进行了优化(这就是为什么Microsoft建议在运行Vista时使用图形卡)。在XP上,它肯定会减慢速度,因为它在设计时没有考虑到成熟的alpha合成

通过每像素alpha,您的意思是希望窗口的某些部分是透明的吗?如果是,DirectX根本帮不上你的忙-DirectX只会在窗口背景上渲染透明图像,但不会使窗口本身透明。

在Vista和更高版本(在Aero下)上,它不会对性能产生太大影响,因为操作系统使用合成,并且为此进行了优化(这就是为什么微软推荐使用图形卡来运行Vista)。在XP上,它肯定会减慢速度,因为它在设计时没有考虑到全面的alpha合成


通过每像素alpha,您的意思是希望窗口的某些部分是透明的吗?如果是,DirectX根本帮不上您的忙-DirectX只会帮助将透明图像渲染到窗口的背景上,但不会使窗口本身透明。

否,则相反。如果没有Aero,则由视频硬件完成。Very高效,不需要CPU周期。你是什么意思?Aero不是Vista以后新合成引擎的名称吗?不,相反。没有Aero,它是由视频硬件完成的。非常高效,不需要CPU周期。你是什么意思?Aero不是Vista以后新合成引擎的名称吗?