0
101 Oct 14, 2013 at 15:09

I need to learn game development but which way to go I am confused. Please suggest me some Languages, books, and the technologies to learn at the beginning stage of being a game developer (programmer). And also which softwares one should start working with.

#### 2 Replies

1
140 Oct 14, 2013 at 17:44

There are just so many ways to go, it’s hard to recommend anything. If you don’t know a language of any type, then python is a great first language. You need to learn a language before really even thinking about game programming. With python you can use either the pyglet library or pygame. Once you learn one language, others will come much easier because it’s the same basic structure.

0
101 Oct 14, 2013 at 17:57

I figure I would give some input because I've been in this situation before. I suggest using C++. I have been using/learning it for a while and it's very flexible; I've never felt limited by the language. It's also very fast.

"When should I use C/C++: Well first of all, C and C++ are both lower level languages, not nearly as low as Assembly but low none the less. Now they are also non garbage collected languages, so you will have to deal with debugging memory leaks and the like, but that presumable flaw is one of the greatest strengths of languages like these. While you may spend more time writing and fixing code then you do optimizing the code, you have the power to optimize it a hell of a lot better than garbage collected code."

http://www.cplusplus.com/articles/42E1wA7f/
http://slashdot.org/topic/bi/when-and-why-you-should-use-c/

Fantastic C++ tutorials: http://thenewboston.org/list.php?cat=16

As for graphics, you should go with either DirectX or OpenGL. Really, it just depends on whether or not you want portability (Because DirectX is only for Windows).

http://stackoverflow.com/questions/1240625/opengl-or-directx/1240821#1240821
http://blog.wolfire.com/2010/01/Why-you-should-use-OpenGL-and-not-DirectX
http://createdigitalmotion.com/2007/08/opengl-30-is-nearly-here-why-use-directx/

Of course, there are higher level things that you can use, such as:

Irrlicht
http://irrlicht.sourceforge.net/features/

Rendering.
Easy to use.
DirectX 9 and OpenGL.
Free and open Source.
Rendering only.

Ogre3D

Rendering.
High learning curve, sort of difficult.
DirectX 9, 11, and OpenGL.
Free and open Source.
Rendering only.

SFML
http://www.sfml-dev.org/

Rendering.
Easy to use.
2D only.
OpenGL.
Free and Open Source.

C4 Engine
http://www.terathon.com/

Rendering, audio, networking, physics.
Easy to use.
$1000 This is a FULLY featured game engine. It's got everything built in: http://www.terathon.com/features.php RakNet http://www.jenkinssoftware.com/ Networking. Easy to use. Free for indies making less than 100K per year off their application. Open source. Irrklang http://www.ambiera.com/irrklang/ (Audio,$40)

Audio.
Easy to use.
Surround sound.
Special effects. (Doppler, muffle, slow motion, echo, etc)

Bullet Physics
http://bulletphysics.org/wordpress/

Physics
Learning curve, moderate difficulty.
Open source and free.