桌面窗口管理器是什么呢?

它是Vista中的一个新组件:Desktop Window Manager(DWM)。它建立在WPF核心图形层组件基础之上。还记得我在第一个Post中所提到的Composition引擎吗?DWM的桌面合成就是建立在这个Composition引擎基础之上的新特征。它的出现几乎改变了Vista中应用程序的屏幕象素显示方式。

通过DWM的桌面合成,应用程序的显示不再是直接画到屏幕上,而是一个显示内存中的一个离屏Surface。然后由DWM将这些Surface合成显示到屏幕之上。

从用户体验的角度看,启用DWM后,提供的视觉效果有毛玻璃框架、3D窗口变换动画、窗口翻转和高分辨率支持。其中最明显的特征有:任务栏窗口的实时缩略图;Alt-Tab和Win-Tab组合键所看到的效果。 

Windows Vista桌面窗口管理器功能详解

Windows Vista桌面窗口管理器功能详解

桌面合成(Composition)

在Vista之前,Windows要求应用程序画自己的可见区域,它们可以直接画在显卡的视频缓冲里面。而在Vista,系统要求应用程序把整个表面画到离屏Surface当中。然后由DWM控制所有的离屏表面,并把它们合成到一起显示到真正的屏幕上。

现在计算机的图形芯片飞速发展,具有了很强的处理能力,现在它们主要用于游戏等方面。DWM的主要目标就是利用图形芯片的处理能力也给非游戏用户带来尽可能好的体验。因此DWM是基于DirectX,特别是Direct3D。更准备是说,DWM是直接建立在一个称为Milcore的层次之上。Milcore又建立在DirectX之上。最终是用Direct3D纹理来表示窗口内容和窗口框架。DWM/Milcore调用适当的Direct3D函数把所有的Direct3D纹理合成为最终的桌面。Vista桌面就可以理解为一个全屏幕的Direct3D应用程序。

从窗口系统的显示角度上看,这可以给我们带来很大的方便,帮助实现更高质量的视觉效果,比如:

1、访问窗口:现在所有的窗口都显示到离屏表面,这些离屏表面就可以用于其他的地方了。例如前面提到的Alt-Tab组合键所看到的缩略图,用户还可以据此实现一些其他需求。

2、窗口操作中不再涉及到背景应用程序:在Vista之前,如果隐藏的窗口变得重新可见,这部分区域只有在应用程序醒来后并响应了WM_PAINT才能被重画,这就引起了很多难看的效果。在Vista中,背景窗口不会收到WM_PAINT,也不会被要求提交,因为他们的内容已经在离屏表面当中了,可以被直接拿来进行重新合成。

3、更眩的用户体验,这个不用多说了,大家可以有自己的体验感受。

4、高分辨率支持:大部分应用程序不知道它所运行的显示器的分辨率。随着高分辨率显示器的普及,这会使应用程序在物理空间看起来越来越小,效果很差。由于DWM访问了窗口的离屏表面,其特殊的位置可以调整应用程序的显示分辨率,使它在高分辨率显示器上有更好的效果。

华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。