Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

2021 LTS is so buggy that we will definitely switch in the future

Discussion in 'General Discussion' started by EricFFG, Aug 5, 2022.

  1. The_Island

    The_Island

    Unity Technologies

    Joined:
    Jun 1, 2021
    Posts:
    502
    I feel like we wouldn't have these issues if everything was not so long. Like in my opinion, 3-6 months is not an acceptable timeframe to get a bug fix. But otherwise, I agree it could be a good improvement.

    It is always difficult to have these kinds of discussions because I don't want to share non-disclose or inaccurate information as I am not Unity, but just one dev. But I can share that everyone on every level is aware of these issues. We all genuinely want to improve our engine's stability as it impacts our customers and our ability to focus on innovation. I hope we will prove it to you with action and not just talk.
     
  2. neginfinity

    neginfinity

    Joined:
    Jan 27, 2013
    Posts:
    13,553
    I'm not asking you to sacrifice the rest of your life in the name of some hypothetical greater good or other nonsense like that.

    However you can still throw things at the wall and see if they stick, which requires minimum effort on your part.

    Meaning, for example, that "inspector system" you're working on - you could throw it unsupproted at github under BSD/MID/ZLIB license and if someone is interested, they'll take over. If it gets momentum it'll grow into something bigger.
     
    Gekigengar likes this.
  3. DEEnvironment

    DEEnvironment

    Joined:
    Dec 30, 2018
    Posts:
    437

    yes its not an easy subject
    one wonderful thing i noticed is we no longer get multiple api versions in a single unity version as they did before in 10x and prior .. i hope that never comes back as it was a nightmare to deal with change control

    one api per unity version is much better as we can then forget about checking older versions for new backported complete api framework getting added ..
     
  4. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,614
    So what's the pressure / force / blocking inefficiency / competing want which prevents this from happening? Because if there wasn't one and you all truly wanted it enough, it'd happen.

    I'm not saying that to be a jerk. I'm saying it because identifying whatever the preventative factors are is the first step in achieving meaningful action.
     
    pm007 likes this.
  5. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    20,943
    There is at least one major exception to this. Some platforms (eg the consoles) require that your game be released (and sometimes even updated post-release) with a minimum version of their SDK. If Unity provided source code it would be trivial to do this but since they don't you typically have to move to a newer release of Unity too.
     
  6. The_Island

    The_Island

    Unity Technologies

    Joined:
    Jun 1, 2021
    Posts:
    502
    From what I saw and experienced, I can say 20% of my time is spent fixing the bug, and the other 80% is on processes and waiting. This is why it get me. When I know I have a fix an user really needs but I have no way to give it to him. It leaves a bad taste. This is one issue but there are other things influencing which I probably can't share.
     
    Last edited: Aug 11, 2022
    Thygrrr, ontrigger, Armynator and 4 others like this.
  7. The_Island

    The_Island

    Unity Technologies

    Joined:
    Jun 1, 2021
    Posts:
    502
    Ok, I was confused. Sometimes I learn about new features out of nowhere and I overlooked your post. I was asking some people if they knew about any new auto-saving feature. I guess this answer my question haha
    Domain reloading is a recurrent issue. I learn to disable domain reload whenever I start a new project because I prefer to reinitialize my static variable myself or just not use them. It gives a good incentive for not using static, which is good. Not always possible, even more so if you use assets from the asset store which sometimes don't support it. I would still give it a try if your team can barely work https://docs.unity3d.com/Manual/DomainReloading.html
     
    xVergilx likes this.
  8. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    20,943
    Speaking of things that we wish were there I want a way to set the default settings for new projects. I've been using it whenever I need to make a little test project and it's so much nicer even with my high end computer.

    Of course I'd love to be able to make my own project templates but that's likely never going to happen.
     
    Last edited: Aug 11, 2022
  9. Flow-Fire-Games

    Flow-Fire-Games

    Joined:
    Jun 11, 2015
    Posts:
    305
    We do work without Domain Reloading. The problem is that there is new glitches in 2021 (started immediately when we switch), especially in the new Input System package as it even throws errors after a while.
    In our case still better than waiting 30 seconds to reload everytime you hit play, but especially when using the debugger after not restarting Unity for a couple of play/stop attempts it can become hard to judge if you have actual issues in your code or just the domain is starting to break down.
    Seems to be already better with .5 than .2 already though, the trend at least is promising
     
    Thygrrr likes this.
  10. Flow-Fire-Games

    Flow-Fire-Games

    Joined:
    Jun 11, 2015
    Posts:
    305
    The problem with that approach is that this also exposes you to the risk that if you stumble on issues during your update freeze and then you are left with either just living with the issue or having to get it fixed and do all your upgrades right during critical project phases.
    Your comparison to Unreal here doesn't make a lot of sense since it is open source, you can manually backport the specific fixes into your custom fork.
    Yes, this is a standard that most beginner indie devs are not able to maintain, in small projects you are probably fine with just staying on some outdated version.
    For more serious productions with a lot more content and dependencies to underlying systems, this is kind of a must if you can not rely on patches consistently improving the quality.

    In our project roughly half of the 2020 LTS releases couldn't even export the project, getting bugs fixed means waiting for months until they are handled.

    I'm aware that with higher Unity tiers you can also get source code access to set up a similar workflow.

    The issue however is that the Unity release system is set up to be SAAS while not delivering the required quality for (advanced) users to actually treat it like SAAS.
     
  11. Neto_Kokku

    Neto_Kokku

    Joined:
    Feb 15, 2018
    Posts:
    1,751
    Had this exact problem about two months ago. A 2018.4 project missed the submission date and the platform holder denied our waiver request, forcing us to upgrade to 2020.3.35f1 at the last minute. We were fortunate: it took "only" three days to get the game building and running on all target platforms, upgrade all workstations and our CI pipeline, and there wasn't any performance regression (it actually improved, including build times).

    Still, it was a gamble that could have gone wrong in unexpected ways. For example, we now have log spam on all consoles about FMOD errors for which we found no hits on this nor Sony's nor Nintendo's forums (doesn't seem to have adverse effects on shipping builds, fortunately).

    Conversely, years ago I worked on porting an UE4 game from Xbox to PS4, and by the time the project started the PS4 SDK used by the project's UE was no longer accepted for submission. We opted to backport the support for the latest SDK instead of upgrading to the latest engine version, which took about an afternoon of cherry picking git commits and rebuilding the engine.
     
  12. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,614
    Presumably you're able to work on other bugs or whatnot during that 80% of the time, though, right? I dearly hope so...

    Though what I don't get is what's happening during that time. Typically those pipelines are to ensure quality, avoid regressions, ensure documentation, etc., but that stuff doesn't seem to be happening, at least not in a way which has visible impact to customers. I.e. we do still get major regressions coming through.
     
  13. The_Island

    The_Island

    Unity Technologies

    Joined:
    Jun 1, 2021
    Posts:
    502
    Yes, obvious but it still delays everything by 1-2 months
    People are joking, but we have tests, QA, code review and need approval for every PR and backport. You can't ship something until everything is green. Imagine what it would look like otherwise :eek:
     
  14. greg-harding

    greg-harding

    Joined:
    Apr 11, 2013
    Posts:
    523
    It's a bit frustrating with all of these QA processes that the LTS branches can be so impacted by bugs that I would have expected to be covered pretty well by testing.

    eg. Unity 2021.3.6, 7 and 8 LTS all have some pretty showstopper Unity UI bugs at the moment by the sounds of it. It would be great if fixes for issues like this could ship faster rather than leaving the recommended stable versions of Unity quite broken for the primary UI system (and those issues also seem to fall off the known issues lists fairly often as well). Of course, every bug feels like this for devs using specific features so it's hard to prioritise at your end I expect.
     
    sacb0y and DwinTeimlon like this.
  15. MadeFromPolygons

    MadeFromPolygons

    Joined:
    Oct 5, 2013
    Posts:
    3,967
    We too are absolutely appalled at the severity of the UI bugs that are in the last 3 versions of latest LTS.

    It is becoming increasingly difficult to see the point of LTS at all, we seem to get no benefits especially when a lot of the required fixes either are in a non LTS version, or in some package version that requires a non LTS version.


    I am honestly just fed up with this LTS & Package hell.
     
    chingwa, carking1996, Thygrrr and 8 others like this.
  16. PanthenEye

    PanthenEye

    Joined:
    Oct 14, 2013
    Posts:
    2,049
    Reported a bug back in early June. Got a response from QA a few days ago that they can reproduce in 2021LTS. But they can't reproduce in 2022 and 2023 and they're asking me to test tech stream and alpha versions of Unity to confirm. The message ends with them saying they'll wait for my response.

    Like... if you can reproduce in LTS, then fix it for LTS? Isn't it what it's for? Why am I asked to do QA work for engine versions that can't be used for production at the cost of my time?
     
  17. SunnySunshine

    SunnySunshine

    Joined:
    May 18, 2009
    Posts:
    974
    That sounds super weird. Whenever I've submitted a report they've tested it in different versions themselves and then added to issue tracker when issue was confirmed. Very odd to put their responsibility on you.
     
  18. PanthenEye

    PanthenEye

    Joined:
    Oct 14, 2013
    Posts:
    2,049


    See for yourself.
     
  19. MadeFromPolygons

    MadeFromPolygons

    Joined:
    Oct 5, 2013
    Posts:
    3,967
    So respond and say "Im sorry but I am not doing the jobs of unitys own QA department. I have reported the issue, you have reproduced it - fix it on LTS or what is the point of LTS? Are you really telling me you cant fix this until I test on non-production ready versions of the editor for you? Please have your own staff do this and please kindly stop wasting customers valued time

    I will be waiting for your response

    Thank you, "

    Or something similar. Its to the point, still professional, but also a no-nonsense reply :) Hopefully will get them moving a bit.
     
    Thygrrr likes this.
  20. SunnySunshine

    SunnySunshine

    Joined:
    May 18, 2009
    Posts:
    974
    Wow. I mean, I like outsourcing as much as the next guy, but that truly is taking it to another level.

    It's like pointing out to the chef that the dish tastes weird, so the chef takes a bite, confirms something's off, and then asks you to confirm if the same problem exists in the other dishes they are offering. LOL
     
  21. Antypodish

    Antypodish

    Joined:
    Apr 29, 2014
    Posts:
    10,753
    I read email response in different way.
    For the first, email response does not indicates, that they will not fix it for an LTS. They acknowledge and reproduce the issue.

    They are unable to reproduce on the future tech version, and they require further acknowledgment, if the issue is not persisting. This is to ensure, that bug won't re-emerge. This is what this thread is discussing here. Otherwise it can happen, that bug is marked as fixed, then automagically reaper in later Unity versions.
    We try to prevent that, right?

    Maybe their QA test team is tiny and asking customers for further support. By all means, it doesn't sound to me, they try to outsource, rather to double/ triple confirm. I wouldn't be surprised that Unity engine team is underfunded. We hear here and there, that teams of specific techs are rather handful (low) . QA could be in no better situation. Assuming I am judging right.

    Maybe this way, they are able faster to identify and back port the fix to current LTS.

    The proposed further email reply, is too judging in my opinion.

    You could simply reply, along the line, "Sorry but I don't have installed further Unity versions, and not planning to do so in near time." or "I am busy with a project/job, unable to dedicate further time, for QA and testing." or something similar.
     
    Last edited: Aug 12, 2022
    Noisecrime likes this.
  22. Neto_Kokku

    Neto_Kokku

    Joined:
    Feb 15, 2018
    Posts:
    1,751
    This is one of the flaws of the "all bugs must be fixed in the latest version first then backported to LTS" policy. When a reported bug cannot be reproduced in the latest versions, it can fall into limbo.

    The bug could simply have been spotted and fixed directly by a programmer during their daily work, or disappeared as the result of a refactor, or maybe it existed in code that was replaced entirely.

    Whatever the reason is, the current policy doesn't seem to deal well with such cases since backporting a re-factor or rewrite is usually a no-go (for good reason). Such bug would need to be debugged and fixed directly on the LTS.
     
  23. The_Island

    The_Island

    Unity Technologies

    Joined:
    Jun 1, 2021
    Posts:
    502
    I read the email responses differently, like @Antypodish. They said they tested it on later Unity versions and couldn't reproduce it. So they are not offloading the work. They already did it. They seem to want to double-check the possibility you tried to upgrade and experienced the same issue. Also, there may already be a fix that landed on a more recent version and is currently getting backported but has not landed yet. Knowing the problem is not present in 2022 means you have the option to upgrade to fix the issue, which I know is not always possible but is an option. Overall you can tell him you don't have time to test it on the latest version, and I am pretty sure they will understand.
    Just to clarify that if the bug only exists in one version, we simply do the fix on the affect version. We don't introduce a fix that is not necessary on the latest version. And we do this often, so not really an issue. Sorry if it was misleading
     
    Last edited: Aug 12, 2022
    Gekigengar, Neto_Kokku and Antypodish like this.
  24. PanthenEye

    PanthenEye

    Joined:
    Oct 14, 2013
    Posts:
    2,049
    Def not an option, I already struggle with stability on LTS and I don't want to go through the endless upgrade cycle when 2022.1 inevitably stops getting new updates and I now have to get fixes in 2022.2, which has new issues. I've done this for a live project before, never again.

    Done.
     
  25. vertexx

    vertexx

    Joined:
    Mar 18, 2014
    Posts:
    379
    LTS...Let's try something. They just left the "else" off. Should be LTSE!
     
    Thygrrr likes this.
  26. sacb0y

    sacb0y

    Joined:
    May 9, 2016
    Posts:
    867
    I am also having this UI error which is shameful for an LTS release.

    Like most of my UI is broken, part of the fix is adding override sorting, but raycasts are also F***ed.

    I've never had an LTS update break things this much. Maybe this is a fix for a long term problem but they should save it for a future version not an LTS.

    2021 being "stable" is one thing not breaking my game in a single update is a whole other problem.

    A fix for this problem should be considered urgent if they want people to even consider upgrading cause now I'm about to annoy people who work with me by telling them we have to downgrade or some S***.

    IF ONLY UNITY HAD A PROJECT THEY COULD SINGULARLY TEST IF AN UPDATE BREAKS THE GAME. Man having an issue like this after a series of layoffs and cancelations is not a good look. Maybe that's kind of important for not pissing people off further...

    I just had to pick .6 instead of .5 >:/
     
    Last edited: Aug 14, 2022
    pm007 likes this.
  27. superpig

    superpig

    Drink more water! Unity Technologies

    Joined:
    Jan 16, 2011
    Posts:
    4,649
    That's an excessively generous interpretation, IMO.

    @PanthenEye would you mind DMing me the case number? I'd like to go and have a chat with the relevant members of the QA team about it.
     
  28. superpig

    superpig

    Drink more water! Unity Technologies

    Joined:
    Jan 16, 2011
    Posts:
    4,649
    Just to confirm what @The_Island said - that is exactly what we do. There are also situations where the bug does exist on both newer and older versions, and is fixed on the newer version, but the fix can't be back-ported to the older version (because the fix itself makes changes at a scale that introduce too much risk, or because the code diverged too much, etc) - and the way we often proceed in those cases is to develop a completely separate fix for the older version.
     
    Neto_Kokku likes this.
  29. sacb0y

    sacb0y

    Joined:
    May 9, 2016
    Posts:
    867
  30. PanthenEye

    PanthenEye

    Joined:
    Oct 14, 2013
    Posts:
    2,049
    Done. I didn't want to get anyone it trouble though, just expressing my frustrations with the engine.
     
  31. IOU_RAY

    IOU_RAY

    Joined:
    Jul 25, 2017
    Posts:
    127
    You're one of the only Unity team members on here I have found to be honest instead of giving bull PR responses and lying promises, so I really appreciate this discussion actually.

    I have never worked in a massive organization in development so it's nothing but conjecture here....however, it really seems like it's the top engineers that have made a total bureaucratic mess of the handling of the engines development progress over the years trying to make it feel snazzy and corporate. I think every single dev over the years has noticed a significant drop in quality of the engine and its priorities.

    I always figured many folks working at Unity know the growing disdain by all its customers, however I tend to wonder if the people responsible for these issues (higher up) have any clue, or any care, because it really seems like they don't.
     
  32. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,614
    Oh, I believe you. That's why I was talking about "visible" impact. If the processes weren't there things would be worse, but they already don't seem to be great, so it's not evident to us that it's happening. Particularly with bugs that return after a fix does make it in (so tests weren't expanded to cover the issue?) or major issues which happen for 2 releases in a row (being missed once is understandable, but a second time..?).

    It shouldn't, because this is no one person's fault. It's an organisational issue. Even if it was assigned to someone and then they got sick and left or whatever, then systems should be in place for it to get picked up and given to someone else. If they're not then the organisation is messing something up and needs to fix their processes.

    Young organisations often handle this stuff poorly early on. Unity is big enough and has been around for long enough that I think it's fair to expect better of them.

    Unity is large and complex enough that it's unlikely any one developer can hold the entire problem space for a given fix or update in their head. Even if they could, the whole thing is constantly changing, and one person's fix/update is likely to overlap with someone else's fix/update, etc. Something needs to be in place to make sure that overlaps are detected and handled properly, because without it you either slow things down or break more stuff.

    As The_Island says, imagine what things would be like without them. There are good reasons for those processes to exist in principle. The real question is whether they can be improved, and how?
     
    Last edited: Aug 15, 2022
    The_Island and superpig like this.
  33. Thygrrr

    Thygrrr

    Joined:
    Sep 23, 2013
    Posts:
    699
    I can absolutely confirm this happening in 2021.3 and 2022.1 and I have inadvertently damaged dozens of assets while working on refactoring OnValidate functions because of this.

    I am considering turning auto refresh off. But given that playmode "recompile after stopped playing" is also being ignored, I have doubts this will help. It's also very inconvenient.
     
  34. Thygrrr

    Thygrrr

    Joined:
    Sep 23, 2013
    Posts:
    699
    This was definitely their mantra for every single 2020 LTS release.
     
  35. unity_2jxHNVY36zr2mg

    unity_2jxHNVY36zr2mg

    Joined:
    Jan 17, 2020
    Posts:
    86
    After updating the project from 2019 LTS to 2021 LTS, we encountered a huge number of bugs, some features simply stopped working and it seems that there are no workarounds, the editor's performance dropped noticeably.

    I think we'll have to give up and rollback to 2019
     
  36. unity_2jxHNVY36zr2mg

    unity_2jxHNVY36zr2mg

    Joined:
    Jan 17, 2020
    Posts:
    86
    Hell, even the Stats popup (!) and Frame Debugger are broken, it's just unacceptable
     
  37. DragonCoder

    DragonCoder

    Joined:
    Jul 3, 2015
    Posts:
    1,677
    Have you deleted the library folder and done an asset-reimport?
     
  38. unity_2jxHNVY36zr2mg

    unity_2jxHNVY36zr2mg

    Joined:
    Jan 17, 2020
    Posts:
    86
    There was no library folder at the moment of upgrading. As a side note whole project import takes 45 mins vs 25 min in 2019.
     
  39. unity_2jxHNVY36zr2mg

    unity_2jxHNVY36zr2mg

    Joined:
    Jan 17, 2020
    Posts:
    86
    Unity has turned into a dump of different technologies that do not get along very well with each other, and with each version it only gets worse.
     
  40. CodeSmile

    CodeSmile

    Joined:
    Apr 10, 2014
    Posts:
    5,506
    Could you at least try to describe how features are broken and what bugs you get? Maybe there are trivial solutions to these and you‘re not helping yourself by simply asking what, if anything, can be done about it.
     
    Antypodish likes this.
  41. arkano22

    arkano22

    Joined:
    Sep 20, 2012
    Posts:
    1,891
    That's.... appalling :eek:. Why release something with a bug basically breaks the entire UI? It's like: "oh, by the way, there's this small issue that will render your game UI-less if you happen to deactivate the UI at some point, so just don't do that."
     
    blueivy likes this.
  42. Kamyker

    Kamyker

    Joined:
    May 14, 2013
    Posts:
    1,084
    Ask Input Package team why they did opposite and decided to add new feature of "Shortcut Support" that breaks many projects. Input package upgrades automatically hen upgrading LTS versions.
    https://forum.unity.com/threads/input-system-1-4-1-released.1306062/page-2
     
  43. unity_2jxHNVY36zr2mg

    unity_2jxHNVY36zr2mg

    Joined:
    Jan 17, 2020
    Posts:
    86
    I can say that it is broken or at least behave different in almost every major aspect:

    - Lots of critical editor bugs, and poor performance overall
    - Conditional compilation symbols bugs
    - Canvases
    - Physics components

    This list can be continued, but this is only after the 1st hour of testing

    There are no information and no explanation why some built in features just behave different.

    And finally the buggy statistics window:
    Paused (Correct)
    upload_2022-11-9_2-11-41.png
    Playmode (Broken)
     
    IOU_RAY likes this.
  44. greg-harding

    greg-harding

    Joined:
    Apr 11, 2013
    Posts:
    523
    Quick mention that Input System v1.4.4 was just released and it claims to fix the issues introduced in 1.4.0.
     
  45. Kamyker

    Kamyker

    Joined:
    May 14, 2013
    Posts:
    1,084
    Well, if someone ended up using this new feature that fix will break it again if package updates automatically with next Unity version.
     
  46. greg-harding

    greg-harding

    Joined:
    Apr 11, 2013
    Posts:
    523
    yeah, it's the circle of update life.

    Related: Every single time VS Code on Mac updates the C# / Omnisharp plugin it breaks everything with intellisense. I updated from v1.25.0 to v1.25.1 and today it stopped working and threw up a modal dialog telling me to reinstall Mono completely (with the version that's already installed). Usually I work through this stuff changing various extension settings and paths but I couldn't fix this one day, so rolled back. Zzz... quite tiring keeping the devstack working.

    Update: And most handily, today v1.25.2 is out which fixes everything up again.
     
    Last edited: Nov 10, 2022
  47. DragonCoder

    DragonCoder

    Joined:
    Jul 3, 2015
    Posts:
    1,677
    That's not helpful for debugging in the slightest.

    On the statistics window, what exactly do you mean? That tris and verts numbers are so low?
    The paused screenshot is from the same project?
     
  48. unity_2jxHNVY36zr2mg

    unity_2jxHNVY36zr2mg

    Joined:
    Jan 17, 2020
    Posts:
    86
    I don't have much time to describe theses bugs in a helpful way. I want to give a general impression.

    Yes it's the same project, its a couple of frames ahead.

    if you look closely at the video, the correct numbers sometimes slip through.
     
  49. LuiBroDood

    LuiBroDood

    Joined:
    Mar 13, 2019
    Posts:
    84
    I shut off vscode updates i really hope it doesnt update on me
    I spent like 5 whole entire days modding it up with extensions, then it updated breaking it to just add a worse version of a extension i already had lol
     
  50. Antypodish

    Antypodish

    Joined:
    Apr 29, 2014
    Posts:
    10,753
    Looks like you didn't disabled auto update. Or did something, which you didn't fully understood.
    Btw, that is not Unity related problem. So please keep it seperate from this thread.