What language or book?

Posted on 2005-03-16
Medium Priority
Last Modified: 2013-12-26
I am a total newbie to game programming but am interested in the 3D games such as "SIMMS".  What language is the best to start in?  C++?  .Net?  I realize that "SIMMS" may be using more than one language but I would like to select a language that gives me the most flexibility.

With the language selected, what developer tool should I use?  MS Visual C++?   MS Visual Studio .Net?

What is a great book for someone who has never done this type of programming?

ANY comments are welcome.

Thank you,

Question by:HAMMER33333
  • 2
  • 2

Expert Comment

ID: 13596717
As far as your choice of language, it depends what you are confortable with.  You also have to weigh the fact that you're learning and don't want to be discouraged from a difficult language.  You arent going to publish an award winning game the first time, so your best bet is to choose a project with goals that are obtainable, and a language you can learn so you don't find that its too difficult and give up.  

With .NET (C# or VB) you can get almost the same power you'd get out of C++, but with a much easier learning curve, so I'd suggest one of the .NET languages.  C# seems to be more popular for game apps, but when it comes down to nuts and bolts, they are almost identical.  Managed DirectX also makes it much easier to understand than the C++ API.  

As far as books, there are lots of them out there with good examples.  You want a book that takes into consideration you're new to programming as well as new to game writing.  Its a difficult task to learn both at once, but you can do it.  :)  As far as VB.NET goes, there is a book out there from Apress called "Learn VB .NET Through Game Programming".  I own it, and it takes the approach of teaching programming and object oriented technologies through developing games.  Its worth checking out.  

<A href="http://www.amazon.com/exec/obidos/tg/detail/-/1590591143/002-8823830-9494409?v=glance">Here's a link to it on Amazon.</a>

Good luck with your project!

Author Comment

ID: 13602684

         I found a post in here that talked about C++ and using OpenGL.  It also referenced a book.  I have programmed in C and C++ before and am now working in .Net.  My question is:

          Is it better to use C++ and OpenGL for games rather than using .Net which mandates that you have the Framework loaded?   If .Net comes with many great features and is easier for game programming then that is the one I want.  It just seems to me that C++ and OpenGL would work better because it does not have so many layers, however maybe .Net has a ton of already built modules that you have to build by hand in C++.  I am really a newbie to this practice.

Let me know what you think,
Thanks again,



Accepted Solution

gregspence earned 2000 total points
ID: 13602817
C++ is more widely used in game programming because its going to have higher performance than .NET languages.  If you're writing an MMO, you'd definately want to look at C++ on the backend where you're concerned with raw speed.  The advantage to the .NET languages are the speed in which you can do many things.  However, if you're already familiar with C++, that probably wont be an issue.

As far as OpenGL vs DirectX, this is something thats widely argued, and there are as many opinions as their are develoepers.  OpenGL tends to be the standard in higher performance games like Unreal, Quake, etc.  However, DirectX drivers seem to be more available across the range of video cards.  Many budget and low end cards may not have OpenGL drivers.  So if you are going for the largest audience, I'd suggest DirectX.  Better yet, design your client so that it will support both, but thats an even more advanced topic.  You can also check out many of the Open Source Rendering engines out there like OGRE or Axiom if you want them to handle all the dirty work for you.

DevMaster.Net has a great resouce for finding out about rendering engines and game development kits.  They will also specify what languages they support should you make up your mind between C++ or .NET.


I have to admin that .NET and Managed DirectX is the choice for me based on my current knowledge of game programming.  I'd love to write it in C++, but learning that language, coupled with learning DirectX, game physics, game architecture, etc is too much to bite off at once.  So for now I'm writing in .NET and concentrating on game development basics.  When I'm more familiary with game architecture, I'll tackle another language.  :)

Author Comment

ID: 13602981
Thanks for the info Greg!


Featured Post

Receive 1:1 tech help

Solve your biggest tech problems alongside global tech experts with 1:1 help.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

As game developers, we quickly learn that Artificial Intelligence (AI) doesn’t need to be so tough.  To reference Space Ghost: “Moltar, I have a giant brain that is able to reduce any complex machine into a simple yes or no answer. (http://www.youtu…
Recently, in one of the tech-blogs I usually read, I saw a post about the best-selling video games through history. The first place in the list is for the classic, extremely addictive Tetris. Well, a long time ago, in a galaxy far far away, I was…
This video shows how to quickly and easily deploy an email signature for all users in Office 365 and prevent it from being added to replies and forwards. (the resulting signature is applied on the server level in Exchange Online) The email signat…
How can you see what you are working on when you want to see it while you to save a copy? Add a "Save As" icon to the Quick Access Toolbar, or QAT. That way, when you save a copy of a query, form, report, or other object you are modifying, you…
Suggested Courses

579 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question