In this video, learn about what’s involved in migrating existing game code to the new Data-Oriented Technology Stack (DOTS), which comprises the C# Job System, the Entity Component System (ECS), and the Burst Compiler. You’ll also gain an understanding of the performance benefits you can expect from these systems. Finally, you’ll learn when it makes sense to use them, and when to stick with the regular components you’ve used in the past.
Speaker: Mike Geig – Unity
Learn more about DOTS:
Slides available here:
Nguồn: https://summerlyn-apts.com
Xem thêm bài viết khác: https://summerlyn-apts.com/game/
half of the code is scaffolding… this is one verbose framework
How should I handle animations? I've been searching for days but couldn't find any applicable way to do it!
You don't have to crank this up to insane amounts
That being said –
Mike Geig is the man!
humanoid animation not converted to DOTS what we need to convert it means what code i do when i attach script to character that have bone rig compiler gives error
This is bizarre, I've just started to try learn coding and this is what I thought everything had always been structured like? When I talked to other programmers about design choices centred around things being defined by the various combinations of shared data like this they just couldn't comprehend it. Maybe I still don't get it but this sounds like such a greater intuitive approach. This is the approach I always had in mind.
In any case, are entities able to be built in an editor like prefabs? What about animation clips and all that? Can gameobject components be used as regular on entities? All of them?
Is that mean that now game so-called "garbage" like dead enemy bodies, bullets marks on the wall, small derbies of the cracked wall, fallen small parts of the vehicle body after the collision – actually can be left on the map without the need to destroy them for the sake of saving memory space?
Or what?
Mike Geig is a genuine, intelligent, well-spoken, and I suspect very kind person. The type who makes me proud of humanity and to be a tiny part of the Unity community. He is also a fantastic presenter. Thank you for sharing this valuable information in such an easily digestible way. The whole community is better for having you in it, Mike.
amazing presentation!
World.Active is deprecated already, great tutorials unity!
why "NativeArray"? why not "System.Collections.Concurrent"?
Spectacular.
Mike , the best Unity Evangelist !
what a wonderful presentation :3 can't wait for the upcoming dots updates 🙂
hmmm didn't unreal engine 4 already this did 9 years ago? or at least they told us they did lol
Can somebody explain to me why we can't use the ConvertToEntity component on the prefab (17:55)?
that "technical hurdle" that you used to convince people into using DOTS is really bad
Why pretend I have to use DOTS for this and that the particle system doesn't exist
if in real production we would use the particle system
you need to give real world examples
Really liked Unity at first … then after a few years of development I find myself stuck in an older version with no hope of making it current.
Unity don't seem to care much for your past work as they push forward obsoleting everything you created for the pass year.
Awesome presentation, but I got confused a bit, what I know about ECS is that you have to define Archetypes with Components, and then write Systems for those Archetypes, here the ProjectileBehaviour script has been converted to ECS with the interface method (if I understood it right), the additional structs were created almost as boilerplate to run the Conversion method, the bullet behaviour remained in the Update() and was not implemented as a System, isn't this against the principles of ECS? Also, if it can be easily done this way, like it has always been, with no performance hits, why should one use the new harder "counterintuitive" way described in the documentation?
I'm just trying to understand what the best practices are and the right way to implement ECS, thank you!
i just want to read/write from specific entities. Like in my IJobForEach, I want the current entity to compare its data with each and every entity. How?
This is amazing, i love it.,
One of the best and cleanest to understand talks 😀
job's got too much boilerplate, make it better
Finally, I can scrap all my over tinkered and complicated buggy pooling systems in my games. And as a bonus, it really goes with my style of programming. Heavily array based! :V
Great presentation. Ty!
This is just another implementation of microservices and data logic separation. This is the way of the future of programming.
Those enemies, are they entities or gameobjects?