3 ms·
What does data oriented mean in this context? My gamedev experience is limited to writing MUDs and roguelikes over two decades ago so I have basically no contex
by User23 4y ago
What does data oriented mean in this context? My gamedev experience is limited to writing MUDs and roguelikes over two decades ago so I have basically no context.
- _cart 4y agoIt is a pretty broad term, but it generally implies some combination of cache-friendly design and composable (sometimes component-driven) behaviors. ECS intersects with it, but "data oriented" is a much broader category.
- james7132 4y agohttps://en.wikipedia.org/wiki/Data-oriented_design https://en.wikipedia.org/wiki/Data-oriented_design The intent is to layout structures in memory in a way that is conducive to how it's actually accessed in the physical hardware. For video games, this typically means leveraging contiguous pieces of memory to minimize cache misses while iterating over the objects in the game. This can see some huge performance gains over other ways of structuring the game's code. Think of Bevy's ECS as a ultra-high performance in-memory columnar database that you're scanning 60+ times a second. Then building your game as a series of (potentially parallelizable) mutative queries over that database.