-
Notifications
You must be signed in to change notification settings - Fork 4
nfCore Systems
System is an object that performs specific actions on entities with appropriate components attached. It uses Entity Manager to iterate through and access component tuples. There are following systems specified:
Responsible for updating entity transform (position and orientation) and managing parent-child structure.
Used components: Transform.
Responsible for physics simulation (thanks to Bullet Physics) and generation of collision events.
Used components: Transform, Body, Collidable, ForceField.
Responsible for handling all renderable components and communicating with high level renderer.
Used components: Transform, Mesh, Light, Camera, Body.
Responsible for handling, filtering and dispatching events.
Supported events:
- BodyComponent collision,
- TriggerComponent activation (an entity with TransformComponent enters/leaves, BodyComponent's shape collides with trigger area),
- Scene Segment switch.
Responsible for audio playback. Implements internal in-game mixer:
- inputs can be: sound stream, SoundListenerComponent,
- outputs can be: speakers, SoundSource,
- simple effects: filter/equalizer, delay, reverb, etc.
Simulates sound propagation (occlusion, Doppler effect, etc.).
Used components: Transform, SoundSource, SoundListener, Body.
Responsible for spawning and managing all particles. Also, prepares particle geometry for rendering.
Used components: Transform, Emitter.
Responsible for scene segments management:
- monitoring camera positions,
- loading new segments / unloading not needed segments,
- translating all entities in case of scene segment switch.
Used components: Transform, Camera, SceneSegment.
- Home
- Features
- Development
- Test applications
- nfCommon Documentation
- nfCore Documentation
- Meeting summaries