Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Join us on Thursday, June 8, for a Q&A with Unity's Content Pipeline group here on the forum, and on the Unity Discord, and discuss topics around Content Build, Import Workflows, Asset Database, and Addressables!
    Dismiss Notice

Official Notice on DOTS compatibility with Unity 2021.1

Discussion in 'Entity Component System' started by MartinGram, Apr 12, 2021.

Thread Status:
Not open for further replies.
  1. xVergilx

    xVergilx

    Joined:
    Dec 22, 2014
    Posts:
    3,043
    It would probably act as "tag", bitmask alike on chunk level, but without wasting extra memory. I doubt that feature was ever intended to be per entity.

    This is just my speculation though.
     
  2. tertle

    tertle

    Joined:
    Jan 25, 2011
    Posts:
    3,539
    My maths was completely wrong and I deleted this part but you quoted me pretty quick! That said I'm pretty sure it was per component per entity but yes grouped by bitmask.
     
    xVergilx likes this.
  3. PublicEnumE

    PublicEnumE

    Joined:
    Feb 3, 2019
    Posts:
    729
    This is a plausible scenario! To be certain, development rarely goes as planned.

    In this scenario, one would still expect the company to know known that 2021.1 wouldn’t be compatible with Entities 0.17 before it was released. At that point, they could have given us a heads up. But maybe this incompatibility was something obscure that slipped through the cracks of their QA process.

    But it is confusing: If 2021.1 contained a change which broke its compatibility with Entities 0.17, and it was obscure enough to slip past QA, then one would expect it to be something small enough to address in the next Unity version or Entities package.

    A change large enough to sideline Entities compatibility for months is something you would expect people to see coming. That sounds more like a larger change to the vision of DOTS architecture. Or a planned change to Entities which would require a long-term, internal, branching of the engine.

    Something like that - you’d hope - Unity would have known about for more than a week or three. It’s a little confusing what could happened to produce this large of a capability problem, with such little internal notice. And if they had more notice, then they could have informed their customers about the incompatibility sooner.

    They still can. I hope there’s a blog post soon.
     
    bb8_1 and Ramobo like this.
  4. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    9,991
    Is this "Hey, here are some potentially major news, but we're unable to elaborate at the moment, go wild" a new communication tactic or something? Is it supposed to trick the community into thinking the worst case scenario (so that certain other community members can revel in how ridiculous the community is being?)

    This is the 3rd time Unity has done this in semi-recent memory.

    And it sucks.
     
    SMHall, phobos2077, NotaNaN and 10 others like this.
  5. DreamingImLatios

    DreamingImLatios

    Joined:
    Jun 3, 2017
    Posts:
    3,728
    Remember, 2021.1 wasn't released until after Entities 0.17, so this "incompatibility" is more like "wasn't tested in QA and has no upgrade path to Entities 0.18". Entities 0.18 is where the real incompatibility will likely become present and I think that will have more to do with how they solve their internal QA cycle problem than anything in 2021 that they foresaw being problematic.
     
    MartinGram likes this.
  6. PublicEnumE

    PublicEnumE

    Joined:
    Feb 3, 2019
    Posts:
    729
    I would assume Unity doesn’t release new engine versions without first testing them against their currently released packages. So they normally would have caught the incompatibility with 0.17 then.

    Maybe experimental packages are omitted from that kind of process.
     
    Last edited: Apr 19, 2021
  7. Lurking-Ninja

    Lurking-Ninja

    Joined:
    Jan 20, 2015
    Posts:
    9,009
    Released yes, probably preview too, but certainly not experimental ones (at least not extensively). It happened many times that new version broke some experimental packages. I'm playing around with a couple from time to time.
     
    PublicEnumE likes this.
  8. TheOtherMonarch

    TheOtherMonarch

    Joined:
    Jul 28, 2012
    Posts:
    559
    Didn't they already say that they are reimaging ECS. Seems like the more likely explanation.

    0.18 has already been in QA for awhile. The next release after that could very possible be with 2022.1 beta or even later.
     
    PublicEnumE likes this.
  9. PublicEnumE

    PublicEnumE

    Joined:
    Feb 3, 2019
    Posts:
    729
    Do you remember where they said this? I’ve been having trouble tracking it down.
     
    Last edited: Apr 19, 2021
  10. desertGhost_

    desertGhost_

    Joined:
    Apr 12, 2018
    Posts:
    254
    They've talked about making ECS simpler to use in a number of places. Briefly in the GDC overview they talked about making entities more accessible. They want to make changes to workflows related to prefabs, UX, etc. Here is the link for the point at the talk where they discuss DOTS.

    As far as reimagining goes, I can't remember a time where they used that term explicitly.
     
  11. PublicEnumE

    PublicEnumE

    Joined:
    Feb 3, 2019
    Posts:
    729
    Damn - anyone who’s questioning Unity’s commitment to Entities should click on that link.

    they make it very clear that ECS is a part of DOTS that’s not going anywhere. And that they aren’t putting new features out as fast to ensure their stability.
     
    Last edited: Apr 19, 2021
  12. MadeFromPolygons

    MadeFromPolygons

    Joined:
    Oct 5, 2013
    Posts:
    3,744
    I think its pretty obvious that the 3 pages of conjecture and slight rants, could have been avoided by just giving clear information instead of dropping a half-baked explanation and then going radio silent.

    Lots of paying customers asking very sensible questions that are falling on deaf ears, which would be fine if it wasnt a communication tactic that has already been worn thin by this point

    Anyway, not going to speculate on anything given we dont really know anything, but again that could be resolved by actually communicating properly with the community and not going radio silent after dropping news
     
  13. MartinGram

    MartinGram

    Unity Technologies

    Joined:
    Feb 24, 2017
    Posts:
    72
    First off, thanks everyone for the comments and follow ups.

    I'll catch up with some of the questions on this thread throughout the day and hopefully that will bring some more clarity. Before doing so, I will address a couple of discussions that keep coming up.

    1) We are deeply engaged in building DOTS. When we are quiet, we are focused on building and discussing internally. It doesn't mean we have stopped working. As Ralph mentioned in the GDC keynote, one of the big topics that we need to solve going forward is how to better integrate all of DOTS into Unity. This is complicated and takes time, and when we have updates we will continue to post them right here on this forum.

    2) This post was created exclusively to create awareness that there are compatibility issues with the current entities releases and the 2021 tech stream. Making that information available right away was important to us, even though it is part of a larger announcement that we are working towards. I know that we have not been sharing a lot of information as of late, and I hope that we can rectify that going forward.

    Thanks again for all the feedback.
     
    mgsvevo, phobos2077, JoNax97 and 40 others like this.
  14. MartinGram

    MartinGram

    Unity Technologies

    Joined:
    Feb 24, 2017
    Posts:
    72
    We will very likely stay close to the 2020LTS.
     
  15. MartinGram

    MartinGram

    Unity Technologies

    Joined:
    Feb 24, 2017
    Posts:
    72
    It is too soon to dig into this in much further detail, in general, we need to be able to develop DOTS and Unity without adding extra risk to our customers. So we are investigating how we can move quick(er) while limiting risk.

    It is not well known, but there are quite a few projects in the making using DOTS that are looking to ship over the next few years. So while we have to move forward, we also have to create a product with which you can ship your titles.
     
  16. MartinGram

    MartinGram

    Unity Technologies

    Joined:
    Feb 24, 2017
    Posts:
    72
    This is one option we are evaluating.
     
  17. MartinGram

    MartinGram

    Unity Technologies

    Joined:
    Feb 24, 2017
    Posts:
    72
    You will be able to continue to use the latest versions of Burst with Entities going forward. Entities is built on top of the Burst ecosystem, and they will continue to evolve together.
     
  18. DK_A5B

    DK_A5B

    Joined:
    Jan 21, 2016
    Posts:
    110
    @MartinGram, how are you planning on dealing with the fact that the Hybrid Renderer is dependent on both the Entities package, which is now stuck on 2020 LTS, and SRP (URP/HDRP) which continues to be developed on the 2021 tech stream? As it stands, this means anyone wanting to use the Hybrid Renderer package is stuck on the version of HDRP/URP that is compatible with 2020 LTS.

    For URP in particular, this is quite a significant setback as many basic features are still not available in URP since it is under active development. For example, Point Lights didn't become available in the URP until 11.0.0, which requires 2021.x. So, based what you've described, if you want to use the Hybrid Renderer and URP, you can't have Point Lights (which I'd say are a pretty basic feature of a modern render pipeline).


    I'm calling this out not because it is the only issue like this, but rather just to provide a single concrete example of the sort of problems that are going to arise out of locking Entities to 2020 LTS while other packages (like the SRP packages) continue to be developed on the 2021 tech stream. Any package like Hybrid Renderer which has multiple dependencies that are now following different paths will begin to develop these sorts of divergences/issues, and they will only become more numerous and acute the longer Entities is locked to 2020 LTS. What is Unity's plan for dealing with this?
     
    Last edited: Apr 20, 2021
  19. DK_A5B

    DK_A5B

    Joined:
    Jan 21, 2016
    Posts:
    110
    Also, thanks for responding to the feedback and questions.
     
  20. optimise

    optimise

    Joined:
    Jan 22, 2014
    Posts:
    1,802
    @MartinGram. Ya. I rather stick to Unity 2020 LTS to get more frequent update than waiting until over end of May 2020 new Entities version still haven come out. Btw can u make sure this 2 bugs will be fixed when Entities 0.18 is released? It's critical shipstopper bug that I can't roll out Android Il2CPP build. It just crash when I launch it.


    1) Possibly Subscene related crash bug
    (Case 1329969) [IL2CPP][Entities] Android build crash
    (Case 1315723) [IL2CPP][Physics][Netcode][Entities] Android build crash
    (Case 1311658) [Netcode][IL2CPP] Player build crash or not working properly
    https://issuetracker.unity3d.com/is...on-null-pointer-dereference-when-launching-it
    https://issuetracker.unity3d.com/is...ilds-crash-with-entities-and-netcode-packages
    https://issuetracker.unity3d.com/is...rashes-when-running-x86-build-on-a-x64-system


    2) Possibly Physics related crash bug
    (Case 1315723) [IL2CPP][Physics][Netcode][Entities] Android build crash
    https://issuetracker.unity3d.com/is...-crashes-on-signal-11-sigsegv-upon-app-launch
     
    echeg likes this.
  21. JohnnyTurbo

    JohnnyTurbo

    Joined:
    May 17, 2017
    Posts:
    31
    I understand you may not be able to talk about specific dates, but will this have an impact on the release of 0.18? Or will it not be affected because of the decision to remain on 2020 LTS for the time being?

    Thanks!
     
    Orimay and desertGhost_ like this.
  22. Thermos

    Thermos

    Joined:
    Feb 23, 2015
    Posts:
    147
    A wild guess, better integration with engine requires engine side ui changes, like hybrid scene view support, hybrid hierarchy view support, and even some engine core changes.

    These changes might already exist and ECS team is building features based on them, also they don't want these changes impact the stability of current TECH stream. So the decision is Entities 0.2 and above will only be available until those features are stable enough to ship with TECH stream engine.

    This is a good thing, means ECS core is nearly at final stage, no more weekly API changes. And we can expect to have an ECS/MonoBehavior hybrid engine later this year.
     
    phobos2077, NotaNaN, Occuros and 2 others like this.
  23. abixbg_unity

    abixbg_unity

    Joined:
    Nov 9, 2020
    Posts:
    1
    One thing I am wondering is if UT is giving priority to either Conversion Workflow or Live Link. Personally I suspect LL is the reason for this issue, since it also involves reimaging of the very core of the Unity Editor and dev workflow in general. CW is some kind of counterproductive concept that I think only exist because they decided to release ECS too soon.
     
    Ramobo likes this.
  24. RoughSpaghetti3211

    RoughSpaghetti3211

    Joined:
    Aug 11, 2015
    Posts:
    1,690
    For my current project this is the most pressing issue.
     
    reeseschultz and Fribur like this.
  25. scottjdaley

    scottjdaley

    Joined:
    Aug 1, 2013
    Posts:
    144
    I'm also concerned about missing out on SRP and URP features. Screen space shadows is another example of a feature that was unavailable in URP until 11.0.0.
     
    RoughSpaghetti3211 likes this.
  26. Guedez

    Guedez

    Joined:
    Jun 1, 2012
    Posts:
    796
    So Entities 0.17 is 2021.1 compatible, but 0.18 and forward will be not, or 2021.1 is absolutely not compatible with ANY of the Entities package versions?
     
  27. TheOtherMonarch

    TheOtherMonarch

    Joined:
    Jul 28, 2012
    Posts:
    559
    Entities 0.17 is not compatible with 2021.1
     
  28. Guedez

    Guedez

    Joined:
    Jun 1, 2012
    Posts:
    796
  29. Guedez

    Guedez

    Joined:
    Jun 1, 2012
    Posts:
    796
    I totally can't understand what is compatible with what.
    Is 2021.1 compatible with Entities 0.15? Entities 0.16? Entities 0.17? Entities 0.18? Or with no Entities package at all? What is the incompatibility? Some obscure feature or the whole thing breaks down and bricks your computer if you try it at all?
    I don't understand neither the extent or severity of any of what is being discussed!
     
    TheSmokingGnu and thelebaron like this.
  30. Fribur

    Fribur

    Joined:
    Jan 5, 2019
    Posts:
    125
    Well the facts are pretty straight forward, not sure what is so difficult about that. The wild speculation in this thread is mostly about "WHY"..., but that doesn't change anything about those facts.

     
  31. Guedez

    Guedez

    Joined:
    Jun 1, 2012
    Posts:
    796
    So no version of Entities work on 2021.1? the main post says "future releases", meaning Entities 0.16 at least should work on 2021.1, hence why I don't understand what does and what does not.
     
  32. desertGhost_

    desertGhost_

    Joined:
    Apr 12, 2018
    Posts:
    254
     
    MadeFromPolygons likes this.
  33. DreamingImLatios

    DreamingImLatios

    Joined:
    Jun 3, 2017
    Posts:
    3,728
    Does it matter? Even if it was some obscure feature that makes Entities 0.17 not work in 2021.1, do you really want to keep using Entities 0.17 and 2021.1 for the next year or so? Or would you rather have an upgrade path to Entities 0.18 which almost certainly will be even more broken in 2021.1?
     
  34. Guedez

    Guedez

    Joined:
    Jun 1, 2012
    Posts:
    796
    I guess it does feature the word current, I missed that.
    Yes
    My current compile times are 50 seconds each time I change anything anywhere in my code, unless this is not what I think it is, I really really want to update to 2021.1 even if I can't use Entities 0.17+ and must remain in Entities 0.16
     
  35. PublicEnumE

    PublicEnumE

    Joined:
    Feb 3, 2019
    Posts:
    729
    Entities 0.16 will not be compatible with Unity 2021.1.

    No Entities packages of any kind (0.1 through 0.17 and beyond) are expected to be compatible with any Unity 2021 tech stream builds.

    The only way to safely use Entities 0.17 and beyond is to stay on Unity 2020 LTS.
     
    Guedez likes this.
  36. Guedez

    Guedez

    Joined:
    Jun 1, 2012
    Posts:
    796
    Well damn, I was hyped to update to 2021
     
    PublicEnumE likes this.
  37. PublicEnumE

    PublicEnumE

    Joined:
    Feb 3, 2019
    Posts:
    729
    It would appear 2020 isn’t quite done with us yet.
     
  38. SebLazyWizard

    SebLazyWizard

    Joined:
    Jun 15, 2018
    Posts:
    217
  39. PublicEnumE

    PublicEnumE

    Joined:
    Feb 3, 2019
    Posts:
    729
    It’s good that it’s a solution that’s working on your end. But I wouldn’t feel comfortable doing this. If bugs started appearing, there’d be no way to see them coming, and no expectation that they’d be fixed. They could happen on the last day before you planned to submit a build to Steam - or worse - after you’ve released. At the very least, I wouldn’t do anything besides personal experiment work that way - I would steer clear of any production work, or anything that’s intended to be sold.
     
  40. Tanner555

    Tanner555

    Joined:
    May 2, 2018
    Posts:
    78
    Honestly by the time Unity releases Entities 0.18.0 and 0.19, we'll probably already be close to a new 2021 LTS release. I'm sure the community will be able to find simple fixes anyways.
     
    apkdev likes this.
  41. Ruchir

    Ruchir

    Joined:
    May 26, 2015
    Posts:
    925
    Did I miss something or was the last DOTS package update 5-6 months ago? :(
     
    Orimay likes this.
  42. MadeFromPolygons

    MadeFromPolygons

    Joined:
    Oct 5, 2013
    Posts:
    3,744
    Its going slow yes, and it is now going to go slower by the sounds of it. At least if you want to maintain compatability with latest SRPs.

    Honestly packages are a complete joke, why are SRPs still causing update compatability nightmares for people? This just is not working.

    It shouldnt always be a puzzle of "if I update to this in order to get X, what will I lose due to unitys incompatability with itself in the new version?"
     
    Ramobo, Orimay, MNNoxMortem and 2 others like this.
  43. MartinGram

    MartinGram

    Unity Technologies

    Joined:
    Feb 24, 2017
    Posts:
    72
    I think that your assumption is a dangerous one to make, especially when the original post explicitly mentions that there are and that there will be compatibility issues with Entities and the 2021 releases.
     
  44. optimise

    optimise

    Joined:
    Jan 22, 2014
    Posts:
    1,802
    Hi @MartinGram. Will next Entities version i.e. Entities 0.18 coming anytime soon or it's skipped to other new version?
     
    phobos2077, Orimay, Haneferd and 2 others like this.
  45. Guedez

    Guedez

    Joined:
    Jun 1, 2012
    Posts:
    796
    Honestly, so much headaches would be
    Without further info on what/how exactly is incompatible, it's impossible to try to get things working regardless of warnings without making dangerous assumptions
     
    phobos2077 likes this.
  46. SebLazyWizard

    SebLazyWizard

    Joined:
    Jun 15, 2018
    Posts:
    217
    I know, but I have no choice.
    I would either have to manually back port HDRP 12 features or keep Entities compatible in any way.
    The later is a less complex task atm, so that's the way to go.
     
  47. exiguous

    exiguous

    Joined:
    Nov 21, 2010
    Posts:
    1,746
    That sounds a bit as using 2020 releases would be free of "issues". As many people mentioned beeing cut off especially from developments in render pipelines creates other issues for them. So people are forced to decide between two unfortunate, lacking and undesirable choices. Even without knowing the underlying reason (which at least some people could generate understanding and good will for).
    When UT want's to "promote" ECS and create some "hype" around it, just letting their users in the dark is one of the worst choices you can make (only narrowly behind abandoning it). If you want people spending their time on ECS and HELP you develop it, it seems very unfair when you just go radio silent and let them in the dark. "Secrecy" is the direct opposite to "democratizing game development". I'm sorry to say that but UT has lost a lot of my trust and "enthusiasm" by that single decision.
     
  48. scottjdaley

    scottjdaley

    Joined:
    Aug 1, 2013
    Posts:
    144
    I updated to the unity 2021 beta in December of 2020 to get the latest URP package. I was a little reluctant to jump on a beta version, but it seemed like all of these preview/experimental packages were being developed on the latest available versions of unity (although URP isn't even labeled as preview or experimental). When entities 0.17 came out, I picked that up immediately as it addressed some bugs I was experiencing. I assumed based on previous upgrades that it would work with the latest version of unity

    Then I see this thread three months later saying that entities will not be compatible with unity 2021. This was a little confusing to me since I had already been working with entities 0.17 on unity 2021, but I figured that the compatibility issues would only get worse with 0.18 and beyond. Now I'm forced to either downgrade to unity 2020 and throw away 4 months of work that built on top of URP 11, or downgrade to entities 0.16 and throw away 3 months of work that built on top of 0.17.

    I've gone the route of downgrading unity for my project, but it wasn't trivial. I also had to completely remove a feature that depended on screen space shadows (only in URP 11). I'm also not looking forward to waiting a year or more for any URP and shadergraph updates.

    The most frustrating part for me is that we weren't notified about this incompatibility until a couple of weeks ago despite both releases (2021 beta and entities 0.17) happening months ago.
     
  49. PublicEnumE

    PublicEnumE

    Joined:
    Feb 3, 2019
    Posts:
    729
    At this point, it seems likely that an internal communication mishap led to an incompatibility with ECS that the DOTS team wasn’t aware of until just a few weeks ago.

    They told us ASAP, even before they had a plan for how to address it going forward, to give us a heads up before we started running into problems.

    They likely aren’t happy about it either, and are probably working on figuring out how to fix things. I imagine they’ll probably announce what they’ll do as soon as they’ve proven to themselves it can work.

    I was upset earlier, because I figured Unity was sitting on this news for months.

    But now that doesn’t seem likely. It seems like a development mistake happened between departments. It’s an unfortunate one, but if we’re being honest, they’ve happened to most of us.

    Guess that’s why ECS is still considered in preview.
     
    Orimay, scottjdaley, NotaNaN and 2 others like this.
  50. Guedez

    Guedez

    Joined:
    Jun 1, 2012
    Posts:
    796
    Wouldn't it be easier to just stop updating Unity and it's packages instead? You already had a working setup with both 2021 and entities 0.17.
    And what were the versions in question? I might just update to those and keep working regardless of some 'unspecified future incompatibility', or just follow:
     
Thread Status:
Not open for further replies.