Entity Component System
Everything important about the ECS.
Introduction
Usages
_world = World.Create();var systems = new Arch.System.Group(
// Reactive Systems
new ReactiveGroup(_world),
new StartCommandBufferSystem(_world),
new InitialisationSystem(_world),
// Commands, triggering logic between entities mostly
new CommandGroup(_world),
// UI & Interacting
new InteractionGroup(_world),
// Environment group ( Chunks, terrain generation... )
new EnvironmentGroup(_world, _entityPrototyper, _biomeGeoTiff),
// Behaviour like ai and animations
new BehaviourGroup(_world),
// Movement & Combat
new MovementGroup(_world),
new CombatGroup(_world),
// Phyics & Activity group
new PhysicsGroup(_world),
new ActivityGroup(_world, _entityPrototyper),
// Networking group & Network Commands
new NetworkingGroup(_world, _entityPrototyper, Network),
// Database group
new DatabaseGroup(_world, _gameDbContext),
new IntervallGroup(10.0f, new DebugSystem(_world, Network)),
// End of the frame
new ClearTrackedAnimationsSystem(_world),
new DestroySystem(_world)
);
systems.Initialize();Example
Last updated