桌面窗口管理器:修订间差异

跳转到导航 跳转到搜索
删除158字节 、​ 2025 年 4 月 20 日 (星期日)
第 13 行: 第 13 行:
在整个 Milestone 5 中,已知 Lab06 版本(例如在 WinHEC 2003 上使用 DCE 演示的 [[Windows Longhorn Build 4015.0.Lab06_n.030403-1706|Build 4015]])和 [[Windows Longhorn Build 4018.0.Lab06_n.030417-1721|Build 4018]] 具有额外的DCE效果,包括图形动画和拖动时摆动的窗口。尽管有这些动画,其他实验室只使用窗口透明度效果。同样在 Milestone 5 期间,桌面合成引擎进行了重新设计,以启用半透明的 DCE 窗口框架。但是,Build 4029 到 4033 在 DCE 中存在 bug,导致它无法启用 Direct3D 着色器(DCE 窗口框架所依赖)。此 bug 直到 [[Windows Longhorn Build 4038.0.main.030813-1852|Build 4038]] 才得到修复,这是首个具有有效渲染 DCE 窗口框架的 M6 版本。
在整个 Milestone 5 中,已知 Lab06 版本(例如在 WinHEC 2003 上使用 DCE 演示的 [[Windows Longhorn Build 4015.0.Lab06_n.030403-1706|Build 4015]])和 [[Windows Longhorn Build 4018.0.Lab06_n.030417-1721|Build 4018]] 具有额外的DCE效果,包括图形动画和拖动时摆动的窗口。尽管有这些动画,其他实验室只使用窗口透明度效果。同样在 Milestone 5 期间,桌面合成引擎进行了重新设计,以启用半透明的 DCE 窗口框架。但是,Build 4029 到 4033 在 DCE 中存在 bug,导致它无法启用 Direct3D 着色器(DCE 窗口框架所依赖)。此 bug 直到 [[Windows Longhorn Build 4038.0.main.030813-1852|Build 4038]] 才得到修复,这是首个具有有效渲染 DCE 窗口框架的 M6 版本。


===Desktop Window Manager===
=== 桌面窗口管理器 ===
The original composition engine would continue to be developed throughout Milestone 7 of the Longhorn project. It would be heavily rewritten for [[Windows Longhorn build 4088|build 4088]] to [[Windows Longhorn build 4093|build 4093]] in .NET managed code that was intended to run as a service, which also allowed software rendering to run on the standard VGA driver.
最初的合成引擎在 Longhorn 项目的 Milestone 7 中继续开发。对于 [[Windows Longhorn Build 4088.0.Lab02_N.040706-1655|Build 4088]] [[Windows Longhorn Build 4093|Build 4093]],它将会使用旨在作为服务运行的 .NET 托管代码大量重写,这也允许软件渲染在标准 VGA 驱动程序上运行。


After development of Longhorn was reset, the Desktop Window Manager utilized from the pre-reset builds was scrapped for a new, stabler native implementation that could now truly render the Aero theme as intended. Support for allowing Desktop Window Manager to run on XDDM drivers was dropped early in development, with builds starting from [[Windows Vista build 5098|build 5098]] only allowing DWM to run if a supported LDDM/WDDM driver was installed.
在重置 Longhorn 的开发后,从重置前版本中使用的桌面窗口管理器被废弃,取而代之的是新的、更稳定的本机实现,现在可以真正按预期呈现 Aero 主题。在开发早期就放弃了对允许桌面窗口管理器在 XDDM 驱动程序上运行的支持,从 [[Windows Vista Build 5098.0.winmain_beta1.050628-1740|Build 5098]] 开始的版本只允许在安装了支持的 LDDM/WDDM 驱动程序时运行 DWM。


DWM requires Direct3D 9Ex and Pixel Shader 2.0 to function. GDI-based applications render to textures using the Canonical Display Driver, while WPF-based applications, which rendered using the same unmanaged compositor, could actually become part of the composition tree, until an update which left the .NET Framework out of sync with Windows Vista. Direct3D applications render to surfaces which are the textures composited by DWM.
DWM 需要 Direct3D 9Ex Pixel Shader 2.0 才能运行。基于 GDI 的应用程序使用 Canonical 显示驱动程序渲染到纹理,而基于 WPF 的应用程序(使用相同的非托管合成器渲染)实际上可以成为合成树的一部分,直到更新使 .NET Framework Windows Vista 不同步。Direct3D 应用程序呈现到由 DWM 合成的纹理的图面。


Starting in Windows 7, DWM uses Direct3D 10.1 if available for improved performance, and with WDDM 1.1 has support for some GDI hardware acceleration again. By [[Windows 8]], Desktop Window Manager now runs at all times for the [[Start menu|Start Screen]] interface, with it being impossible to disable under normal circumstances. Additionally, the effects of Desktop Window Manager were able to be software-rendered starting with [[Windows 8 build 7880|build 7880]] instead of relying on hardware acceleration.
Windows 7 开始,DWM 使用 Direct3D 10.1(如果可用)来提高性能,且 WDDM 1.1 再次支持某些 GDI 硬件加速。在 [[Windows 8]] 中,桌面窗口管理器现在始终为[[“开始”屏幕]]界面运行,在正常情况下无法禁用。此外,桌面窗口管理器的效果能够从 [[Windows 8 Build 7880.0.fbl_grfx_dev1.101110-1700|Build 7880]] 开始通过软件呈现,而非依赖硬件加速。


==Enabling the Desktop Compositing Engine==
==Enabling the Desktop Compositing Engine==

导航菜单