Skip to content

Comment on Making game engines is a waste of time – I probably won’t stop making them

Comments

Today, building a custom game engine does not necessarily mean building everything from scratch.

A lot of very good open-source libs can be assembled to relatively quickly build a working engine tailored for the needs of the games you want to build.

SDL, bgfx or Diligent can be used a simple platform/rendering abstractions, many of the excellent stb libs can be used for resources loading, or Assimp if you need 3D assets, simple or complex physics engine are also available, same for audio and networking...

Most of what goes into a game engine is not those.

SDL is a similar level of abstraction to win32/x11/...

Bgfx/diligent have a similar level abstraction to d3d/opengl/...

(And if you are a solo engine-writer, you're not going to write more than one custom windowing/graphics target anyway, so those libs don't reduce the amount of work you have to do.)

A basic image loader for a format like bmp or netpbm is trivial.

Here are all the dependencies for my game engine right now:

- Assimp

- Freetype

- SDL

- Linear algebra library

- Intel intrinsics library (transitive dependency of the math library)

- S7 scheme

- stb-image

- Toml parser

- Audio library

I estimate it would take under a week to replace all those except freetype and assimp, and freetype could be replaced with bitmapped fonts. Making an engine is as much (or as little) work as it's ever been because, similarly to a web browser or an OS, the challenge is designing and implementing application infrastructure.

  _______________________________________________________
More interesting, IMO, is to look at the ways that general-purpose engines have allowed people to avoid building engines in the first place. Something like unity is a toolbox to let you build any game you would want without needing to write thousands of lines of infrastructure code. Even lighter-weight toolkits like love,fna,raylib are general enough to be usable for a broad variety of games, while still providing enough specific functionality that you can just start writing your game.
AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.