Search Unity

Unity 4.7 to Unity 5.4. Should I do it??

Discussion in 'General Discussion' started by iEpic, Oct 18, 2016.

  1. iEpic

    iEpic

    Joined:
    Sep 29, 2013
    Posts:
    119
    I've been working on a project now for a few years and I was wondering if it would be worth it to upgrade to Unity 5.4 from Unity 4.7?

    I used tons of packages from the asset store from over the years and I'm pretty sure some don't work with unity 5.4.

    Are there big differences, and would you risk breaking your project to upgrade?
     
  2. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,620
    What benefits will you get from upgrading?

    How does the change in licensing effect you?

    Edit: To clarify, I do see that you're asking what the differences are. Aside from a slew of incremental updates, the biggest one is probably the revamped lighting system. If you're using light bakes a lot then this is going to be a lot of work for you to change over.


    In any case, it shouldn't be a "risk" to your project. Ideally you're using version control, and at least you're keeping backups, right? So aside from some time surely there's no reason not to give it a shot. Then you can see if any of the upgrades are relevant to you and how smooth the upgrade process is.

    For what it's worth, I've had stuff that I've taken from Unity 3 to 4, then 4 to 5, and from memory the only significant issues I've had are with 3rd party plugins. Mileage will vary, especially if you're using features that have changed significantly between major releases (like lighting between 4 and 5).
     
    Last edited: Oct 18, 2016
    Martin_H and Ryiah like this.
  3. Murgilod

    Murgilod

    Joined:
    Nov 12, 2013
    Posts:
    10,161
    You'll be working on your project for a few more years if you take an upgrade leap like that.
     
  4. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,794
    Be prepared to completely redo your lighting.
     
    Martin_H and JamesArndt like this.
  5. Kiwasi

    Kiwasi

    Joined:
    Dec 5, 2013
    Posts:
    16,860
    PhysX was also updated, so if your project had heavy physics tuning, be prepared to redo all of that. Especially if you used a wheel collider anywhere.

    There were also some changes to the scripting API, many of these are taken care of by the auto updater, but not all.

    A bunch of other minor stuff has been deprecated too, how much does your project rely on 'legacy' features?

    You do realise you don't have to break your project. Clone it. Run the upgrade on the clone. See what happens. Then make the decision.
     
    Meltdown, Martin_H, ZJP and 2 others like this.
  6. iEpic

    iEpic

    Joined:
    Sep 29, 2013
    Posts:
    119
    Yes I'm using version control.

    I'm actually making a 2D game, but I just downloaded 5.4 and tried to convert my project and I'm getting a lot of errors.

    The bad thing is, it's only showing a couple errors at a time.
    Then when I fix them, new errors pop up.
    I have no idea how many total errors.
     
  7. AlanMattano

    AlanMattano

    Joined:
    Aug 22, 2013
    Posts:
    1,501
    You can just try to open your 4.7 Project into 5.3.6 and look how many errors you get. The problem can be also same assets from asset store. In my case I've got only 400 errors.
     
  8. JamesArndt

    JamesArndt

    Joined:
    Dec 1, 2009
    Posts:
    2,932
    More than likely the biggest offenders you'll experience will be: The baked lighting changed so lightmaps will look wonky if they show at all in 5.4. Beast was removed and Enlighten replaced it for the lightmapping solution. PhysX saw a major upgrade to a new version and it changed some things. You'll notice mass values on Rigidbodies behave differently, if you're applying forces to physics objects those values will need tweaking, wheelColliders changed in a huge way as well. In your code some of the ways components are accessed changed...it would seem in newer versions of Unity you have to cache the components vs. accessing them on the fly (correct me if I'm wording this wrong). At the end of the day you'll see some broken stuff, but it's fixable. I usually make a "pros" and "cons" list when considering something like this. If your "pros" outweigh the "cons" of an upgrade then go for it. If you stand to benefit very little, I would ship your game via 4.7
     
    iEpic likes this.
  9. kenlem1

    kenlem1

    Joined:
    Mar 20, 2014
    Posts:
    40
    Yea... make the jump... you won't be sorry.

    I waited far to long to update my projects because I was afraid of the errors. Just dig in and start fixing them. It should take you too long. If you do run into something you can't handle just post here or ask a friend!
     
  10. Dave-Carlile

    Dave-Carlile

    Joined:
    Sep 16, 2012
    Posts:
    967
    Just to clarify a bit - many of the built-in properties for accessing common components (e.g. renderer) were removed, so you must call GetComponent to get a reference - I assume that's what you're referring to? You can still access them on the fly with the usual performance considerations, just no build-in property names to do it.
     
  11. drewradley

    drewradley

    Joined:
    Sep 22, 2010
    Posts:
    3,063
    Don't - just don't. In my experience, it will be faster for you to redo it in 5.4 than to attempt to upgrade.
     
  12. AlanMattano

    AlanMattano

    Joined:
    Aug 22, 2013
    Posts:
    1,501
    My suggestion is to use 2 weeks work to clean your game inside 4.7 , make a simple finish small demo, launch it as public beta so your U4 works and is not lost forever (color feeling lights physics). Then upgrade to fix the errors or better redo it in 5.4 with new light, shaders, physics, (and if the case input system, UI). Copy from 4.7 GO and past them to 5.4 one at the time. In this way is simple to build the new game fixing and updating errors. Yes, it will take long. And yes better to update each vr 5.x in the process. Unfortunately, Unity is updating fast! and a single indie person can be pushed to run fast. But in this way you will have the demo to compare colors and feelings with your final vr.
     
    Last edited: Oct 18, 2016
  13. Andy-Touch

    Andy-Touch

    A Moon Shaped Bool Unity Legend

    Joined:
    May 5, 2014
    Posts:
    1,485
    1) Back your project up.
    2) Try to upgrade it.
    3) If all fails and it looks like too much work updating everything to the feature-set that is in 5.4 then fall-back and release your game with the 4.7 version.
     
  14. superpig

    superpig

    Drink more water! Unity Technologies

    Joined:
    Jan 16, 2011
    Posts:
    4,659
    That's correct - the old "shortcut properties" were never caching anything for you, they were just shorthand for doing GetComponent.
     
  15. iEpic

    iEpic

    Joined:
    Sep 29, 2013
    Posts:
    119
    I'm getting tons of errors, and the physics are completely broken.
    Are there any major improvements or major features in Unity 5 that 4 doesn't have that would be good for a 2D platformer??
     
  16. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,203
    Upgrading solely for the sake of upgrading is almost never good advice. Unless there are clear advantages that outweigh the disadvantages you're far better off skipping new releases as they come out.
     
    Kiwasi and iEpic like this.
  17. iEpic

    iEpic

    Joined:
    Sep 29, 2013
    Posts:
    119
    The reason I even considered it, is because I'm having a lot of 2D physics problems for some reason with 4.7 and people keep telling me how I can fix it, but 4.7 doesn't have all the extra 2D physics features.
     
    JamesArndt likes this.
  18. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,620
    Can you give some examples of issues?

    At this stage we have no idea if Unity 5 will help you because we haven't a clue about what you're doing. For some things the upgrade would be great, for other stuff it'll be nothing but a waste of time. Details are important.
     
    Kiwasi likes this.
  19. theANMATOR2b

    theANMATOR2b

    Joined:
    Jul 12, 2014
    Posts:
    7,790
    There were some significant improvements/additions to 5.x in 2D. From memory - the platform collider, fixes to the polygon collider, better 2D physics, and others.
    Might be helpful to look at the release notes of all versions starting with 5.0 to gauge if any of the improvements are 'worth' the hassle of upgrading.
     
    Ryiah, JamesArndt and Kiwasi like this.
  20. yoonitee

    yoonitee

    Joined:
    Jun 27, 2013
    Posts:
    2,363
    NO. Don't do it.
     
  21. passerbycmc

    passerbycmc

    Joined:
    Feb 12, 2015
    Posts:
    1,741
    if you do it, create a new branch to evaluate it. On a previous project, at my work we were more or less forced to upgrade due to our toolset needing the extra memory offered by 64bit.

    It was not a easy process, it trashed our lighting, and completely trashed or workflow for building and compiling levels. It took a team of 3 SE and a TA a month to do the port and get it mostly working and then we still had related bugs and issues for a few months after.

    Keep in mind that this was back during unity 5.1, and in my opinion 5.1 was not ready but 5.3 and 5.4 have been pretty stable and most of the show stopping light bugs we have experienced were sorted out in 5.3. Even if we did this port today, it still would have been a lot of upfront labour.
     
    theANMATOR2b and Kiwasi like this.
  22. ArachnidAnimal

    ArachnidAnimal

    Joined:
    Mar 3, 2015
    Posts:
    1,835
    passerbycmc likes this.
  23. Moonjump

    Moonjump

    Joined:
    Apr 15, 2010
    Posts:
    2,572
    I prefer Unity 4 to Unity 5, but I have just switched because I develop for mobile and know platform support is likely to be broken by something at some point and will have to switch. So I am getting it out the way before launching my next game.