Search Unity

Recommended Tutorials for Data Oriented Design / best practices for C# ?

Discussion in 'Entity Component System' started by MaxXR, May 11, 2018.

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

    MaxXR

    Joined:
    Jun 18, 2017
    Posts:
    67
    Hi

    Are there any – and if yes can someone please recommend – any fully updated from scratch Unity & C# tutorials for learning about the kinds of approaches Mike Acton, Andreas Fredriksson, etc are brining to Unity?

    Have learned the basics of Unity over the past year and currently build using the Object Oriented paradigm. Have also watch all the recent talks on the new ECS paradigm and downloaded the beta and played around with the sample projects, boid simulations etc – which are awesome btw. But this approach is unstructured...

    Ideally there is or will soon be a some data oriented deisgn game wizard who could run through a fully updated Unity / c# tutorial built from scratch that includes all these best practices, design patterns, etc. Does anyone know if Unity is working on this or if there are any good tutors who currently teach the super high performing code that Mike, Joachim, etc are talking about?

    Thanks!
     
    Last edited: May 11, 2018
    M_R likes this.
  2. GabrieleUnity

    GabrieleUnity

    Unity Technologies

    Joined:
    Sep 4, 2012
    Posts:
    116
    As ECS becomes more mature, we are going to ship more examples, better documentation and in general more learning material. Education is a big part of our challenge, and we will do out best to provide enough information for everyone to approach ECS and DoD from the right angle.

    At the moment, the situation is unstructured and will stay like this until we will feel ECS is solid enough to start freezing it and build more learning resources on top of it.

    Short term, we will provide more examples, simplify the current ones we have to make it easier for newbies to understand how to approach ECS. And likely start producing introductory videos with in-depth explanations.

    As we produce this new content, we will update this forum with all the information.
     
  3. MaxXR

    MaxXR

    Joined:
    Jun 18, 2017
    Posts:
    67
    Thank you sir :)
     
  4. starikcetin

    starikcetin

    Joined:
    Dec 7, 2017
    Posts:
    340
    It would be great if we could get an ETA on this. Even just an approximation or a wild guess is also good enough. I am thinking about starting a new project and I want to know if it will be worth waiting or should I just start with the existing MonoBehaviour pattern.
     
  5. GabrieleUnity

    GabrieleUnity

    Unity Technologies

    Joined:
    Sep 4, 2012
    Posts:
    116
    @starikcetin If you are asking about an ETA on ECS to be released officially, I can't give you one atm. But I can tell you we are fully invested, working heavily on every single aspect of it, implementing new systems, planning medium and long-term, working on demos and much more.

    That said, we want to remove the preview label only when we will feel is solid enough, and to reach that point, we still have a few key things to deliver. Mainly focus on the workflows, some key functionalities (serialization for example, but there are more), and strengthening the examples and docs.

    But we are not talking about a very long timeline. We will start soon have quick iterations again, and get closer to completion at a good peace.

    Regarding your new project, I can't tell you if you should go for the MB pattern or go for ECS. But if you choose the ECS route today, you will have a to still implement a lot of stuff by yourself. Which, depending on the game and the size of the team, might be too taxing or fine. By the looks at the forums, some people are basing their game already on ECS, others are only experimenting and waiting a bit more.
     
  6. avvie

    avvie

    Joined:
    Jan 26, 2014
    Posts:
    74
    If you have to prioritize at any point between the videos and documentation, please do the documentation :D
    Being unable to look stuff up and go digging through the code in the package trying to figure out what the thing i am calling will do, or what I can use or even what is even contained therein is the biggest willpower drainer in this learning process for me
     
    Sylmerria and starikcetin like this.
  7. GabrieleUnity

    GabrieleUnity

    Unity Technologies

    Joined:
    Sep 4, 2012
    Posts:
    116
    Absolutely!
     
    starikcetin and avvie like this.
  8. ethanscott278

    ethanscott278

    Joined:
    May 15, 2018
    Posts:
    3
    I myself am learning from this website called Hackr. They have a pretty well planned course and I would recommend you to check that out.
     
  9. siggigg

    siggigg

    Joined:
    Apr 11, 2018
    Posts:
    247
    Is that a generic C# course or one on ECS/data-driven design approaches? If the latter, can you share a link with us?
     
  10. recursive

    recursive

    Joined:
    Jul 12, 2012
    Posts:
    669
    Here are some "Deep-Dive" resources into various topics. CAUTION MANY ARE C++ HEAVY

    Job system concepts:
    https://www.gdcvault.com/play/1022186/Parallelizing-the-Naughty-Dog-Engine
    - Multithreading the Entire Destiny Engine

    ECS Concepts:
    - Vittoreo Romero Multithreaded compile-time ECS in C++ 14
    - Mike Acton "Data-Oriented Desgin and C++"
    - Entitas Architecture with Unity by Example
     
    siggigg and MadeFromPolygons like this.
  11. siggigg

    siggigg

    Joined:
    Apr 11, 2018
    Posts:
    247
  12. floboc

    floboc

    Joined:
    Oct 31, 2017
    Posts:
    91
    Is the talk about Overwatch Netcode really worth it ? Is there any preview of its content somewhere ?
     
  13. RaL

    RaL

    Joined:
    Nov 29, 2013
    Posts:
    35
    I wouldn't say this talk alone is worth paying the one year's subscription :) It's a great talk, though.
     
Thread Status:
Not open for further replies.