Game Development Stack Exchange is a question and answer site for professional and independent game developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a very old graphic card that only supports shader model 2, but I need shader model 3 or up for the app I am developing. I tried to use a reference device but it seems to run very slowly, then I found some samples in C++ that allows me to change to a WARP device and the performance is good. I am using C# and I don't know how to create such type of device. So the question is: how do I create a WARP device in C#? Thanks in advance.

share|improve this question
You might consider dropping $50 on a cheap video card made in the last decade. – David Lively Aug 11 '12 at 3:01
up vote 0 down vote accepted

Managed DirectX is a D3D9 based API. WARP is a D3D10+ only technology. You might want to look at other managed DirectX wrappers that support D3D10+, these should be able to use WARP.

share|improve this answer
Thanks for the reply, I'm using SlimDX and DX11, and I already found the way. Very helpful, thanks. – arex Jul 22 '12 at 4:21

Your only option if you want to stick with MDX use to use Windows 8.

In Windows 8 D3D9 falls back to WARP when there's no hardware device, so you can disable your graphics card in device manager to switch to WARP.

share|improve this answer
Good to know, but if I have to make a move, I prefer SlimDX to Windows 8 (I'm a W7 user). Thanks for the answer. – arex Jul 22 '12 at 4:31

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.