API Reference genesis v#0.7.0
View SourceModules
Genesis is a framework for building entity-component-system (ECS) based games in Elixir. It provides a flexible and efficient way to manage game objects, their aspects (components), and the events that drive game logic.
Provides common behavior and callbacks for aspects. Aspects are modular pieces of state or behavior that can be attached to objects.
This module provides useful helpers for working with ETS tables.
A struct representing an event that can be dispatched to objects.
The Manager is a GenServer responsible for coordinating changes to the game registry. It ensures that all changes write operations are serialized to maintain consistency, and provides functions to register aspects and prefabs that will be used by the game.
Provides helper functions to query objects in the registry.
World is a GenServer that manages the lifecycle of objects in the game. It is responsible for creating, cloning, and destroying objects. It also manages the event routing logic for object's aspects, ensuring that events are dispatched and handled correctly.