Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

What do you mean by game-style here? I’m very intrigued. Any place to read more about these?


Look for "Data oriented design" or "Structs of arrays".

Here's a talk on the former by Mike Acton: https://www.youtube.com/watch?v=rX0ItVEVjHc

On the latter, there's Jai, a new programming language for games (WIP, unpublished) by Jonathan Blow, who has been very public in documenting the process creating it, and which is centered around such concepts. There is some unofficial documentation of the ideas on SoA vs AoS and how the language can help switching between the two, e.g. here: https://pixeldroid.com/jailang/overview/Features/SOA/#/overv... and here: https://github.com/BSVino/JaiPrimer/blob/master/JaiPrimer.md...

Edit: Just realized that the articale even mentions Jai towards the end.


It's called entity-component systems in games. Note that OOP was designed for simulations but games, the only kind of simulation people like using, don't use OOP.


I think the more accurate references is "Parallel arrays", aka "Structure of Arrays" (SoA) [1]

The amusing thing is that SoA is something you could see in old languages that didn't have data structures, or the code of newbies that don't know data structures.

[1] https://en.wikipedia.org/wiki/Parallel_array


Plenty of games use OOP (C++ !). And ECS is just relational OOP.


It's "Entity Component System". The "system" is part of the pattern name.


Gaming has always been pushing boundaries of what's possible performance-wise. For high-throuhput data loops, there's already established patterns used by gamedevs that maximize use of cache and cpu/gpu.



The keywords here are things like data oriented or "structures of arrays". Some examples are unity ECS or amethyst and bevy in Rust language.




Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: