Managed DirectX – It’s not just games..

So here at Microsoft, we have this thing called a ‘buddy program’ which you can read more about at  I’m signed up for this program and have a ‘buddy’ who works for a company (I assume in Germany) doing Managed DirectX work (amongst other things).  (Sorry, I only have time for one ISV buddy, so don’t go signing up hoping to get assigned me unfortunately).

Anyway, my buddy has sent me a link of some of the things they’ve been working on using MDX:

The site itself is in German, so if you don’t speak that, google’s translater seems to do an adequate job.  The third video is the most relevant to MDX.

Comments (11)

  1. weston133 says:

    Tom Miller,

    I bought one of your books "Beginning 3D Game Programming". However, I ame having an extreemely hard time figuring it out… I could not get the teapot to render, so I skiped that (which isn’t realy important to me). I have just finished adding the code on page 60 for the blockers game. You now say that I can render a design onto my screen, but it says there are 18 errors. Each error is the same "Expected class, delegate, enum, interface, or struct". I am very frusterated with this (as I can not figure out what I did rong), and have nowhere else to turn for help. Tom please help me out… Email me at


    -Weston Elliott

  2. Remigius says:

    In reply to the last comment, it may be that you are using a newer DirectX SDK version than the one supplied with the book. You can get the updated sources from the following link:

  3. Kasper says:

    In reply to the first comment:

    Alternativly use the DirectX SDK on the CD that came with you book. Its not the newest, but for learning MDX that hardly matters.

  4. Yes Tom, indeed: it is in germany 🙂


    thomas woelfer

  5. zzz says:

    I just found this game making oriented magazine and it had an basic article on starting a business around.

    Why I am I saying this?

    Well funnily it mentioned many times how a Slashdot of your new companys demo can really cost but give next to no money back… Getting your video linked at Toms blog is no different really? 🙂

  6. weston133 says:

    Tom Miller,

    Thank you for your advice, however, I do have another question now…

    Why do your sample games run so slowly? Even the small and simple ‘Blockers’ game runs with an unbelievable amount of lag. The computer I am running the sample games on should be more then fast enouph to run games of this size.

    -1000MHz (1GHz) pentium 3 processor

    -256MB of RAM

    -128MB radeon graphics card

    I have run some pretty big games on this computer, and they have all run very smoothly (with no lag at all)…

    -C&C Renegade

    -C&C Red Alert 2

    -The Sims (no expansion packs)

    -Roller Coaster Tycoon (#1)

    My computer can run all of these big games without any lag at all, yet it can’t even run your small and simple Blockers sample game. Why is this, and is there a way to fix it?

  7. Phil says:

    weston133, the only way to fix it is by reasoning that managed directx is a simplified API for you that will contain several drawbacks as you continue on with it. Personally, I suggest that you start learning C++ again because as a game programmer, your first focus should be on performance and what has been the standard for that area, not what Tom tries to market. When you can have one runtime with C++, you have pratically three with a running managed directx application as well as garbage collection to haunt you. Obviously, I switched back to C++, and my troubles are now over. Tom can write a full page on why I’m wrong as he usually does with other people, but at the end, what does he have to show for his wonderful claims?

  8. Phil says:

    Ever watch that movie Scoorged with Bill Murray? It happened to me. The dark side showed me some ‘what ifs’ and I came out more clear-headed now, so let me clear out this non-sense anger now above. Tom did a great job of developing a DirectX wrapper for .NET developers. Yes, it will be slower than the usual C++ game, so it’s up to you to develop smart algorithms and know C# inside-out to get the best of it. For the games I want to do, I’ve seen enough to make me realize C# is good enough. That’s all I need, and I was wrong for doubting it too quickly.

    I would like to see Tom to start showing what he claims, though. Four years after DX’s first release should be enough time to show some great stuff. But for now, I know I’ve seen enough projects to make me realize that C# is a great language for games. Most of what I said above is true about performance, but that goes with any language.

  9. Andreas says:

    I think this is the first time, I have read your blog here on MSDN (via link from the ZMan), and voila, the title of this post jumped right me. Why? The reason why I got recently interested in MDX is also not gaming related.

    Last year I started using C# to program two small tools for a research project that I’m involved in (I’m a graduate student). One uses data received at the serial port to control the mouse cursor, while the other converts and analyses log files of these data. I had thought of incorporating a vizualization part for the analysis tool as well and initially thought of using GDI+, but I soon decided to start learning MDX instead to be more flexible when presnting the results. Given my limited spare time I haven’t gotten very far yet, but I hope to put my ideas into working code soon.

    Anyways, I just thought I share my (planned) application of MDX in a non-gaming environment.