Project Description

SlimDXControl is a WPF control that wraps the complexity of managing a D3DImage for you. You just have to implement the actual DirectX rendering pieces you care about -- no messing about with device management or IsFrontBufferAvailableChanged or window resizing events.

D3DImage is a Microsoft-supplied WPF control that allows to embed DirectX/D3D9 graphics into a WPF application. Unfortunately, but necessarily, to use D3DImage you need to write quite a bit of code on the application side that is completely foreign to many WPF developers. Yes, you can find several good articles on the web on how to use D3DImage – from which I have learned much, thank you! -- but they are largely blogs or sample code snippets. The project is designed to be a standalone control, supported and maintained, that you can directly use in your code today.

For documentation (usage and examples), go here.

Two caveats:

  • SlimDXControl uses SlimDX (www.slimdx.org) for all DirectX/D3D code.  Yes, it means you have another package dependency, but many of us find this a small price to pay in order to get a full C# API for DirectX.  You need to have the SlimDX DLLs available to you, as they are not included in this package.
  • SlimDXControl supports only DirectX/D3D10. It does not support DirectX 9. It also probably doesn't work under Windows XP, either.

This is an open source project, which means community involvement is critical.  If you find bugs or have suggested improvements, post a note on the Discussions page or email me directly.

See the History and Credits page for more details on the history of this project.

Last edited Feb 2, 2011 at 5:53 PM by mpg, version 9