Video game creation is a process that you shouldn’t take lightly, if you want to start doing it. Creating even the simplest of video games is hard, so you should not go into the process unaware of what the outcome might be.
Investing your time and money prior to realizing that the project is going to be harder than you taught can lead to a lot of stress and that can lead to chronic consequences.
One of the questions that pop up in game design and development is whether one should create their own engine or use already established ones. Here are my thoughts on the topic.
Video Game Engines are Very Complex
Video game engines are very complex layers of code that are used to support a game and provide a complete tool on which you could build a game. Every engine has limitations, but some engines work better than others for some tasks. Unreal is great for 3D animations and beautiful images, REDEngine 4 is great for developing video games which have tons of textures and are also made to branch out as the story develops. Unity is great for beginners, but will not be your next triple A game.
The point is that these engines are built by companies that have a large budget. Building your own engine takes a LOT of time and money, or rather time spent not earning money. There needs to be a good reason for building your own engine.
You Need to Know How to Work in an Engine First
Building a game engine is like starting to work on an operating system, without knowing how to use one or rather, what are the parts of the system, and not just the applications that come installed with the system, oh no.
In order to build a game engine or to even get close to building one, you should first know how to work in a game engine. Let’s say you know how to use Unreal and are a master at it. Well, then you could start to think about building your own engine. BUT, you should have a good reason to do it.
When to Build Your Own Engine
There are only a couple of reasons as to why you would need a game engine built from scratch. The first is that you need a competitive engine and you have the team and budget to build it. The second is wanting to build a game but having poor support in existing engines, while having a large development studio.
The third reason for building an engine is to actually learn how to build engines and practice for it, without lying to yourself that you will be making the next GTA or Witcher 3.
A Better Choice
Would be to actually work on a game engine that is popular, like Unreal or other commercial engines which are hard. That way you might get hired by some giants like EA, Ubisoft, Rockstar or Bethesda, to start working on a game of their own. With lots of experience, you can branch out someday and start building your own engine if you REALLY need to.
Building your own engine is not a wise choice unless you have ample means and a strong reason to do so.