oxygen library
A lightweight Entity Component System written in Dart.
Classes
-
Component<
T> - A Component is a way to store data for an Entity.
- ComponentManager
- Manages all the components in a World.
-
ComponentPool<
T extends Component> - An ObjectPool for a type of Component.
- Entity
- An Entity is a simple "container" for components.
- EntityManager
- Manages all the entities in a World.
- EntityPool
- ObjectPool for entities.
-
Filter<
T extends Component> - A filter allows a Query to be able to filter down entities.
-
Has<
T extends Component> -
HasNot<
T extends Component> -
ObjectPool<
T extends PoolObject< V> , V> -
PoolObject<
T> - Query
- A Query is a way to retrieve entities by matching their components against the Query filters.
- QueryManager
- Manages all the queries to ensure we don't duplicate lists.
- System
- Systems contain the logic for components.
- SystemManager
- Manages all registered systems.
-
ValueComponent<
T> - With the ValueComponent you can easily define single value components.
- World
Typedefs
-
ComponentBuilder<
T> = T Function()