[.net] MDX10 with C#,C++.net

Started by
4 comments, last by daviangel 16 years, 11 months ago
Hello! I have a few questions.... 1) Is there a DX10 wrapper for .NET (C#) 2) Should I learn C# or C++.NET? People say that C# is better because you write much smaller code and its safer (garbage collection etc.), and what's with C++.NET what are his advantages and can i write DX10 games with it or only DX9.0c? are those two good for writing games like Gothic3,RPGs of some FPS??? THX to anyone who answers my questions...
Advertisement
Can't help you with the first one I'm afraid.

I assume by C++.NET you mean C++/CLI. C# has a much cleaner syntax than C++/CLI, which is (for lack of a better word) rather ugly. C++/CLI's big advantage is that it makes mixing old regular C++ code with managed code easy; so if you have an old C++ library you want to quickly port to C# it would be ideal to use C++/CLI to do so. However, for writing fresh applications that take full advantage of the .NET framework's class library, stick with C#.

Both languages are completely competent for writing games with.

[Website] [+++ Divide By Cucumber Error. Please Reinstall Universe And Reboot +++]

Do you have a DX10 card? Are you writing games for people that will have DX10 cards? If no to either of these the first question is moot. You might take a look at the XNA Framework using C# and see what it's capable of:

XNA Racing Game

XNA Dungeon Quest game (done in 4 days at the GDC)

Former Microsoft XNA and Xbox MVP | Check out my blog for random ramblings on game development

Quote:
Is there a DX10 wrapper for .NET (C#)

Sort of. There's nothing official from Microsoft, but there is a managed layer for D3D10 available here, by Demirug. Promit also has a "SlimDX" project that replaces MDX 1.1 with a more streamlined implementation; this may or may not grow to include D3D10 functionality (discussion here). Both APIs are very young.

Quote:
Should I learn C# or C++.NET?

There is no such thing as C++.NET. There was "Managed C++" (in VS 2003) a collection of Microsoft extensions to the C++ language that enabled it to run in a managed environment; this has been deprecated in favor of C++/CLI, a standardized language that integrates those extensions to form, essentially, a language of which C++ is a subset that can be used to write managed code.

I would recommend you learn C#. C++/CLI is helpful for writing wrappers and interop code, and it's nicer than Managed C++ was, but it's still pretty ugly and of relatively constrained utility.

There is no point to worrying about D3D10 capability unless you have access to D3D10 hardware and Vista and will developing full-time on that platform. Chances are, if you have to ask these sorts of questions, you're quite far away from the point in your career as a developer where the choice between D3D9 and D3D10 will have an impact on the quality of your projects. Nor is there any reason to think that learning D3D9 (the "older") API will in any way hamper your development as a programmer; learning new APIs isn't that difficult and is pretty much an integral part of being a professional. You have to constantly work and train yourself to stay relevant in such a quick industry.
And keep in mind that Vista does support DirectX 9. Most home computers will still have XP on it for at least another year or two, and it may be longer before the "average" home home computer has DirectX 10 hardware. So you'll lose nothing by using DirectX 9: your stuff will run on both XP and vista. Sounds pretty win-win to me.

Besides, from what I've read it'll take a significant degree of expertise to properly utilize the features that set DirectX 10 apart from 9.
Quote:Original post by gharen2
And keep in mind that Vista does support DirectX 9. Most home computers will still have XP on it for at least another year or two, and it may be longer before the "average" home home computer has DirectX 10 hardware. So you'll lose nothing by using DirectX 9: your stuff will run on both XP and vista. Sounds pretty win-win to me.

Besides, from what I've read it'll take a significant degree of expertise to properly utilize the features that set DirectX 10 apart from 9.

Yup! If the hardware makers namely Nvidia+lack of sli with DX10(ATI isn't even in the game yet) and software makers MS for example and it's lack of DX10 in FSX are having such a hardtime getting DX10 games out I can only image it'd be doubly hard for any hobby developer!
[size="2"]Don't talk about writing games, don't write design docs, don't spend your time on web boards. Sit in your house write 20 games when you complete them you will either want to do it the rest of your life or not * Andre Lamothe

This topic is closed to new replies.

Advertisement