Deciding which game engine for your next project has never been more challenging. Should you go with the triple-A graphics of Unreal Engine? What about the open-sourced goodness of Ogre? Do you snub it all and roll-your-own in C++? There are plenty of reasons to pick any one of the dozens of engines, but this article is going to focus on one; Unity. If you’re asking yourself, “why should I use Unity?”, then keep reading, and hopefully, I can answer that question for you.
While you can undoubtedly find flaws in individual aspects of Unity, you will be hard-pressed to find an engine that is capable of doing as many different things as well as Unity can. Need a 2D game engine? Unity can handle it. What about high definition graphics? Unity can handle it. If versatility is your desire, Unity offers the best of all worlds, which is excellent if you are workshopping or prototyping. And the comprehensive range of tools, such as animation systems, input systems, and more, make it great for just picking up and getting started with something new in no time at all.
2. Helpful and Vibrant Community
Getting started with any engine can be daunting, particularly if that engine is very different from what you are used to. Unity may fall into this bracket for you, but, fortunately, there is a vast and helpful community around the software that is ready to help. Documentation on the engine itself is comprehensive enough, but there is also a thorough questions and answers site, countless tutorials, and endless YouTube videos. Including some by yours truly!
Now, I’m not saying learning Unity is easy, especially if you’re learning from scratch. But there are few game engines with as much freely available resources.
3. Scripting Options
It’s always nice to have options. And, while Unity might not have the most extensive selection of languages to choose from, it does have a couple, and they are standard languages. Some engines like to roll their own programming languages, which has its benefits, but from the point of view of someone who already knows how to code, it makes the process of moving to a different engine much smoother.
Releasing a game on multiple platforms is no small feat. Windows, Mac, Android, iOS, Xbox, PS… you get the idea. All of these platform have different architectures running on different hardware, and require significant modification to your base code to get running.
Not with so with Unity. Simply install the relevant platform module, ensure your game is set up to run on the hardware (you can’t use WASD controls on a touchscreen) and build the project. The constant updates keep Unity’s cross-platform functionality in step with updates on those platforms, so you can be sure your game will always be ready.
5. The Asset Store
One of the most time-consuming parts of game development is asset creation. Whether it’s carefully sculpting 3D models, painstakingly texturing them, or meticulously tweaking animations to make them look more natural, it’s a real time-sink. Fortunately, the Unity Asset Store is a veritable cornucopia of ready-to-go assets that you can drop straight into your game, or simply use to speed up the prototyping process.
Speaking of prototyping, there are also plenty of systems and tools to speed up the development process, such as character controllers, and level building tools. Whether you use them merely as a prototyping aid or a full game feature is up to you. And don’t worry if you’re strapped for cash; there are lots of free assets to choose from.
6. Modular Editor
Unity is not a fixed application with static features that are set in stone. Simply opening up the Package Manager reveals a host of additional functionality that you can add to your editor with the click of a button. On top of that, there is a range of experimental packages that are perhaps not quite ready for prime time but are nonetheless available for you to play with. This offers a great for Unity to make upcoming features available early without rolling out buggy components in the main editor.
Of course, if you need something a little more bespoke, you can always create your own in-editor functionality using the very same code and functions that you use to create your games.
7. Unity Services
Unity offers more than just the game engine and its raft of features. There are also various integrated services that you can make use of. Want to monetise your free game? Unity Ads provides an ad delivery solution that is ready to use right out of the box. Need analytics? Unity Analytics is there for you.
There are also Cloud Build and Unity Multiplayer services at your disposal, should you need them. But, of course, you are not limited to any of these services. If you would rather use a different ad delivery platform, or roll your own multiplayer system, you can absolutely do that.
8. It’s Free! (Flexible Licensing)
At its most basic level, Unity is entirely free to use. Not only that, but you can distribute your game and even sell it commercially. There are no significant restrictions to the editor (dark mode aside), so it’s a great way for small game development studios and indie developers to get their first games out to the world.
As you start to grow, Unity also provide a range of license depending on the amount of revenue you are making as a developer, including any funding you might have raised. Plans are priced per month per seat, and there is a student plan available.
Why Should I Use Unity?
So, should you? Well, maybe you shouldn’t. Every engine has it’s advantages, and despite this extensive list of reasons you should use Unity, it’s entirely possible one of the other game engines might be better for your project. There is no one-size-fits-all solution to a problem like this, and you should absolutely weigh up all the pros and cons before you make a choice.
But if you do decide to go with Unity, there are plenty of reasons to be happy with your choice.