Is developing in a .NET language a good decision?

Started by
9 comments, last by Ahnfelt 16 years, 12 months ago
Hello, fellows. I want to use Microsoft Visual Studio .NET for game development. But I know that it uses a Common Language Runtime to interpret the source code. So, does anybody know whether it decreases somehow the final application performance? Or should I use any other IDE that's not .NET (like Visual Studio 6, for example)?
Advertisement
Quote:
I want to use Microsoft Visual Studio .NET for game development. But I know that it uses a Common Language Runtime

No, it doesn't. ".NET" here is just part of the product name, you can write regular old C++ that is compiled to native code with VS .NET (which is now more widely known as VS 2003, to prevent this kind of confusion).

Do not use VC++6 under any circumstances. It doesn't even have a real C++ compiler.
I'd recommend it. I find that I can get things done orders of magnitude faster than when writing C++. The performance hit seems negligable and wouldn't really worry about it. If you want to create a few simple games to start off, there's no reason I could think of for not using C#. Plus, if you want to use C++ later on, there's very little learning curve when switching from C#.
Quit screwin' around! - Brock Samson
Have a look at XNA development with C#. You can develop games for both Windows and your Xbox.
Assuming you are using the C++ compiler:

You shouldn't have any problem doing what you are doing with VS .Net. I have used that version and have been successful creating a Native Mode application without any dependencies on .Net. The .Net really comes into play if you are specifically compiling the app as a .net app.

What language are you trying to target?

Edmund Weese7-bit Games
C# etc. isn't interpreted, I wonder where you got that (mis)information. It is just compiled on demand ("just in time"), that is, when you want to run the program.

Wether you'll get a performance hit from the various helpful (mostly optional) tools such as garbage collection is not clear, and if you ask, you'll start a long thread that will not come any closer to consensus than any of the thousand other threads there are about it.

In the end, it's very unlikely that you'll ever really need those last 10 fps you may be able to squeeze out of C++ if you've got many years of experience (and lots of free time). Unless you're actively developping an AAA title, you'll be better off with C#, Java or any other modern, managed language.
First of all, i'm grateful to you for your soon replies.

I already have experience in Visual Basic, Delphi and have dealt with Java a somewhat. But, i know that the first 2 aren't the best options for game programming (though, they support game development too), and Java (regardless its power and portability) its speed is not one of the greatest.

Seeking an optimal performance for my first Tetris-like game makes even me laugh. However, taking advantage of my programming knowledge and background, i'd like to start learning C++. Because up until now, it has been used the most by proffesional game developers and it's also taught in game programming schools. So, I deduce, in simple words, it is the best one.

But i haven't decided yet. As a successor, i suppose that C# must be an "improved" C family language. So, now i'm doubting between C++ and C#.
Quote:Original post by Konstantin Vikhrov
First of all, i'm grateful to you for your soon replies.

I already have experience in Visual Basic, Delphi and have dealt with Java a somewhat. But, i know that the first 2 aren't the best options for game programming (though, they support game development too), and Java (regardless its power and portability) its speed is not one of the greatest.

Seeking an optimal performance for my first Tetris-like game makes even me laugh. However, taking advantage of my programming knowledge and background, i'd like to start learning C++. Because up until now, it has been used the most by proffesional game developers and it's also taught in game programming schools. So, I deduce, in simple words, it is the best one.

But i haven't decided yet. As a successor, i suppose that C# must be an "improved" C family language. So, now i'm doubting between C++ and C#.


I'd be you, I'd give a try to C#. It's a good, simple but powerful language, and the XNA platform is quite good.

C++ is... well, C++.
Being a newbie to game programming myself (first post here, hello all), I'm also going with C#.
I already made some simple things like sokoban clones, 2d scroller using the system.drawing class, but now I'm moving to XNA, and am eagerly awaiting "Professional XNA Game Programming" to be released here in Belgium.

Why I'm choosing C# is simply because I'm feeling comfortable with it so I can fully concentrate on the matter of games itself without having to deal too much with language difficulties and details at the same time. By the time C# becomes the limiting factor of my game programming, I'll probably understand enough about making games that going to C++ will be easier than it is now (it that ever happens).

Quote:Original post by Konstantin Vikhrov
I already have experience in Visual Basic, Delphi and have dealt with Java a somewhat. But, i know that the first 2 aren't the best options for game programming...

Just a thought, perhaps you can ease the transition to the new language by trying to build your Tetris-clone in the language you're most comfortable with (either VB or Delphi) and then doing the exact same thing in C++ or C# (whichever you decide). Trying to learn a programming language isn't exactly easy. Trying to write a game (even if you know the language) isn't easy. Trying to do both at the same time is masochistic!
Quit screwin' around! - Brock Samson

This topic is closed to new replies.

Advertisement