Preferences

There's a ton of interest in it. There are forums out there that are years old with people showing off game engines, whole subreddits dedicated to the topic, too.

The problem is, it's a massively difficult undertaking to make a custom 3D game engine. Rendering alone is a huge topic without getting into the specifics of interfacing with GPU drivers. Window management is incredibly complex, especially if you want to support multiple platforms, or multiple modes of input. And then once you have all of that figured out, you still have to make some system to integrate the state of your game with all of those systems, and then finally, add your game logic on top. All while still building out those lower level systems as you go.

This is way easier to do in 2D than it is in 3D, largely because most people have a better grasp of 2D geometry than 3D, but even just making something OG Mario Bros. needs a fairly substantial game engine. Sure you can code golf it into something tiny, but then you don't have an engine, you have a game program. Engines need a certain level of flexibility to explore.

And sure, there are libraries for doing all of those things, but wiring them up together often ends up with piles of adapter code between the libraries to let them all use each other's data structures, at which point natural groupings of libraries form, and you're effectively back to having a game engine, just by defacto standard instead of intentional assembly.


This item has no comments currently.

Keyboard Shortcuts

Story Lists

j
Next story
k
Previous story
Shift+j
Last story
Shift+k
First story
o Enter
Go to story URL
c
Go to comments
u
Go to author

Navigation

Shift+t
Go to top stories
Shift+n
Go to new stories
Shift+b
Go to best stories
Shift+a
Go to Ask HN
Shift+s
Go to Show HN

Miscellaneous

?
Show this modal