TinyEcs, simple pure .NET ECS
TinyEcs Namespace |
[This is preliminary documentation and is subject to change.]
A small pure entity-component-system written entirely in C#.
Classes
Class | Description | |
---|---|---|
ComponentSystemT |
Base class for systems.
| |
DoubleWriteLockException |
This exception is thrown when two different systems are attempting to write to the same entity.
| |
ExcludeAttribute |
Exclude entities that are marked by a tag.
| |
GroupAttribute |
Mark a field as an injected component group.
| |
World |
The World class glues entities, components and systems together.
Use this class to create and destroy entities, get references to components and schedule systems.
It also allows very basic Dependency Injection for ComponentSystems and a simple resource locator.
|
Structures
Structure | Description | |
---|---|---|
Archetype |
An archetype is used to quickly instantiate entities with the same type of components.
| |
Entity |
An entity is a key that defines a relationship between different components.
| |
RoDataStreamT |
A read-only array of components or entities.
| |
RwDataStreamT |
A readable and writable array of components.
|
Interfaces
Interface | Description | |
---|---|---|
IComponent |
Implement this interface to mark a struct as a component type.
Allows the struct to be wrapped by a Ro/Rw-DataStream.
| |
IData |
Interface to mark a struct as usable for a RoDataStream.
| |
IMessage |
Implement this for messages.
| |
IOnLoad | ||
ITag |
Implement this interface to mark a component as a tag. (Marker component)
|