curious about c#

Started by
3 comments, last by dusty_one 16 years, 10 months ago
Lately I've been reading through C++ Primer 4th ed, and I love the detail the book goes into. I can't help but be curious about C# though. Its been playing in the back of my head, and then after reading the C# workshop thread my curiousity as hit a threshold that forces me to now start looking up tutorials. Now what I'm most interested in is developing my own hobbie games and hopefully be able to sell them, or at least work for a small-mid game studio. Anyone know if any companies are now using C# to make their games? Is C# even suited for creating games like everquest? I've got ideas for games that have been in the back of my head since I got my NES in 4th grade, and a dream of making my own mmo (got the idea when I first played trade wars and tournament of the red dragon, then the dikumud games). I've got a host of small projects to start with first, so no need to tell me that an mmo is light years away, blah blah blah. I'm not delusional :) . In either case, with all that put forth, is it worth it to dive into C#, or stick with C++ ?
Advertisement
Quote:Original post by dusty_one
Now what I'm most interested in is developing my own hobbie games and hopefully be able to sell them, or at least work for a small-mid game studio.


Quote:Original post by dusty_one
Is C# even suited for creating games like everquest?


I know you said that we don't need to tell you about MMOs, but these two sentences just don't go well together. Hobby games and small-mid game studios aren't suited for games like Everquest so it shouldn't really matter if the language you are using is suited either.

Now to your question about game companies using C#, then yes there are some game companies using C#. ZBuffer has a slightly old list of games using MDX. You will find that some of these are commercial games.

Quote:Original post by dusty_one
In either case, with all that put forth, is it worth it to dive into C#, or stick with C++ ?

It really depends on how much C++ you already know. If you have been learning it for >2 years, then you should probably continue with C++ and pickup C# as well, you can never know too many languages and there are certain advantages to this which I will come to in a moment.
If you've just started with C++, less than a year, picking up C# is a very good idea in my opinion, although you should probably continue with C++ as well. Learning a higher-level language will give you better ideas on how to write good code, and these can be applied in C++ as well. Many programming concepts can be applied in C++ but are not core concepts, in lack of better wording. You need to first know of them in order to seek them out and then eventually use them, they are not handed to you on a plate, like loops and ifs are. Knowing higher-level languages will introduce you to these concepts so that you may try to find their equivalence in other programming language too. This is extremely important if you are to become a good programmer in my opinion.

Good luck!
Best regards, Omid
Quote:
Anyone know if any companies are now using C# to make their games?

Very few. However, that has little to do with whether or not C# is capable of producing games (it most certainly is, like all languages, if the programmer is competent enough). The reasons that C# has not yet gained widespread use for primary development in the professional games industry have to do with other concerns, concerns which you, as an amateur, have no need to bother yourself with.

Quote:
Is C# even suited for creating games like everquest?

Yes.

Quote:
In either case, with all that put forth, is it worth it to dive into C#, or stick with C++ ?

I'll basically echo Omid's thoughts here. You can never know too many languages. I think C# is a wonderful, powerful language; I switched to C# for 95% of my personal development work about a year ago and I have not looked back.

XNA gives people in your position a very nice starting point.
Dusty,

Yes, C# is well suited for game development. Microsoft's effort at pushing the XNA Framework, as well as the ability to develop XBox360 games using C# suggests it has a bright future.

No, most game companies aren't currently using C# - yet. And those that are, are mostly using it for tool development rather than production game code. Will this change? Most definitely.

The game industry in general is a slow churning machine and reluctant to change. 15 years after the development of C++, game companies were still using C (and some assembly as well). Why? Because "the overhead of an object oriented language costs too much in performance."

This mentality has clearly changed, partially due to advances in hardware, partially do to improvements in C++ compilers, and partially because the industry as a whole started to realize that the benefits in turnaround time when developing using an object oriented environment, far outweighed the performance costs to the production executable.

C# will be much the same. The language is still very young, with 2.0 only having been introduced in late 2005. However, it's maturing quickly. It's highly efficient management of memory, the ease of use of the .NET Framework Libraries, the XNA Game Studio, Reflection and the ability to compile dynamically generated code at run-time and then run it (perfect for a scripting engine), combined with its tight integration with XML and serialization makes it an ideal framework for both client and server code in production games.

And even with all of the above aside, C++ and C# are so closely related in syntax that knowing one means learning the other is just a few weeks of learning anyways. Why not learn both?

And as with jpetrie, I began using C# 2 years ago after I'd been programming in C/C++ for about 10 years. Now I'm reluctant to have to go back to C++ and use C# whenever possible. I think you'll find you're much the same.

Cheers!
Jeromy Walsh
Sr. Tools & Engine Programmer | Software Engineer
Microsoft Windows Phone Team
Chronicles of Elyria (An In-development MMORPG)
GameDevelopedia.com - Blog & Tutorials
GDNet Mentoring: XNA Workshop | C# Workshop | C++ Workshop
"The question is not how far, the question is do you possess the constitution, the depth of faith, to go as far as is needed?" - Il Duche, Boondock Saints
Thank you everyone for your replies. Jwalsh I was hoping for your input aswell. I follow your journal with great interest and I can't wait for the c# workshop.
All of the responces cleared up alot of misconceptions that I had. When I first started studying c# I kept reading that it was mostly suited for web apps, and I really don't have any interest in them so it turned me off to the language.

This topic is closed to new replies.

Advertisement