9 ms·
Object-orientation is kind of the old-school way of doing things, these days it's all about ECS - entity component system. This is a more data-oriented approach
by japhib 4y ago
Object-orientation is kind of the old-school way of doing things, these days it's all about ECS - entity component system. This is a more data-oriented approach that has the potential for much higher performance when you have thousands of objects that need updating in your game. It's similar to how OO languages like Java/C# are going out of style and more (nominally, at least) data-oriented languages such as Go or Rust are in style.
- pjmlp 4y agoUnity isn't going anywhere, and programming to interfaces is just as doable in Java and C#.
- whostolemyhat 4y agoUnity's been working on an ECS option for a while now
- pjmlp 4y agoWritten in C#.
- lewispollard 4y agoYeah, "OO is going out of fashion" is a common phrase in gamedev, but what's actually meant is "deep class hierarchies defining the behaviour of game objects is going out of fashion". Most ECS code is still written in OO languages and makes heavy use of OO features.
- throwaway2037 4y agoIs ECS similar to Data Oriented Programming? I watched this talk years ago: CppCon 2014: Mike Acton "Data-Oriented Design and C++" I was very impressed by the ideas presented. Java/C# can be used to write a program with "just a bunch of structs + static methods". Isn't that data-oriented enough? Ya, I know we can do 72 levels of inheritance also... for ignore that for a moment.