-
Notifications
You must be signed in to change notification settings - Fork 1
Description
Data oriented design is something that is probably worthwhile implementing into just about any game engine, however, it requires a bit of a flipped perspective on how to set up your data. At the very least, you need to group related sets of data together into structures -- or even more preferably, into contiguous arrays for rapid successive access due to making the most efficient use of CPU cache lines. Mike Acton, Engine director at Insomniac Games spoke about it more in-depth in an hour long speech at CPPCon and outlined why generally the OOP design paradigm is harmful to everyone. There is also this discussion on StackOverflow that talks about it more in-depth than I will in this issue text.
Point being, you're going a lot of the same operations on a large set of data, so why not make it easier for your CPU to do that?