My first game with Carimbo, my homemade engine

Project reception & context

  • Many commenters find the homegrown engine + game inspiring, especially as a hobby project and something made for a child.
  • Several say actually shipping a game on a custom engine is rare and impressive.

Engine vs. game: when to roll your own

  • Common advice repeated: if your goal is a finished, marketable game, existing engines (Unity/Unreal/Godot, etc.) usually save huge time.
  • Counterpoint: for hobbies, learning, or tightly scoped projects, writing your own engine is seen as entirely valid and often more appropriate.
  • Strong disagreement with blanket “don’t write engines” advice: generic big engines can be overkill, inflexible, or inefficient for small or unusual games.
  • Middle-ground view: write “just enough engine” for your specific game, avoid premature generalization.

Educational value vs productivity

  • Many argue engine-building gives deep understanding of rendering, physics, asset pipelines, scripting, and architecture that you don’t get from only using big engines.
  • Others stress that if your real aim is “make a game,” tooling/engine work will dominate and can derail the project.
  • Consensus: it’s easier to plan and build an engine once you’ve shipped at least one game with an existing engine.

Tooling, editors, and debug workflows

  • Tooling and editors are described as the true time sinks: projects, resource management, UI, undo/redo, level editing.
  • Several recommend embedding minimal debug/editor features directly into the game (watches, live tweaking, simple console, graphs) instead of building a full external editor.

Technical details discussed

  • Asset prefetching: loading one asset per frame into a cache, with a separate mechanism to evict unused assets.
  • Collision: current game uses a crude position threshold; plans mentioned for proper physics (e.g., Box2D) or GPU-based pixel-perfect collision, with browser/WebAssembly constraints noted.
  • WebGPU is mentioned as future-facing but not yet widely available; WebGL remains the common baseline.

Engines, libraries, and the “middle ground”

  • Libraries like raylib, SDL, Ogre, Sokol, and fantasy-console-style frameworks are praised as a sweet spot between “raw API” and full engines.
  • Several report renewed enthusiasm using such low-level libraries to build custom 2D engines or small frameworks.

Terminology and philosophy of “engines”

  • Some argue “engine” is overused and mythologized; historically it just means the non-game-logic core (rendering, assets, input, entities).
  • Clarification of “make a game, not an engine”: don’t over-abstract your first game into a generic, reusable product unless you explicitly want an engine.