Systems Reference

Systems run each frame to update game state. They operate on components in the ECS store and are executed in a fixed order by the render loop.

# Systems Pipeline

The render loop executes systems in a fixed order each frame. Delta time is computed automatically.

pipeline.jl

# Player Controller

FPS-style input handling. Automatically activated when a PlayerComponent is detected in the scene. Captures the cursor and provides WASD movement with mouse look.

player.jl

# Physics System

Fixed-timestep physics simulation with sub-stepping. The PhysicsWorld singleton manages broadphase, narrowphase, constraint solving, and sleeping.

physics.jl

# Animation System

Keyframe interpolation supporting three modes. Animations from glTF files are automatically loaded with correct interpolation types and target remapping.

animation.jl

# Skinning System

Computes the final bone transform matrices for skeletal animation. These matrices are uploaded as shader uniforms for vertex skinning on the GPU.

skinning.jl

# Audio System

Synchronizes 3D audio state with entity transforms. The OpenAL backend handles spatial attenuation, distance rolloff, and stereo panning.

audio.jl

# Particle System

CPU-simulated particles with billboard rendering. The accumulator pattern ensures consistent emission rates regardless of frame rate.

particles.jl

# UI System

Immediate-mode UI overlay rendered on top of the 3D scene. Supports text, rectangles, progress bars, buttons, and images. Uses FreeType for font atlas generation.

ui.jl