Hacker News new | ask | show | jobs
by pizza234 1631 days ago
There are game libraries for many languages, so for beginners to game development, anything will do. Small libraries abstract a few functionalities over the lower level ones (sprite batching, input/events handling, etc.) and handle multiplatform. Larger libraries may take care of other aspects (game loop, scene graph, etc.) and specialize on certain game types (3D, platform, RPG, etc.).

C++ is probably a must if you one writes large games and/or performance critical ones (regarding "high performance"/low level languages, Rust libraries are immature).

Scripting languages (e.g. Python/PyGame) can be a good (quick) way to start and experiment. But readability falls very quickly when complexity grows (e.g. difficult to interpret inheritance tree), so at some point one may easily feel the need to switch to a statically typed language.

Regarding algorithms, a very common beginners book is "Game Programming Patterns", which is also available for free in HTML: https://gameprogrammingpatterns.com/contents.html.