For game development, this is generally my recommendation list:

GDevelop - http://compilgames.net
Godot Engine - http://www.godotengine.org
SGE Game Engine - http://stellarengine.nongnu.org
LÖVE - https://love2d.org
Cocos2D - http://www.cocos2d.org

Each of these options has different advantages and disadvantages, but in general, the ones listed first are the ones I recommend the most for beginners.

Full disclosure: I'm the developer of the SGE Game Engine.

By the way, I would strongly disagree with Calinou's suggestion of using Qt. Widget toolkits like Qt generally aren't that great for games, and developing a graphical interface is a completely different job compared to developing a game. If you're going to use something more low-level than my recommendations above, you'd want something like SDL (C) or Pyglet (Python).

Personally, I learned game development by using a proprietary program similar to GDevelop and Godot Engine that had a choice between a drag-and-drop logic dictation system, and a scripting language similar to JavaScript. I started out using the drag-and-drop system it had, then gradually moved into learning the scripting language. I've never actually used GDevelop or Godot Engine, but I know that programming is not required to use GDevelop, and I think (but am not entirely sure) that programming is required for Godot Engine, so I think I would recommend starting with GDevelop. I don't think GDevelop has a scripting language, so when you think you're ready to learn that, you could switch over to Godot Engine, I guess. Of course, it's your learning, so do whatever's best for you.

Another approach is to make small changes to existing large programs. My contributions to Naev in this manner were how I learned C and Lua.

Reply via email to