Unity is a multiplatform game development tool, designed from the start to ease creation. A fully integrated professional application, Unity just happens to contain the most powerful engine this side of a million dollars.
Unity by Unity Technologies is AMAZING. It works for Microsoft Windows, Mac OS X, Virtual and Augmented reality devices, variations of Linux, web browsers, Adobe Flash Player, iPhone, iPad, Android, Xbox 360, PlayStation 3, the Nintendo Wii, and the Nintendo Wii U.
There is nothing more I could ask for. A free to use engine that allows me to follow my dream of being an app developer! It is very easy to work with, and they have great tools online to learn with. I've already made a game with it, and all has gone very well. I am, to the say the least, impressed.
Unity has changed my life. It's a powerful, free system used to create any sort of game for any platform you can make games for. I had always thought making games was something only highly trained, highly funded individuals could ever dream of doing. While it wasn't my first attempt to learn game design, I'm happy to know that Unity Engine is where I've chosen to hang my 3d modelled hat. Sure there are issues, all justified because reasons. Many topics are not well documented, and you tend to find those are just the fields you have to trudge through in order to make the game you want to make. There is a very vibrant community that surrounds the Unity engine that you can learn alot from though and sometimes they will even answer some questions too (if you get stuck just watch a thousand youtube tutorials, if you're still stuck watch a thousand more). Sometimes the tools fall short (looking at you pathfinding!) but the beauty of the structure of the engine is it is infinitely customizable, so if you're not liking the texturing/ animating/ shading/ physics, then with enough determination you can just go ahead and write your own version that fits your specifications. Better yet, go surf the asset store, this marketplace is a real internet gem. I've been having more fun surfing the asset store than I do surfing steam. I mean these are digital objects you can buy to create your OWN worlds, as opposed to playing in someone else's. At the end of the day though if you don't want to get in there and work with the code and assorted software then what are you doing trying to design games anyway? And sure, the engine code is hidden so you can never understand or fix the problems you encounter, instead you find ways to maneuver around the many bugs you are sure to find creating your Unity game (remember to save early and often, if necessary make back ups even. Either that or get used to redoing your work. This program WILL shut down on you when you least expect it. Although in another way this makes unity like a giant RPG). Some tools do work though, and those that do can be spell binding. I suggest Downloading Unity just to play with their terrain editor software. It's a paint program that creates height maps. You can even paint textures, or grass and trees. There is really nothing like drawing up a world in ten minutes, dropping in a first person controller and exploring the world you just drew. Unity deserves 6 stars just for that alone.
So sure, there are problems. You'll have to get your hands dirty and it's not always going to be fun, but that is mostly beside the point, and the point is that this **** is most certainly the very definition of punk rock. The software is an attempt to get the tools of multi-million dollar AAA studions into the hands of the public without charging them a dime (or advertising or anything, it's just free). In fact, Unity allows you to make money from it, if that is what you wish. You can make a small fortune (cap is $10,000) and Unity Technologies will not so much as lift a finger in retribution. If giving people the tools to make worlds of their own creation if they so choose isn't punk rock, then nothing is.
So three cheers to Unity for making grass roots game design more possible than ever. I want to make special note of some software called makehuman, it seems these two teams have successfully won the internet several times over. Ya'll are fabulous, seriously though.
This engine is perfect when you want to prototype games or make simple ones. The feature list is very powerful and the scripting standard that is used is very straightforward. put a game object on a scene, put a script that you made on that object and you are all set. You cannot get any simpler than this!
As you might guess by now there is a big bad BUT. I reached this after working with unity for the past 6 years and many don't notice it or refuse to notice it because they already paid for this so there is a kind of "marriage" with the engine. If you remove the veil of what the engine can do for you graphically, you will start to see the problems this engine has from a more objective standpoint.
- writing monobehaviour scripts encourage bad programming practices that will make new programmers sloppy with many game code with many inefficiencies. You need to have some programming background to not fall into this trap.
- Simple scripts are the best choices for games with Unity. But then you need to add some complex code in order to add uniqueness to your game so it does not fall into a formulaic kind of game. Unity will eventually start fighting back and when it does, you are writing code workarounds instead of actual code features since you cannot control how the engine works, you just have to make the best with the behaviour of your game code.
- MonoDevelop is the default IDE (VStudio on Windows). MonoDevelop is very unstable and may crash while you are editing or debugging your game. I had to resort to use code text editors instead of IDE's for better performance and less crashes.
- Flexibility is a loose term when it comes to Unity, because many assets and plugins work on top of Unity's "black box" so your game performance can take a very serious hit.
- Games made in Unity, although powerful, they can turn your computer into an energy hog even though the game is graphically simple. The engine is not very efficient
- Unity Editor is way too centralized for an editor that does not edit game code without external editor, but you may find it almost impossible to debug an unity game from the code editor alone, you have to start the debug from the Unity Editor and look at the code in another program. This is not very programmer friendly.
If you want to start making games and you have little programming experience. Unity is more than enough for you. If you plan to develop simple to low complexity games. Unity is right for you. If you are an experienced programmer looking to make something extremely unique(game or application), I recommend you to go to another engine
The Engine is great for both beginners and pro's. Its simply amazing. And unity 5, with all of its updates, made everything even better! I started using this engine years ago. I had to self teach so i could use it however. But the beautiful thing about it is, i could do that!!! the unity community constantly seeks to help others. I love it!