4 ms·
ECS is designed to solve cache locality, not heap fragmentation.
by nvm0n2 3y ago
ECS is designed to solve cache locality, not heap fragmentation.
- pjmlp 3y agoThat is data oriented design, not ECS.
- nvm0n2 3y agoECS is data oriented design, no? That's kinda the whole idea of it.
- pjmlp 3y agoNo, it is a way to organize code in interfaces/components instead of classes and inheritance. It doesn't have anything to do with transforming arrays of structs into struct of arrays for better cache access.
- xeonmc 3y agoCould you possibly be conflating Entity-Component systems with Entity-Component-System systems?
- nvm0n2 3y agoI'm pretty sure in the context of game engines that's exactly what it means. https://en.wikipedia.org/wiki/Entity_component_system https://en.wikipedia.org/wiki/Entity_component_system Common ECS approaches are highly compatible with, and are often combined with, data-oriented design techniques. Data for all instances of a component are commonly stored together in physical memory, enabling efficient memory access for systems which operate over many entities.