Sign in to follow this  

Is developing in a .NET language a good decision?

This topic is 3869 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

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)?

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
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#.

Share this post


Link to post
Share on other sites
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?

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
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#.

Share this post


Link to post
Share on other sites
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++.

Share this post


Link to post
Share on other sites
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).

Share this post


Link to post
Share on other sites
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!

Share this post


Link to post
Share on other sites
Oh, I wouldn't say so. I learn absolutely best when I need the technology (ie. a language) for something else (ie. a game). I know a lot of people that feel likewise.

Besides, switching to a new language is only hard if it has new concepts. Ie. switching from procedural to object oriented to functional to logical is hard, while merely learning a new syntax or a slightly different module system is not so hard. Since at least Delphi (I wouldn't know about VB) is object oriented, it shouldn't be too much trouble; in fact, the designer behind both Delphi and C# is Anders Hejlsberg.

Share this post


Link to post
Share on other sites

This topic is 3869 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this