#16 – Use Direct3D For Hard-Core 3D Applications

Although WPF supports drawing 3D objects, Direct3D should still be used where an application needs 3D features not provided by WPF, or needs maximum performance in drawing 3D objects.

WPF 4.0 is based on DirectX 9, so it does not support Direct3D 10 or Direct3D 11.


#1 – What is WPF?

WPF (Windows Presentation Foundation) is a .NET class library that allows building graphically rich client programs that run on Windows.  WPF applications can either run as separate windowed programs or can run inside a web browser.

WPF renders graphical elements using 3D vector-based graphics, independent of screen resolution.  WPF uses DirectX for rendering graphical elements, which allows it to take advantage of hardware acceleration.  If hardware acceleration is not available, WPF renders elements using software, rather than hardware.

WPF replaces Windows Forms as a programming environment for creating client applications on Windows.