#ecs #gravitron #component #systems #parallel #execution #query

gravitron_ecs

A simple and performant ECS for Gravitron

4 releases

0.2.0 Oct 2, 2024
0.1.2 Sep 13, 2024
0.1.1 Sep 13, 2024
0.1.0 Sep 12, 2024

#857 in Game dev

Download history 405/week @ 2024-09-08 127/week @ 2024-09-15 23/week @ 2024-09-22 128/week @ 2024-09-29 16/week @ 2024-10-06

393 downloads per month
Used in gravitron

MIT/Apache

54KB
1.5K SLoC

Gravitron ECS

Performant ECS for Gravitron

Features

  • Components with a derive macro
  • Systems as normal functions with queries to query the world, commands to modify entities and global resources
  • Ability for parallel execution with automatic detection for interference between systems and parallelizing optimization using RLF

Benchmarks

format: debug release

create entity

initial: 23ys 4ys average: 1.6ys 200ns

add component

initial: 11ys 2ys average: 1.2ys 140ns

get component

initial: 1.8ys 200ns average: 750ns 80ns

Dependencies

~0.3–0.8MB
~19K SLoC