Reference
Overview
Simulation Architecture
An Elodin simulation consists of:
- Systems: Systems are reusable functions that operate on a set of components. Composing different systems allows for the creation of custom physics engines. Some examples of systems include gravity, aerodynamics, collision detection.
- World: World is a container of all the entities in the simulation. See ECS Data Model for more context on entities.
- Flight Software (FSW): Flight software is a set of processes that run independent of the simulation. Using conduit, FSW subscribes to relevant simulation data and sends control commands back to the simulation.
ECS Data Model
Elodin uses the Entity Component System (ECS) pattern to manage simulation data. Entities are simply unique references to a collection of components. Components are individual properties associated with an entity like position, velocity, mass, etc.
Archetypes are a unique combination of components that allow for efficient memory management and data access patterns. Entities are spawned with a list of archetypes rather than individual components.
Systems are simply functions that operate on component data.
Was this page helpful?