
Unity 5 released with upgrades, full-featured free version - jarsin
http://www.gamasutra.com/view/news/237853/Unity_5_released_with_upgrades_fullfeatured_free_version.php
======
ffn
I really love that these game engines are doing this. As a hobbyist game dev
with a day job and a night-shift (tfwgf), one of the biggest hurtles that keep
me building on html5 instead of on desktop was the demand that I had to pay $$
upfront before I have any idea if I can even finish what I'm building (much
less how the market will receive it). I mean, I don't mind paying the engine
company their demands if I can make money selling my game, but I'm already
risking my free time on a project that may very well go nowhere, so I don't
want to also risk my money. I'm sure plenty of other folk with great ideas and
skills are in this boat, so by finally offering a free version, I'm sure we'll
be seeing more and more esoteric indie games that tell great stories,
introduce fun new mechanics, educate the player, or make us lose faith in
American democracy on Steam instead of the nonstop rehash of mainstream FPS
games.

As for me, it's finally time to start building that Sierra-esque ancient
civilization city-builder game (i.e. Caesar, Pharaoh, Emperor, etc.).

~~~
mattmanser
Unity's been free for years, you've fallen for their advertising to upstage
Unreal.

"Finally offering a free version"

Honestly, it's been free for ages.

Not only that but Microsoft had XNA which was also a free game engine that
they only discontinued last year so you're wrong thinking that html5 was the
only option. I don't think you really researched the market much if you
thought that.

Plus if you are serious about an RTS you should read about AI war, who used
Unity. It's interesting as if you want to do multiplayer in an RTS you can't
use Unity's collision detection as the float calculations are chipset
dependant.

~~~
trsohmers
What most people don't realize is that the IEEE Floating Point standard
(754-2008) actually doesn't standardize when a float should be rounded. Since
most CPUs/GPUs are able to do FMAs (Fused Multiply-add)'s that are rounded
after the operation, you get a different result than if you were to do a
multiplication operation, then round, then add, and then round again.

I'm pretty sure Unity would be able to fix this if they had their compiler
always handed rounding the same way.

