I have some basic scripting experience and want to learn programming properly, with game development as the long-term goal. Should I start with a particular language or engine, and is it better to begin with 2D or 3D?
How should I start learning to code games?
Answers
If you want to build games while learning, pick one engine and stick with it for a while. Godot with GDScript is a straightforward starting point, especially if you already know a little Python. Make tiny projects first, like Pong, a simple platformer, or a short exploration game. Youโll learn more by finishing a small game than by comparing engines for weeks.
Reply to this answer
For the programming fundamentals, use whichever language makes it easiest to keep practicing. If you already know some Python, build a few small programs with it, then move into a game engine when youโre ready. The core skills, such as breaking a problem into steps, working with data, and finding bugs, carry over. You donโt need to master several languages before making anything.
Reply to this answer
Iโd start with 2D, not because 3D is off limits, but because it removes extra systems while you learn. In 2D you can focus on movement, collisions, input, and game rules. 3D adds things like camera control, lighting, and spatial math. Once youโve made a small 2D game, youโll have a clearer sense of what you want to tackle next.
FARADAY+:
That makes sense. Iโm drawn to 3D eventually, but a small 2D project sounds like a more manageable first step.
Reply to this answer
Donโt treat graphics as something programming has to replace. Game code connects assets and rules: it can move a character, trigger an animation, play a sound, or react to a collision. You can use simple placeholder art at first. Learn enough about importing and organizing assets to make a playable prototype, then improve the visuals as needed.
Reply to this answer
Start using version control early, even for tiny experiments. It gives you a history of changes and a way back if a new idea breaks something. Keep projects small and files reasonably organized, and practice debugging as you go: read the error, check what values your code is using, and test one change at a time. Testing and debugging are part of programming, not a separate subject you have to finish first.
Reply to this answer
Add your answer
Answers are reviewed before publication.
ferryledger:
I keep getting lost among tutorials. Would you follow one complete beginner course, or jump between small projects?