Welcome to MSDN Blogs Sign in | Join | Help

HW Acceleration of Layered Windows for RTM

To obtain GPU-accelerated rendering, Windows Presentation Foundation (WPF) normally renders and presents graphical content through the DirectX pipeline – including the composition of the scene geometry and presentation of the results.  

Since before Windows XP, Win32 has supported an alternative window presentation mechanism called “layered windows”.  Layered windows allow for top-level window transparency effects when composed with the desktop; on WPF, this feature is available by setting Window.AllowsTransparency="true".  For example, to get a dropshadow effect, WPF composes Menus and Popups as layered windows.

There are two aspects to rendering: composing the scene, and presenting the surface. The Windows Vista D3D 9.0 graphics API provides support for rendering to surfaces with an alpha channel, but does not directly support a mechanism to present that surface to the desktop and retain alpha information. On Windows Vista, WPF renders via hardware accelerated DX, acquires the surface via IDirect3DSurface9::GetDC, and presents to the screen via GDI.

DirectX 9.0C, the version of DX available on Windows XP, does not support IDirect3DSurface9::GetDC of a surface with an alpha channel. As such, support for hardware accelerated rendering when using Window.AllowsTransparency="true" will not be available on Windows XP from the RC1 and RTM releases of WPF.

Published Monday, September 18, 2006 4:20 PM by seemar
Filed under:

Comments

# Hardware acceleration, layered windows, and XP

Tuesday, September 19, 2006 11:28 PM by Nick on Windows Presentation Foundation (Avalon)
Seema posted the final word on hardware acceleration for WPF layered windows. Long story short, layered...

# No HW Acceleration for Layered Windows on XP at laurenlavoie.com

# Layered windows...SW is sometimes faster than HW

Wednesday, October 25, 2006 8:48 PM by avalite

Previously, I had posted that Avalon’s layered windows on XP will be rendered via the software pipeline.

# transparent windows in WPF.. please make them small :)

Friday, December 08, 2006 7:26 PM by On .net client stuff..

A feature that the WPF team added late to WPF was the ability to allow transparent windows ( property

# DeveloperZen.com - WPF Layered Windows and Windows XP

# re: HW Acceleration of Layered Windows for RTM

Thursday, July 05, 2007 5:27 PM by seemar

UPDATE, there is an XP QFE to enable HW acceleration of layered windows:

http://blogs.msdn.com/seema/archive/2007/07/02/hw-acceleration-of-layered-windows-good-news.aspx

Enjoy!

Anonymous comments are disabled
 
Page view tracker