If your game is a good fit for an existing engine (and I’d argue like, 99% of games are), there’s no shame in using one. It’s the what real programmers do: There is no “right way” to make a game, you don’t win programmer points for making your own engine.Especially if you have never made your own game engine before. It’s possible to make something that is better than these for specific use cases (see: Specialization above), but you, as an individual or a tiny team, are not going to compete with these for general purpose stuff. I can do it better: You think you can just make something better than Unity or Unreal (or Godot or GameMaker) in general.If any of these are your (only) motivation, you should back up and reconsider: This is a great reason, one of the best reasons actually, to make your own game engine.Īlso while I’m making lists, here’s a couple of bad reasons for why you would want to make your own game engine. Curiosity/Learning: You’re just curious about how it works and why other engines have made certain decisions they did.You are willing to eat the cost of developing your own tech, because in the long run its good to not have to constantly change stuff depending on the whims of giant companies.
#Diy loaded questions game update
The incentives and values of a company like Unity or Epic are not always going to align with your own, and you want control over your own tech, the ability to fix bugs yourself instead of “waiting and hoping”, and comfort knowing that an update won’t completely break your current project. Independence: You don’t want to be dependent on someone else’s technology in the long term.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. Specialization: You want to optimize your workflow for the kind of games you make.It’s a good reason to make your own engine, cause there isn’t any other option in cases like this. This can mean some kind of massive-scale simulation that requires some to-the-metal coding to make performant ( Factorio) or some custom thing that doesn’t fit into any existing molds ( Noita, Miegakure), or wishing to target an odd piece of hardware that current engines don’t support ( Playdate), or any number of other things really. Novel Tech: You want to make a game that uses a piece of novel tech that no other engines out there currently support, or can’t be easily made to support in their current state.Here’s a few good reasons why you might want to:
Lets start with the absolute first question you should be asking yourself if you want to make your own game engine: Why?
#Diy loaded questions game how to
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.