lyra-engine/lyra-ecs
SeanOMik 5fafddb479
Add README.md
2023-12-21 23:33:35 -05:00
..
.vscode Create queries and views 2023-12-21 23:33:32 -05:00
src Implement query for tuples of query types 2023-12-21 23:33:34 -05:00
.gitignore early version of ecs working 2023-12-21 23:33:18 -05:00
Cargo.lock early version of ecs working 2023-12-21 23:33:18 -05:00
Cargo.toml early version of ecs working 2023-12-21 23:33:18 -05:00
LICENSE early version of ecs working 2023-12-21 23:33:18 -05:00
README.md Add README.md 2023-12-21 23:33:35 -05:00
shell.nix early version of ecs working 2023-12-21 23:33:18 -05:00

README.md

Lyra ECS

An ECS for the Lyra game engine.

Why does it exist?

I couldn't find anything that fulfilled my needs, specifically an ECS that can store arbitrary components without knowing about the types. This makes it easier to implement into a scripting engine that has the ability to create its own components.

Features

  • Archetypes
    • Spawning entities
    • Despawning entities
      • Delete entities from archetypes
      • Find some way to fill in the gaps in component columns after entities are deleted
    • Grow archetype as it fills up
  • Querying components from archetypes
    • Views
    • Mutable views
  • Resources
  • Relationships (maybe this can be done through queries, idk)
  • Dynamic queries
    • Needed for scripting engines that can create their own components that Rust does not know the types of.
  • Systems
    • Dispatchers/Executors

To be honest, the name may change at some point