3 ms·
A good architecture for fully parallel, deterministic, thread-safe, serializable and extensible games is the Entity-Component-System pattern. I'm sure that Godo
by viccuad 3y ago
A good architecture for fully parallel, deterministic, thread-safe, serializable and extensible games is the Entity-Component-System pattern. I'm sure that Godot has one or a way to integrate a library that implements it.
I think Unity doesn't come with ECS anyways.
- LarsDu88 3y agoThis is why I feel an engine like Bevy will one day beat them all. ECS, rust, memory safety, thread safety. It just needs an editor (or even a gameplan for what an editor would look like), animation, halfway decent rendering pipeline... it's a very long way from production ready.
- viccuad 3y agoAgree here. I long for an open source combat flight sim, and Bevy, with ECS, rust, wasm capabilities, thread safety, etc sounds quite apt.
- LarsDu88 3y agoI'm making a VR combat flight sim (of sorts) https://roguestargun.com https://roguestargun.com I went into it thinking I needed a bunch of ECS multithreading to make it run on an Oculus Quest 2, but honestly, it's completely unnecessary. Vanilla essentially single threaded Unity C# with careful asset optimization, and I get get ~60+ rigidbody running on a mobile chip at 72 fps. I haven't been able to survive a dogfight against more than 12 enemy ai fighters Tim Sweeney was right, ECS for optimization purposes is overkill for most games and is best relegated to fancy particle systems (which is the route Unreal went)