Specialization is almost a requirement of making your own engine, if you aren’t specializing it and catering it towards your exact use case, you should rethink why you’re making an engine in the first place. You don’t need all the features included in a commercial game engine, and you can make your asset pipeline / level editor / whatever way smoother to use when considering your specific use cases instead of needing it to be general purpose.
I won’t be going into any deep technical details here, this is about why and how to develop a game engine, not a tutorial for how to write the code. In this post I will go over why you might want to, what systems are needed in a game engine, and how you should approach development of it. Great! There’s lots of reasons to want to make one yourself instead of using a commercial one like Unity or Unreal.
So you’re thinking about making your own game engine.