Hasty Briefsbeta

Things I learned making a game engine

2 days ago
  • #programming
  • #custom-engine
  • #game-development
  • Dave’s Word Game, developed using the Growl engine, is set to launch on iOS and Android.
  • The author shares their journey of creating Growl, a custom game engine, starting from learning C++ to implementing features like graphics rendering, text handling, and audio.
  • Key motivations for building Growl included overcoming limitations with Java and libGDX used in a previous game, Feud, and the desire for better portability across platforms.
  • Development highlights include implementing Metal and OpenGL for graphics, creating a command-line tool for texture atlases, and tackling text rendering with support for multiple languages and emojis.
  • The engine was ported to multiple platforms including iOS, Android, and experimentally to 3DS and web via Emscripten.
  • Scripting support was added with Lua as a reference implementation, allowing for game logic adjustments without recompilation.
  • The project was driven by the development of Dave’s Word Game, which helped focus engine features on practical needs.
  • The author reflects on the extensive learning and personal growth achieved through the project, despite acknowledging that building a custom engine is not the most efficient path to shipping a game.