Also: If you want to see a sane way to handle floating point, check out the
Unum format
([http://en.wikipedia.org/wiki/Unum_(number_format)](http://en.wikipedia.org/wiki/Unum_\(number_format\)))...
higher precision than IEEE, doesn't have rounding errors, and uses fewer bits.

~~~
antiuniverse
Here's an outstanding article that goes into the nuance of actually achieving
floating point determinism: [http://gafferongames.com/networking-for-game-
programmers/flo...](http://gafferongames.com/networking-for-game-
programmers/floating-point-determinism/)

My takeaway: It's hard enough that I'm probably never going to attempt to
implement lockstep simulation, and if I was forced to I'd probably do
everything in fixed point for my own sanity.

------
antiuniverse
In my mind, the use case for Unity is mobile and other downlevel hardware. I
still wouldn't try and target mobile or low-end PCs with Unreal Engine 4.

That said, I'm still uninterested in using Unity because of the implications
of having a black box engine that underlies your project. Being able to step
into the engine code is too important to my understanding and my ability to
debug problems, not to mention the possibility to implement your own bugfixes
or otherwise modify the engine.

In addition, the collaboration story with Unity still isn't great once your
team scales past "tiny." Unreal and its Perforce integration were built and
battle-hardened in the forge of AAA studios with hundreds of artists; Unity
still encourages you to use a proprietary "Asset Server" which they charge
extra for, and even then it gets awkward and prone to irreconcilable merge
conflicts once you go past two or three people on a team.

Having said all that, yay competition!

~~~
robterrell
Unity doesn't suggest anyone use the Asset Server anymore. In my conversations
with them, they actively discourage its use and point to their SCM plugins
(which they've open-sourced) as the recommended solution.

~~~
antiuniverse
That's good to hear, I think it's strange that it ever existed in the first
place.

------
kelukelugames
Unit is really easy and fun to use. Here are my three favorite tutorials.
Takes around 1 - 2 hours to go through each one if you know how to program.

[http://unity3d.com/learn/tutorials/modules/beginner/2d/2d-co...](http://unity3d.com/learn/tutorials/modules/beginner/2d/2d-controllers)

[http://pixelnest.io/tutorials/2d-game-
unity/](http://pixelnest.io/tutorials/2d-game-unity/)

[https://www.youtube.com/watch?v=7dP7R-GbFkM](https://www.youtube.com/watch?v=7dP7R-GbFkM)

I was able to put my high school friend in a platformer within a day.

[https://www.youtube.com/watch?v=RpiZF7bjQ3U&feature=youtu.be](https://www.youtube.com/watch?v=RpiZF7bjQ3U&feature=youtu.be)

The only complaint I have is that it doesn't make webgames.

~~~
runevault
Would you do them in the order you linked them? I've been wanting to make a 2d
game but hadn't found good tutorials yet.

~~~
kelukelugames
Yes. Just do them in that order.

------
aoakenfo
UE4 is a complex beast that will take a long time to master. It takes a team
of specialists to truly leverage its power. UE4's market is high-end PC and
console titles. UE4 is pretty.

Unity targets small shops and indie devs. It has quick iteration times for
rapid prototyping of gameplay mechanics. It takes more work to make things
pretty in Unity.

It will be easier for Unity to ramp-up its visual fidelity than it will be for
UE4 to revamp fundamental workflow. We're already beginning to see these
changes, like new GI (global illumination) system and physically-based
materials in Unity 5. Perhaps Unity v6 or v7 will have graphics on par with
UE4.

~~~
keyle
Although you seem to know what you're talking about, my experience isn't that
clear cut.

I've used UE4 quite a bit. Just using blueprints, I didn't feel like I needed
to be a specialist to do really cool stuff. And I wish it had something like
C#. Also, it wasn't that quick to get something looking great in UE4 and took
quite a bit of practicing.

------
druidsbane
Unreal Engine comes with full source updated live on GitHub, that is worth its
weight in gold, sadly not even the Pro Unity subscription version comes with
that option.

~~~
bhouston
Unity does license the source code to enterprise customers though, although I
guess that is negotiated on a per customer basis?

~~~
druidsbane
I think that's the issue though, hard to compete with getting it all for free
without any lawyers or needing to even ask, especially when you are a paying
customer. It will take time but with the source for Unreal being on GitHub it
has the potential of becoming an actual "open" standard of sorts given how
much the community can contribute back. It also makes it a greater platform
for experimentation for universities and students in addition to smaller shops
that can't afford to license it. Usually when a company says that the source
can be negotiated separately the price is of the form of: "if you have to
ask..."

------
mickanio
I recently released my first game using Unity:
[http://newbeings.com/](http://newbeings.com/) and I spent a real long time
weighing the different engines. I wish I hadn't spent so much time deciding on
an engine, and had just picked one and gotten on with it. I think the
differences are pretty negligible for first (and probably even third and
second) timers. This news makes me happy!

------
strangecasts
Sadly, you still have to fork out the full $1500 for the dark UI skin ;)

Having full access to render textures and framebuffer stuff is a godsend
though. Looking forward to experimenting with the audio as well.

They also seem to be setting up a discount program for the Asset Store, as
well as a cloud build system (for mobile/web only so far, though).

~~~
daenz
> Having full access to render textures and framebuffer stuff is a godsend
> though.

I haven't used Unity, but I've written my own game engine. Unity didn't used
to expose the GBuffer textures?

~~~
robterrell
Previously, render-to-texture was a Pro-only feature.

------
yohann305
It seems this news is a direct reply to yesterday's move from one of their
competitors, Epic's Unreal Engine 4 announced to be free* to use.

link: [https://www.unrealengine.com/blog/ue4-is-
free](https://www.unrealengine.com/blog/ue4-is-free)

~~~
jarsin
Ya, as far as pricing it now seems there is no debate. No rev share and only
having to buy the pro edition if you exceed 100k in revenue makes Unity
superior on the price imo. Of course there are other factors to consider
depending on the project.

~~~
s73v3r
What about version control? I remember you had to have Unity Pro in order to
be able to use version control with other people in a sane manner.

~~~
unoti
It's super trivial now to set up your own version control at the command line.
One check box in editor preferences and I was up and running with my own
private free mercurial repos on Bitbucket.

~~~
tomjen3
I remember this being the biggest pain in the ass with unity, so much so that
I did want to use it for team development, so this is huge if they solved it.

Do you happen to have a link to which setting to switch?

~~~
unoti
Here you go!

"This is done by selecting Edit->Project Settings->Editor in the application
menu and enabling External Version Control support by selecting Visible Meta
Files in the dropdown for Version Control. This will show a text file for
every asset in the Assets directory containing the necessary bookkeeping
information required by Unity. The files will have a .meta file extension with
the first part being the full file name of the asset it is associated with.
Moving and renaming assets within Unity should also update the relevant .meta
files. However, if you move or rename assets from an external tool, make sure
to syncronize the relevant .meta files as well."

[http://docs.unity3d.com/Manual/ExternalVersionControlSystemS...](http://docs.unity3d.com/Manual/ExternalVersionControlSystemSupport.html)

------
teamhappy
> This graphic, provided by Unity, will help make things clear:

What a joke. Both include "Unity 5 engine with all features." Except that they
don't. If you click "Get Unity 5" you see a list of differences[1] between the
two. That list used to be a little longer though.

[1]: [http://unity3d.com/get-unity](http://unity3d.com/get-unity)

~~~
cwyers
It looks like the list of differences is differences in tooling around the
engine and/or licensing, not differences in engine features, though.

~~~
venomsnake
There is also the source code. Being able to take a look under the hood is
critically important. (trying to modify is insane, but just knowing that you
can see what is going on inside makes integration and bug hunting much faster)

~~~
maccard
Pro license doesn't give you source access, that's negotiated in their
enterprise license, which had always been the case. Idgo so far as to say if
you're not modifying the source having it available doesn't add much for you.

------
endergen
Valve Announced Source 2 will be free for developers:
[http://www.polygon.com/2015/3/3/8145273/valve-
source-2-annou...](http://www.polygon.com/2015/3/3/8145273/valve-
source-2-announcement-free-developers)

------
bstar77
I absolutely love unity. I've been playing with it on and off for the past few
years and it has been surprisingly easy for me to pick up. The free version
has a pretty spectacular feature set.

I've had a lot of fun with 2d mode- as a learning project I recreated the
Monkey Island I Melee Island scenes with mixed sprites from Monkey Island II.
Such a blast re-creating a game from my childhood. I really need to find more
time for this stuff.

~~~
babuskov
The problem with Unity from game-player POV is that it's too easy. It means
that anyone can make games, and I've seen too many games now that have
beautiful art and crappy play experience. The games feel slow and controls
sluggish. It seems that developers assume that Unity would take care of
everything and they do not have to consider performance of responsiveness at
all.

Whenever I see Unity splash logo I'm getting mentally prepared for mediocre
experience. Unless it's a strategy or point&click game where performance is
not important.

~~~
strangecasts
Would you suggest making it harder to develop games?

Nintendo tried that with the Nintendo 64:

 _Yamauchi took a different approach with the SNES ' successor the N64,
however, which was released in 1996 at least partly to distract attention away
from the disastrous Virtual Boy. Yamauchi admitted at the 2001 Space World
event that he had deliberately ordered the N64 be difficult to develop for.
The intention behind this was to discourage untalented third-party developers
from releasing poor-quality games -- it was no longer practical for Yamauchi
to personally approve every game -- but the plan backfired somewhat: given the
commercial success of previous Nintendo systems, third-party developers were
still keen to get their games on a Nintendo console, and this consequently led
to a number of sloppy, low-quality third-party games that clashed
significantly with the high-quality first- and second-party titles that were
being released on the platform._

(from [http://www.usgamer.net/articles/hiroshi-yamauchi-the-iron-
fi...](http://www.usgamer.net/articles/hiroshi-yamauchi-the-iron-fist-in-the-
velvet-glove) )

~~~
babuskov
I don't. It Unity's goal to enable as many potential developers as possible.
It's also their curse.

~~~
exodust
What you're saying is true, but it doesn't matter. Good games with good
performance float to the top, get featured, get shared, get popular. Not so
good games fade away, and hopefully the developer learns something and tries
harder next time. It's all good.

------
robertfw
I was debating over trying out Unreal vs Unity last night. Unreal was looking
more capable in its free version than Unity 4 Free, but I would prefer to
learn C# over C++. This release makes it an easy choice to give Unity a whirl!

~~~
fredophile
I've seen this type of comment before but usually in the context of someone
that already knows either C# or C++. As someone that doesn't know either what
factors make you want to learn C# over C++?

~~~
MichaelGG
C#'s tooling and ease-of-use really blows C++ away. Plus there's the safety,
where it's rather difficult to introduce a memory-safety issue into C# code,
vs C++ where we see vulnerabilities every week due to this problem.

I doubt people use C++ if they have another choice. The big problem is that
C#'s implementations do not handle memory well enough. The default for them is
to heap-allocate most objects, then leave it up to the GC. This means a lot of
hacky code to achieve good performance, but it still can't match C++ in many
cases. (I'd guess that many apps could see a good double-digit% increase in
perf in C# if you could just use the stack more often.)

Plus, if you can use C#, you can probably use F#, which is a far better
language than either C++ or C#. Whereas if you need to be runtime-free and
C-ABI compatible, your choices of expressive languages are rather limited
(Rust being the most exciting one, probably.)

Edit: Also, C++ compilers tend to do a far better job at codegen. Though MS is
starting to hint that they're gonna up their JIT story, but they've got a long
way to go.

Edit: As to why you'd want to _learn_ one or the other, if you're in games, it
seems like you should probably learn C++ because it's so prevalent in games.
C# is easy enough to pickup on the side though.

~~~
fredophile
While I appreciate your well thought out reply I don't think you have the
perspective I'm interested in learning about. From your reply I'd say you
already know at least one of the two. I'm interested in knowing why someone
without experience in either would choose C# over C++ or vice versa.

~~~
prewett
Maybe I misunderstand, but I don't think you want the advice of someone who
doesn't know either, you want the advice of someone who knows both well.

FWIW, I'm a longtime C++ user, and used C# with Unity for a bit. I would
recommend C++ if you need high-performance, low-level control, or access to
native APIs. I would recommend C# if you want good performance in a Java-like
language with the best parts of Java and C++. Also if you want to get a job
with the Microsofty sorts of companies that have historically used C#.

However, you are more realistically constrained by your 3D engine. Unity does
not have the option of C++ (to my knowledge). I'm assuming Unreal does not
support C#. In the case of 3D engines your choice of engine is much more
important than language.

~~~
pjmlp
> Unity does not have the option of C++

It does on the professional version via the plugins system.

[http://docs.unity3d.com/Manual/NativePlugins.html](http://docs.unity3d.com/Manual/NativePlugins.html)

------
increment_i
I'm sure I'm nitpicking here but this is a huge deal for me: forcing a branded
splash screen onto the final product. Ugh! Why?! I understand a ton of work
has been put into this engine and Unity is graciously offering it for free,
but indie software is an individual's art. When an artist paints a portrait,
you don't see a "Powered by Winsor & Newton Acrylic Products" stamped onto the
bottom of the canvas.

I'm sure I'm coming off harsh here but seeing that limitation really turns me
off from an otherwise unbelievable proposition.

Edit: spelling.

~~~
lucaspiller
It's removed if you upgrade to the pro version. Seems like a fair deal to me
as it means studios who can afford it will pay, while indie developers just
getting started don't need to.

------
zura
Xamarin, we're looking at you... :)

~~~
vblord
Can you use Unity to make regular (non-game) apps like you would with Xamarin?

~~~
Illniyar
as I understand it the "game loop" that is inherit in the Unity engine makes
any app made with it a battery hag. Unity does not have an event based system,
so it uses a lot more cpu then regular apps.

~~~
drawkbox
Overusing Tick or Update in any engine is a hog.

You can do event based work with your own Messenger such as
([http://wiki.unity3d.com/index.php?title=CSharpMessenger_Exte...](http://wiki.unity3d.com/index.php?title=CSharpMessenger_Extended))
or the new ui system has an event system. You can also use C#
delegates/events/callbacks as desired.

Their previous OnGUI based tick UI was meant for before mobile and caused many
of these slower games. But there have been nice GUI systems like NGUI to help
that. Their GameObject based SendMessage is too hefty and probably many new
devs use that and have laggy games. Their core out of the box UI and messaging
before Unity 5 was made for an era before mobile.

But if you know what you are doing it is C# underneath and you can always
implement a messaging/event system, and many implemented their own UI or used
popular assets like NGUI, EZGUI or DaikonForge (before they bailed when the
new UI was released). The new UI is strongly influenced by NGUI as the
original asset maker worked there on Unity UI, it took some different routes
after he left but both are now very performance focused for mobile.

Garbage collection is one area where current mobile speeds are poor and
hopefully IL2CPP can get to a place where it is optimized for that case. Now
that Unity controls down to the metal it should be faster and better over
time. They previously were locked to Mono 2.x performance on iOS though they
still have to convert all their platforms other than iOS and WebGL.

------
mahyarm
Is unity planning to upgrade mono with the recent license changes? Or are
those license changes still not good enough?

Are they planning to improve it's VCS friendliness problems?

------
Illniyar
In Unity 4 there was this weird licensing model where certain IOS/android
features were not available for the personal addition (such as UDP broadcast,
or network access).

Is this still true? or is unity 5 personal addition really contains all
features?

~~~
msie
I believe you can deploy on iOS and Android for no extra cost.

------
DennisP
Does that mean it supports Oculus? The previous Personal version didn't.

~~~
ChrisClark
It does, and the previous version actually did support Occulus. They released
a free plugin for it (the free version of Unity) a few months ago.

~~~
antiuniverse
With Unity 4, only the Pro version supported the Oculus Rift plugin, because
the Rift SDK relies on render-to-texture support, which was disabled in the
free version.

Now the free version of Unity _also_ supports the Rift. That is indeed new.

EDIT: I am totally wrong!

~~~
ChrisClark
Nope, they specifically released a Rift plugin for the Free version of Unity 4
just a few months ago. [http://blogs.unity3d.com/2014/12/23/calling-all-vr-
enthusias...](http://blogs.unity3d.com/2014/12/23/calling-all-vr-enthusiasts-
target-the-oculus-rift-with-unity-free/) With full lens correction that needs
render-to-texture. Render-to-texture is still disabled in Unity 4 Free, but it
is specifically allowed just for the Oculus plugin.

~~~
antiuniverse
Oh, I stand corrected! Thanks for clarifying.

------
equil
from the changelog[1]:

• Removed “Make MMO” button from Edit menu. ;)

[1] [http://unity3d.com/unity/whats-
new/unity-5.0](http://unity3d.com/unity/whats-new/unity-5.0)

------
davedx
I just tested the WebGL export with a very simple 2D scene. It produced a 24MB
compressed JavaScript file. I'm guessing it's the entire Unity engine that's
portable to WebGL compiled with Emscripten. I wonder if it's possible for them
to leverage the Closure compiler to strip out the parts of the engine your
project does not use.

Anyone from Unity here who can comment on this?

------
hobarrera
Title should have read "freeware versions". Considering how much stuff around
mono is now free (as in FOSS, and not merely "freeware"), it's nice to state
the difference clearly to avoid confusion.

I had kinda gotten exited for a bit there. :(

------
yummybear
License server down for maintenance. Throw some more coal on it :)

------
msie
Now I can deploy to iPhone and Android for free!!! Yippee!!!

~~~
totalforge
There are still $1500 Pro exporters for IOS and Android listed on the site.

~~~
jeznav
You are always able to export to mobile with Unity Free (now Personal) but now
the Pro Mobile features such as Static/Dynamic Batching, Code Stripping which
is now included in the Personal version.

The only main difference is that you are paying $1500 to remove or have custom
splash screen when you deploy to mobiles.

------
rdudek
Nice response to Unreal Engine price change. Now the hard part is trying to
pick which one to learn and use. Competition is a good thing.

~~~
cwyers
The timing is really, really close, but it's hard to believe they were able to
roll all of this out in a day -- it's a new version on top of the licensing
change. I think it's more likely to be a response to Unreal Engine's earlier
price change of $19 a month than a response to yesterday's news.

~~~
rdudek
Yea, but they've been marketing Unity 5 for a long time now. Finally they just
said "screw it and release it to public".

~~~
maccard
I doubt they just said screw it lets release. This week is GDC so both
companies were likely to make large announcements during GDC IT just so
happens that epic didn't wait for their keynote, meaning it's more like unreal
said "screw it lets just go for free"

~~~
rdudek
They had to. Even their forums exploded with people asking about this. And
honestly, I'm very glad they did it. Now I have two game engines to mess
around with.

~~~
maccard
My point was that they had most likely planned on releasing during GDC anyway,
(which is this week)

------
sprite
I just bought Unity Pro with iOS and Android for personal use around a week
ago :(

~~~
nezza-_-
Their FAQ says they might offer refunds in that situation, contact them.

------
trekky1700
This is amazing news! Really glad render textures are now available.

------
jestinjoy1
Why no Linux version?

------
curiously
so im at crossroads here. I downloaded UE4 engine yesterday but now that Unity
is free I'm also taking a look at it to see what I can do with it.

Does the cloud build service lets you build iphone games without an apple
machine? What about for submitting games on the Apple market?

Also, what does unity do better than unreal? Is unity suitable for building
mobile games and high concurrent multiplayer games?

~~~
noio
Cloud build will probably send you iOS builds, but testing for those devices
through that service is going to be a pain. I'd say you really want to run
things in the simulator for a quick testing cycle.

~~~
ianlevesque
The iOS simulator is ridiculously faster than a real iOS device and far less
memory constrained. You can't develop an iOS game without an iOS device for
testing.

