4 ms·
This article was "originally printed in the September 2009 issue of Game Developer." Any news since then?
by radiospiel 5y ago
This article was "originally printed in the September 2009 issue of Game Developer." Any news since then?
- ratww 5y agoSince then, it has definitely become mainstream. For games, it kind of "merged" with Entity-Component-System architecture, which is used by lots of mainstream engines and is kind of popular these days. IMO, DOD+ECS is not only a good performance hack but also a great architectural pattern for organising game code in general, compared to more traditional techniques.
- alpanka 5y agoI think it is popular mainly _because_ how it can work in game engine editors (unity, UE, ...). You can't really do much OOP from the graphical editor but ECS is basically drag and drop
- worldsayshi 5y agoAs a react developer I find the OOP prevalence hard to tolerate when I try to learn unity. I'm really hoping that the Dots architecture can make things more enjoyable. I've tried it a bit but there's a lot to learn and from what I understand the APIs are not to be considered stable yet (?). Meanwhile I've discovered react-three-fiber which feels like the way I want to build 3d stuff.
- bregma 5y agoFor most game developers in the scene these days, DoD + ECS is the traditional technique. The dogma also requires chanting in unison how much better than OOP it is.
- meheleventyone 5y ago> Since then, it has definitely become mainstream. For games, it kind of "merged" with Entity-Component-System architecture, which is used by lots of mainstream engines and is kind of popular these days. This isn't really true, it's extremely popular on the Internet but much less so in commercial game development land. Data-oriented design on the other hand is extremely common as things need to run fast. But that's almost exclusively in the underlying engine rather than for gameplay code. Outside of that there are a lot of in-progress implementations in popular engines (likes DOTS in Unity), lots of very early open-source general game engine projects using them (like Bevy) and loads of open source implementations of which I believe one has actually shipped in a commercial game (EnTT in Minecraft Bedrock Edition). The other famous shipped game using an ECS was Overwatch.
- jfpardy 5y agoThere's been a few talks: CppCon 2014: Mike Acton "Data-Oriented Design and C++": https://www.youtube.com/watch?v=rX0ItVEVjHc https://www.youtube.com/watch?v=rX0ItVEVjHc CppCon 2018: Stoyan Nikolov “OOP Is Dead, Long Live Data-oriented Design”: https://www.youtube.com/watch?v=yy8jQgmhbAU https://www.youtube.com/watch?v=yy8jQgmhbAU Building a Data-Oriented Future - Mike Acton [2019]: https://www.youtube.com/watch?v=u8B3j8rqYMw https://www.youtube.com/watch?v=u8B3j8rqYMw And a blog/book has been created: https://www.dataorienteddesign.com/ https://www.dataorienteddesign.com/