Skip to content
Daan van Yperen edited this page Jul 30, 2014 · 28 revisions

A system is typically an implementation that iteratively operates on a group of entities that share common components (typically EntityProcessingSystem), or just general game logic (typically VoidEntitySystem).

EntitySystem implementations

Artemis provides several abstract classes to base your Systems on.

Execution flow

Upon calling world.process(), your systems are processed in sequence.

Inter-system communication

Systems can communicate with other systems. Retrieve other systems via @Wire. You can define whatever methods you deem necessary for inter-system communication.

Manually initialize aspects of your system by overriding the Initialize method.

Suspending Processing

Override checkProcessing to return false if you want to suspend system processing.

Events

You can override added and removed methods in each system. There you will be notified about entities that were either added into or removed from the system.

Clone this wiki locally