What language would be best to learn for game development?
Unless there are higher level game languages that I don't know about, I would go with C++, since it has a wide choice of game libraries, and it's low level (almost) eliminates the use of assembler.
Well, take into consideration that many games use c++ for the game engine, but also use a scripting language along with it. A very common choice is Lua, because it's light, fast and integrates well with c++ libraries. Here you can see a list of games using Lua: http://en.wikipedia.org/wiki/Category:Lua-scripted_video_games and see that there are many famous video games there, like Crysis, Simcity, Worms and so on. Of course there are other games using different languages, but I just wanted to show that although game development requires performance it also requires flexibility, and as the core of the game is built towards performance the rest is built towards flexibility.
It really depends what you will be making the games for. People have pointed out uses of c++ and Lua, so let me point out some others. Python is used to script some game systems. The back end is already made for these and you use Python to tell it all how to come together. Java is used for a lot of multi-platform systems. For example, libGDX has all the c, c++, and JavaScript done to run on Android, iOS, Windows, and the web. You then use Java to do all the work and the programs do not go slow because places where tighter code is needed is already handled by the framework. I have seen games made in Visual Basic .net, JavaScript, and many others as well. Pick a target platform. Pick the 2d/3d type you want. Research some frameworks and engines that you might use. Then learn the language that works with those.
C++ for sure
C++ is the general choice. But if you are a newbie in the field of software development of any kind (or gaming software in your case). Then you need to have awesome mathematical skills, as well as, some other skills too, apart from learning any programing language.
P.S. Building a game (particularly graphics intensive) is easier than only ONE thing. Which is making an OPERATING SYSTEM. I am writing this line, considering you to be a complete beginner, with no prior knowledge of software development.
Well, it is hard to make top quality games, but you can still start from somewhere. For beginners I'd say that the language doesn't really matter. There are many games created in many languages. Minecraft is in java for example. Python is a nice language and it is considered to fit well for beginners. (it's a very powerful language though, don't underestimate it hehe) If you happen to know python already then here you have free tutorials for building simple games: https://inventwithpython.com/ The first book is simpler and mostly shows you how to build the logic behind the game. Most of it is are textual games. The second book there is aimed to introduce you to the pygame library by building simple graphical games. If you don't know python then you can watch those video lessons starting from the very beginning and then introducing you to pygame. I think it's really nice. https://www.youtube.com/playlist?list=PL1D91F4E6E79E73E1
Join our real-time social learning platform and learn together with your friends!