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

gravitron_ecs

A simple and performant ECS for Gravitron

6 releases (3 breaking)

new 0.4.0 Jan 21, 2025
0.3.0 Oct 29, 2024
0.2.0 Oct 2, 2024
0.1.2 Sep 13, 2024

#1547 in Game dev

Download history 15/week @ 2024-10-07 14/week @ 2024-10-14 146/week @ 2024-10-28 19/week @ 2024-11-04 7/week @ 2024-11-18 7/week @ 2024-12-09 113/week @ 2025-01-20

113 downloads per month
Used in 5 crates

MIT/Apache

76KB
2.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

~3MB
~56K SLoC