Hi I imagine this is an easy question to answer for experienced developers but surprisingly searching both the forum and google I can’t find an answer to the following simple question:
Should I use the latest version of unity for developing a new game or are there considerations to which version I should use, and I’m not talking about beta versions I’m talking tested and fully released.
So basically for a brand new game should I always start developing it in the latest stable version of unity?
No, it is not. Because it depends on many things. It is not simple.
Ultimately you use whatever is the best for you. But it is a good thing if you think about what and how you want to do and check the state of the engine versions you’re looking at.
Do you make a short and simple game? You probably better off with LTS, especially if you aren’t planning to use any new (and usually not that stable) features.
Do you make something big and long to make? You may have more time to fiddle around with latest tech release and even (with proper preparation and only if you have time to waste) latest beta (it will become stable tech release by the time you finish).
So, you need to plan ahead if you want to make any informed decision and evaluate if you will have some breathing room if the aspiring not too stable engine versions contain bugs and you may need to work those around or wait for fixes with things. Obviously if you have relatively short, cemented deadlines, you should not choose anything but LTS. Otherwise estimate if you have time to learn/circumvent/wait for things if anything goes as not planned. If the answer yes, you can choose newer versions. Also if you need anything new feature, you need to choose newer version, but be prepared to the possible problems so plan accordingly.
That’s very helpful thank you. I’ll have to look into whats available for specific unity versions which is something I’ve never done as I’ve just been currently learning and following along with tutorials.
I’ve just looked into what LTS means I’d have thought that would be for longer projects. As I’d be able to stick with the same version but I take it you’re saying with a long project since it will have more time anyway. that it can be depending on if new technology helps worth the extra time of fixing bugs to updating to newer versions within that same project.
Can anyone else also add some input to this with their experience for which version should I go for, the only LTS versions I can see in unity hub are
2018.4.17f1(LTS)
2017.4.37f1(LTS)
So from what I gather if Im not after making a large game and dont need the new features in 2019 Im better of using a LTS version?
I would say if it is a small game that you can finish in a short time, like 3 months or less use a new version. If its a big project that is going to take a year+ go with LTS.
I actually look at it in the opposite way, but it mostly comes down to preference and project needs. For a small project that I’d plan on releasing in ~3 months, I’d want to make sure I’m using a stable version of Unity, so there aren’t any big surprises when I go to build the project. For a longer project that’s 2+ years away, I’d almost certainly want to be on the latest TECH release, or a very recent TECH release, as I’d want to keep evolving the project and getting new engine features over the course of the project.
Again, it depends on your needs. It’s certainly the case that some project lock into a Unity LTS version for several years. Probably it mostly comes down to whether a given version has all the features you want/need, and what you’re willing to trade in order to achieve those.
People imagine lots of crazy things which aren’t true. This case is no different
It is because like many simple questions, there aren’t simple answers.
Some things to consider:
Are there new features you need from the latest/greatest Unity versions?
If so, then obviously the latest/greatest Unity version might be the correct choice.
Are there old features recently deprecated or removed you need which would point you towards an older Unity version?
If you need something which is no longer fully supported or even removed, then an older release might be the better choice.
Are there any requirements coming from any 3rd party asset or add on you may want to include?
It can be a lot of work fixing issues in a 3rd party asset to make it work on a version of Unity which didn’t exist when it was written, if it is even possible to do. Sometimes it is best just to stick with the known good version for whatever assets you’re using.
What is the time frame for your release?
When possible, it is ideal to release on an LTS version. An LTS version will primarily only get fixes without any potentially project breaking new feature development. If this is a project you intend to develop and release quickly, you might want to start on the last LTS release (2018.4.x right now). If the project will release after the next LTS release occurs (2019.4.x is expected in a couple months) then getting on the latest tech release might be the better choice.
During development you should eventually lock down your Unity version, as upgrading Unity versions can sometimes cause unexpected issues you’ll have to address. After that you only take a new Unity version to fix specific issues you or your customers are experiencing, or for some must have new feature you need. LTS releases have the most polish, and upgrading to a later version of the same LTS release has the least risk, which is why planning for your project to finish on an LTS release is not a bad idea.
For example, if I was starting a project which will complete in 6 months, I’d probably go with 2019.3 right now, expecting to freeze on some iteration of 2019.4.
Thanks some very good advice, I wasn’t sure what to do and followed previous advice and went to 2019.3 I probably should have gone with the latest LTS but at least I know now for the future.
Something to add plus what others said. Currently, 2019.X has a lot of issues that you might run into. If you are new to Unity I recommend going to 2018 LTS where you will learn in a more safe way. However, this is just something more to take into account
That is also very helpful thank you, Im already running into a build issue when trying to build onto android
Copying assembly from ‘Temp/Unity.Timeline.dll’ to ‘Library/ScriptAssemblies/Unity.Timeline.dll’ failed
So Im thinking of using sourcetree to revert back to the version I was using 5.4.1 then upgrading to the 2018 LTS rather than 2019 since Im not even aware of the new 2019 features so likely wont use them