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. Dismiss Notice

Feedback DOTS Sentiment?

Discussion in 'Entity Component System' started by Timboc, Aug 23, 2020.

  1. davenirline

    davenirline

    Joined:
    Jul 7, 2010
    Posts:
    943
    Late to the party because I thought this was an old thread that I've already checked before. I just found that I haven't read this thread yet. So I'll drop my sentiments.

    I absolutely love DOTS. I've been using it ever since the Inject days. It has helped our main project tremendously that I attribute it as the main driver of its success. The API changes along the way have been a challenge but I was able to fix our projects successfully (thanks to this forum). I would say the scarce documentation is decent enough for any capable programmer to follow along and start making projects. I know that there are some fantastic devs here that delves deep. They use pointers and other unsafe stuff, make their own job types, or roll up their own skinned animation system, etc. I need not be those type of developers. I just use what's in the available documentation and I think I'm doing fine.

    My whole experience might be positive hugely in part because of the projects I'm involved in. They're mostly single player 2D simulation games. Thus, I didn't need networking, physics, or 3D animation. Our games also don't need level design so I haven't experienced those conversion/subscene headaches. I was able to roll up a framework for 2D rendering using DOTS and we've been using that ever since. I only had to deal with Jobs, Burst, and Entities. They're all working great. I don't have much complaints because I'm able to work around any problem I had. I can confidently say that these 3, Jobs, Burst, and Entities, are very usable. I'd be totally shattered if DOTS would be shelved like that one guy suggested. (Can't use it? Use MonoBehaviours with normal C#. Simple as that.)

    I'm hoping that Unity is still expanding on DOTS, improving it, and filling in the gaps. I would love a vanilla 3D animation system that I can confidently use with pure ECS. I'm still waiting for component enable/disable feature. I have lots of systems that are prepared to use that.
     
    adammpolak, calabi, bb8_1 and 5 others like this.
  2. sebas77

    sebas77

    Joined:
    Nov 4, 2011
    Posts:
    1,594
    For our use case DOTS is perfect. Jobs and burts are production ready and we use them extensively. Burst is a miracle of technology and its value is for me the greatest among not just dots but the whole unity ecosystem. We don't use ecs, however the value of having an ecs based engine for us is very much fundamental. We see dots ecs as the tool to move the engine to data oriented code, not a tool to make games. In this sense dots havok has been for us production ready even if it's in preview.
     
  3. koirat

    koirat

    Joined:
    Jul 7, 2012
    Posts:
    2,008
    I'm using Burst and Jobs, no ECS does this mean I'm using DOTS ?
     
  4. sebas77

    sebas77

    Joined:
    Nov 4, 2011
    Posts:
    1,594
    Yes
     
    apkdev likes this.
  5. HellGate94

    HellGate94

    Joined:
    Sep 21, 2017
    Posts:
    132
  6. apkdev

    apkdev

    Joined:
    Dec 12, 2015
    Posts:
    263
    Yes, it's ok to use part of the tech stack
     
  7. sebas77

    sebas77

    Joined:
    Nov 4, 2011
    Posts:
    1,594
  8. sebas77

    sebas77

    Joined:
    Nov 4, 2011
    Posts:
    1,594
    It's fundamental to remember that data oriented design can be achieved without ecs. The two concepts are not synonims
     
    Anthiese, andreiagmu, bb8_1 and 4 others like this.
  9. koirat

    koirat

    Joined:
    Jul 7, 2012
    Posts:
    2,008
    Yes but it looks like "DOTS" is all about ECS.
    If you don't use it you don't use DOTS.

    You can use some data oriented design even without Jobs and Burst but you cannot say you are using DOTS.
     
    AlBob75 likes this.
  10. Lurking-Ninja

    Lurking-Ninja

    Joined:
    Jan 20, 2015
    Posts:
    9,904
    2/3 of DOTS isn't ECS and isn't about ECS, so you're just plainly wrong.
     
    sebas77 and Anthiese like this.
  11. TheOtherMonarch

    TheOtherMonarch

    Joined:
    Jul 28, 2012
    Posts:
    791
    Unity has a really weird way of defining what a tech stack is. You would think stuff like animation and physics would be part of the tech stack but they are not. Only the bottom three layers are included.

    I actually think it would be better if they referred to the ECS ecosystem more explicitly.
     
  12. Lurking-Ninja

    Lurking-Ninja

    Joined:
    Jan 20, 2015
    Posts:
    9,904
    Obviously we can talk about what could be and what would be, but we can't really overrule what it is.

    I'm doing this software business for so long, now I'm immune to these kind of stuff, I'm perfectly happy if Unity calls this three stuff DOTS and I would be equally happy if they decide to call the data-oriented versions of all major components of a game engine together DOTS. It is really not important. What is important is to try to use the same phrasing, the same labels in order to communicate. When I say DOTS, I mean these three components because Unity defined it this way. I do not think only ECS. If I think only ECS, I say ECS.
    And this is actually important, otherwise we just talk over each other's head.
     
  13. thelebaron

    thelebaron

    Joined:
    Jun 2, 2013
    Posts:
    825
    Might be best to think of animation, physics et all as the layers on top of ECS, they are obviously part of DOTS but its not worth it to mention every single obscure package like dots editor, dots platforms, dataflowgraph in marketing materials or beginner documentation.
    Anyway the entities docs echo this

    firefox_txohDZ9OUY.png
     
  14. sebas77

    sebas77

    Joined:
    Nov 4, 2011
    Posts:
    1,594
    Unity hasn't been great to market this tech (which caused a lot of confusion among the users), but nevertheless, this tech has a huge potential and I am looking forward to further development.

    Let me put in this way, just to be clear: without DOTS we couldn't make our current product, at least with Unity.
     
    adammpolak, bb8_1 and apkdev like this.
  15. adammpolak

    adammpolak

    Joined:
    Sep 9, 2018
    Posts:
    450
    TBH I was kind of bummed when us devs came at Unity for messing with DOTS and breaking packages and all that. I feel like we scared them away!

    Come back to us Unity, we have changed, we will treat you right! Tell us about your DOTS plans and timelines and we won't get all hot and bothered when none of them come to fruition.
     
    bb8_1 likes this.
  16. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    I think it's for the best Unity keeps DOTS apart until it's nailed down more otherwise it really will only keep on happening. You can't speak for everyone after all.

    All Unity ought to do is be a bit more communicative with their customers.
     
    Shinyclef, Krajca and bb8_1 like this.