A Unity Review: Pros and Cons
Did you know that Pokemon Go was built on Unity?
The game created such a hoo-ha amongst teens, tweens, basically, everyone, that very soon catching a Pokemon became everyone’s favorite pass-time.
According to John Riccitiello the CEO of Unity, more than half the games you play, especially the mobile games are developed in Unity.
The megahits like Temple Run, Assassin’s Creed: Identity, Angry Birds Epic, Battlestar Galactica, etc may ring a bell.
Take it from the rockstar of the gaming world, the CEO of Unity himself;
“People download as many as 2 billion copies of Unity games every month and have played at least one Unity game on more than 3 billion devices. It has numerous market shares spread out across various platforms. More than half the mobile games developed for these platforms are actually built in Unity.
In the words of Riccitiello and I quote, regardless of platforms, more than 60 to 70 percent of everything (built for machines for XR platforms, augmented or virtual reality) is actually developed in Unity.
A Unity Recap
Believe it or not, it’s one of the most cutting-edge and smooth game engines you could find out there. Not only does it offer the tools for developing games, but also lets you test them. Above all, it aids the smooth running of applications in various environments and offers loads of plug-ins. Besides, it gives users the ability to create games and experiences in both 2D and 3D.
Has three parts:
- A game engine – to let you create, test, and play games in varying environments.
- An application – to put the design or the user interface together with a graphics preview option and control play function.
- A code editor – called the IDE and it provides a text editor to write code. However, usually, a separate text editor is used to avoid inconvenience.
Cool Built-in Features:
- It has everything to let you create your game from scratch
- Great tool for prototyping everything from games, to interactive visualizations
- Let’s you import game assets and write codes
- Let’s you develop games, animations, AR, VR, UI System, Particle systems, etc.
- You only have to build it once and then you can deploy anywhere (what’s this? Patience, my young padawan!)
The Light Side Vs. The Dark Side
While it’s true Unity lets you build top-notch apps that run smoothly, tech experts like Ian Andrews think otherwise. He claims:
“Despite providing a torrent of benefits, the engine also hands you over several cons you might want to learn about before you start away with unity.”
Below is a list of both its pros and cons. Let’s look at the pros first.
So What Makes Unity ‘the Master Yoda’ of Gaming Engines?
Quite a number of factors actually.
Build once, deploy whenever and wherever
The greatest advantage of all. How does it do that? Deployment across heterogeneous platforms by simply writing your code in C#!
But how does C# code runs on Android and iOS considering how Android uses Java and iOS uses Objective-c in native development?
What sorcery is this?
Before I answer that, remember my young padawan; Unity is the Master Yoda of gaming engines. Not as senile as the maestro himself but in terms of power and wisdom, it surpasses all. It always has a few magic tricks up its sleeves. Mono for instance is the trick that makes cross-platform deployment possible. It’s an open-source cross-platform .NET compatibility development framework that comes with Unity.
So, simply put, Mono makes it possible to support various deployment platforms.
Flexible deployment across other platforms rules all else out
We have already discussed that it’s a cross-platform engine and how. Unity’s development environment comes bearing great support for various operating systems. It also features a variety of platforms to build apps too, for instance, around 95 percent of your work can be shared between web, PC, mobile platforms, and consoles.
While Unity game engine runs on Windows and OSX it can publish to:
- Windows (desktop)
- Mac OS (desktop)
- Linux desktop
- Unity Web Player
- PS VR
- Google Cardboard
- Oculus Rift
Insane graphics for the optimum gaming experience
What’s a good game without good graphics? Have you played Assassin’s Creed? Would it still count as fun if the graphics were poor?
One of the greatest and sweetest advantages Unity has to offer is the amazing visual effects. They are a boon when developing a mobile application, plus the visuals scale down to any screen size of smartphones.
When it comes to gaming, graphics is that special development aspect that is imperative to building high-quality software.
Check out Coco VR, Trinity, or Unruly heroes if you’re not easily convinced!
Unity Editor is easy!
It is visual which makes it easy to use and not rocket science. Unity aims to simplify the game development process and its editor speaks for it.
Great for rendering 2D and 3D scenes
It’s ideal for game development, especially effective for rendering 2D scenes. You can also use it to render 3D images. The quality offered is splendid compared to other apps
The awesome built-in analytics
A good reason why should you opt for Unity (3D) is its built-in analytics. You can easily locate these in the editor. This analytics help provide crucial insights into your game, data that you can use to tweak gameplay and optimize the experience for the players, your end-users. To squeeze the most out of the monetization efforts you invest in your game, Unity Analytics is vital.
Unity is strength!
When it comes to teamwork, Unity is a must (yes, the pun was very much intended). With Unity Teams – a great feature and benefit – you and your teams can work at full tilt. Its advanced features simplify the workflow and let you collaborate.
Its community of experienced developers and documentation is your best support system when it comes to understanding development. The documentation is so detailed that it lets you crack and understand solutions without trouble and initiate the right actions during game development. It saves you from googling solutions or skimming through other platforms to look for assistance since pretty much everything is provided in the documentation.
No-code game creation
Asset store to save your time
It has a cool asset store that lets you download game assets, ready-made solutions, and functional extensions, etc. It’s the effort of a community of developers trying to help each other and help you out. From skeletal scripts to extensions to sprint through the development lifecycle, it has whatever you are looking for depending on your game development process. The store has a kit of 12,000 asset packages like editor extensions, textures and materials, 3D models, sound effects, and music, and offers online services.
Whatever has a light side has a dark side!
Let’s take a look at some of the proposed cons by people who have used Unity.
Does not allow you to load your work from a template or foundation
Yeap, you have to start from scratch. Anything at all you could have added through a template. You have to create from scratch.
Licensing is another annoyance that you will often encounter
Perhaps the most annoying factor. The subscription fees are too high thus making it too expensive specifically for the freelance developers out there. You can only enjoy the optimized performance and graphical improvements by paying a whopping amount for these expensive licenses which kind of bums you out.
The ancient Mono
The Mono has long grown old. It’s outdated and often creates hurdles for developers especially once the projects reach a definite size.
Lags on world editing
It lags a bit behind compared to other tools like Unreal when it comes to editing the ‘world’ with terrain and placement tools. Basically, when it comes to a big game with big open worlds, you will want to be prepared for lack of assets availability and be prepared to do a lot more work on your own.
In the End, It’s a Love-Hate Story
In the end, whatever development engine you opt for, there will always be a light side and a dark side. Unity isn’t necessarily bad in something or too good at another. It all boils down to your requirements and the demands of the engine. Moreover, it is better to test the waters before you make a judgment.
As far as game development is concerned, the force is strong with Unity. It is an excellent platform and highly recommended for developers, especially those who want to jump-start game development. To help you get started there are numerous tutorials out there to familiarize yourself with the development process on Unity. Make sure to check them out before you start.