Archived

This topic is now archived and is closed to further replies.

Sagar_Indurkhya

Managed vs. Unmanaged Directx

Recommended Posts

I just wanted to see if anyone has any comments to make on this subject, particularily speed, productivity, interopterbility with other languages, and anything else. I haven''t tried Managed, and am trying to figure out if it is worth my time. Thanks Sagar Indurkhya

Share this post


Link to post
Share on other sites
Speed - As of right now (with the current runtime release), managed dx is about 97-99% as fast as un-managed. It''s only getting faster, and with the eventual migration to Longhorn, any speed gap will be eliminated.

Productivity - Combining Managed DX with C# can prove to be extremely productive, especially in the area of GUI-based tools and editors. However, for the main engine, all companies are sticking with C++/Unmanaged DX for now.

Gripes - The documentation for managed DX is horrendous right now. Look for the next summer update to really add a lot of quality documentation.

For some great info, check out this edition of the .NET Show.


Dustin Franklin
Mircrosoft DirectX MVP

Share this post


Link to post
Share on other sites
It is not that the math scares me. That is what i use directx for. Graphical display oh highlevel mathematics, physics, and ai. I have two stages. A simulation program, that calcs all the variables beforehand. And a Rendering program, that reads ouput file like a movie. the sim is what concerns me. Speed isn''t that crucial, cause it is done before hand. Any comments?

Share this post


Link to post
Share on other sites
Do you think it''s possible to start another forum for C# and MDX? For example, I would like to see the two separated on the main page like this:

DirectX Unmanaged
DirectX Managed

I just find the current mixture a little tiresome. It would be nice to jump into a dedicated forum on C#/MDX.

While I''m dreaming, what about an UnrealScript forum as well?

Share this post


Link to post
Share on other sites
I don''t think that is a good idea. First, you can program in Managed DX in a lot more languages than C#. Second, the concepts in both Managed and Unmanaged are the same, it''s only a bit of different syntax.

Far more helpful would be useful thread titles, but that depends on users.

Stay Casual,

Ken
Drunken Hyena

Share this post


Link to post
Share on other sites
One of the problems I have been thinking of about the Managed Directx is its performance with a complete game engine.Those people who made comparisons between managed and umamanged Directx made these comparisons through small demos, not a whole engine.
The garbage collection of the .NET is a thread which is responsible for memory managment.As the amount of used memory increases(which is the case for big games,not small demos),the periority of this thread incresases, so this may decrease the performance.
another thing is the JIT (just in time)compilation.for a big game with complex code, this JIT compilation can be slow for the first time you invoke the functions and the classes, so the loading of the game may be very much slower.
Of course next generation of hardware may be faster so that these things may not cause a big performance hit.
If some one know a link or an article talking about the performance of managed directx in an engine, then please post it here.

Mohammad Adel
.NET MCP
Optimize

"If A is a success in life, then A equals X plus Y plus Z. Work is X; Y is play; and Z is keeping your mouth shut". Einstien

Share this post


Link to post
Share on other sites