This means traditional advice for "the basics of a good game engine" doesn't really apply, because if you're just making a bog standard game engine you're wasting your time and making a crappier version of Unity or Unreal.
https://geometrian.com/programming/tutorials/write-games-not...
- "How do I render things?"
- "How do I integrate sound?"
- "How should I handle events?"
I don't know if anything like THREE exists for OpenGL, though.
The upshot of THREE is its super easy to develop with (alls you need is a browser). The downside is that it slows down very quickly for even simple things.
(I am a security analyst, not an engineer, but I'm transitioning to engineering roles now, so this might change in future, who knows :) )
For a deep dive into all game engine topics I would recommend the Handmade Hero dev streams: https://handmadehero.org
(Note that Handmade is not a useful model for an actual game production, it's more like a platform for investigating cutting-edge engine topics, so you can pick and choose parts to get what you need. It's been going for years and remains mostly a tech demo.)