What languages are used professionally for games?

mwmey1

Weaksauce
Joined
Jan 22, 2008
Messages
70
Just wondering if anybody knows what programming languages the professional game developers use for RPGs like Diablo and Titan Quest? I realise the huge time and teams that are put into making professional games so Im not trying to make my own, Im just curious.
Thanks
 
C++ and C are still the kings of the castle here for a large percentage of the game code done by game companies, but you will find that they use a variety of languages for different parts of the game. The core game code (engine, graphics) will be done in C/C++, with Assembly sprinkled in to optimize parts of the game. Scripting for games might be done in something like Lua.

Java, Perl, Python, and the .NET platform are used by hobbyists more and more, I'd assume, as they're simpler to use, plus Microsoft has the XNA framework now that allows you to develop games for Windows/XBox 360.
 
Read the Languages and Tools segment of this Wikipedia entry.
Also note that article is pretty much completely unreferenced.

PC and console games themselves are almost always written in C and C++, with some assembler for tuning. Game companies do programming in all kinds of different languages, though. Lots of tools are required to make games; assembling artwork, building animations, spreading shader compiles across different machines, doing back-end work for online play, and so on. Any scripting language you can name--like Python or Perl--can find its way into the process. Managed languages are popular for some tools work, too.

LUA might be used for scriptable actions in-game, or on server. The server application of LUA is particularly interesting, as it can allow richer content and actions to be edited adeptly by staff more concerned with the art than the technology.

Here, we do C, C++, and assembler. Perl and Python are very popular for scripting other things. We don't use managed languages in any big way; tools where Perl or Python aren't used are written in C++.

Mobile games are written on whatever the target platform supports. Java, usually; but it depends on the platform.

I hope that helps -- let me know if you have other questions. Are you considering a career in game development?
 
Thanks alot for the replies guys. C++ is the answer I was hoping for.

Are you considering a career in game development?
Well its always been in the back of my mind as something Id want to do, but Im not sure at what level. Im fresh out of school and still abit confused about what direction I want to take, but Ill be programming whether its an occupation or not.

Im proficient in C++ at a hobbyist sort of level, and I guess I just want to stay up-to-date with my skills and knowledge in case one day I decide that I DO want to pursue game development professionally. Chances are Ill just remain a hobbyist, which is fine by me because I have great fun, but Im just trying to keep my options open.

Thanks again.
 
Doesn't matter. Computer languages are tools, you use the right tool for a job. If you want to be a proficient programmer you need to learn things that extend far beyond any one languages particular syntax.
 
Thanks alot for the replies guys. C++ is the answer I was hoping for.


Well its always been in the back of my mind as something Id want to do, but Im not sure at what level. Im fresh out of school and still abit confused about what direction I want to take, but Ill be programming whether its an occupation or not.

Im proficient in C++ at a hobbyist sort of level, and I guess I just want to stay up-to-date with my skills and knowledge in case one day I decide that I DO want to pursue game development professionally. Chances are Ill just remain a hobbyist, which is fine by me because I have great fun, but Im just trying to keep my options open.

Thanks again.

Doesn't matter. Computer languages are tools, you use the right tool for a job. If you want to be a proficient programmer you need to learn things that extend far beyond any one languages particular syntax.


To the OP it may (or may not) seem like a useless answer, but it really is quite helpful. :D:p

Yes, learn C++, but also learn a variety of other things. Download Maya PLE and learn how to animate using C++.


EDIT: BTW, lots of fun going into "the barn" and beating you guys...too bad it was in the NIT...(saw in your profile you go to U of MN) :D
 
My brother is a game developer. I lost track of the languages he uses, which vary depending on what he is developing at the time. He spends a lot of time creating scripting languages for creating maps and character interaction, which recently have been based on Python. My advise is pick a language and learn it inside and out. New languages are easy to learn once you have one under your belt. I have recently become an advocate of Ruby as the best starter language. You may not see it a lot outside of web developement, but it is syntactically simple and is quick to start off in.
 
C++. But having said that, without a knowledge of what's going on under the hood (assembly) you will be limited in your understanding. I took a class numerous years ago on C++ from an instructor who did not know squat about assembly and this diminished his ability to apply C++ effectively (he made some statements that were flat our wrong).
 
Back
Top