Reference · Components
Components
The 58 components entities are made of, by engine module. Each page lists every field with its type, unit, range and default.
ai
animation
audio
- AcousticPortalAn opening (door, window, archway) connecting two zones. An empty zone name is outdoors.
- AcousticSourcePer-source acoustic behaviour, alongside AudioSource. Optional: sources without it use AcousticSource::default().
- AcousticSurfaceAcoustic surface of static geometry or a collider. The physics ray adapter maps hit bodies to this component; absent components read as generic.
- AudioGraphSourcePlays a procedural audio graph (an ara-audio-graph graph document, domain audio) from this entity, spatialized and attenuated by its AudioSource (whose clip stays empty). Gameplay writes parameters and bumps triggers; the audio presenter forwards changes sample-accurately at the next control frame.
- AudioListenerPresentation listener, usually copied from the local player's camera component.
- AudioSourceDeclarative sound intent. Playback cursors and decoder state are presentation only.
- MusicSourcePlays a .music document's interactive score (segments, transitions, intensity layers) from this entity, non-spatial. Presentation intent: gameplay writes intensity and segment; the audio presenter follows them.
- ReverbZoneA room or space with its own reverb. The listener's zone drives the room reverb; sources in other zones reach the listener through portals.
core
gameplay
navigation
- NavAgentDimensions, speed and permitted areas of one navigation agent.
- NavAgentTypeA named agent type: its own baked mesh (dimensions) and traversal costs. Agents select it through NavAgent.profile == profile.
- NavAreaArea label and cost policy for the collision-geometry producer and query filters.
- NavLinkAuthored off-mesh connection in world space (jump, ladder or scripted passage).
- NavMeshSurfaceAuthored raw-geometry navigation surface; its derived mesh is content-addressed.
- NavObstacleDynamic obstacle: an axis-aligned box centred on the entity's NavPosition. Carve/Area changes publish after NavConfig::rebake_latency_ticks; until then (and always for Avoid) agents avoid it locally.
physics
- CharacterControllerPredicted capsule movement: slopes, stairs, moving platforms, crouching and pushing.
- CharacterInputPer-tick character intent: replay this input exactly once before the rigid-body step.
- CharacterMotionCharacter support and stance mirrored at every fixed boundary.
- ColliderCollision geometry, material, layer and trigger settings.
- JointJoint on a body; connection zero anchors to the world. Anchors/axes are world-space.
- PhysicsIdStable simulation identity; nonzero and unique within a physics world.
- PhysicsPoseResolved world-space pose in meters. Hierarchy/scale resolution runs before physics.
- RigidBodyRigid-body authoring settings; simulation state is written to pose and velocity.
- VehicleFour-wheel engine/automatic-gearbox vehicle, using S6's stable defaults.
- VehicleInputReplayable driver intent consumed every fixed tick.
- VehicleTelemetryVehicle drivetrain and suspension state mirrored into ECS after each tick.
- VelocityAuthoritative velocity, synchronized at tick boundaries.
physics2d
- CharacterController2dKinematic capsule character: slopes, steps, ground snapping and pushing. The entity needs no RigidBody2d/Collider2d; the controller owns its capsule.
- CharacterInput2dPer-tick character intent, read exactly once by each boundary. Gameplay writes it before the physics system; it is not cleared, so held input repeats.
- CharacterMotion2dCharacter support mirrored at every fixed boundary.
- Collider2dCollision geometry, material, layer and trigger settings for a RigidBody2d.
- PhysicsPose2dWorld-space 2D pose, written back by the solver at every completed boundary.
- RigidBody2dRigid-body authoring settings; simulation state is written to pose and velocity.
- TileColliderSource2dOwnership marker for generated colliders, separate from gameplay body state.
- Velocity2dAuthoritative velocity, synchronized at tick boundaries.
render
- CameraA viewpoint looking along the entity's local -Z axis. The lowest priority wins.
- EnvironmentProcedural sky radiance and camera exposure. The first in stable-ID order wins.
- HeightFogExponential height fog lit by the sun, the sky and local lights (volumetric shafts where shadows cut the beams). Density halves every falloff × ln 2 metres above baseHeight. The first entity in ID order wins.
- LightA light at the entity's world position. Edits apply live in play.
- MeshRendererDraws geometry at the entity's interpolated world transform.
- PostProcessVolumeA region whose post-processing overrides blend in as the camera approaches and enters it. Volumes apply in ascending priority (ties in entity ID order); each property one overrides moves toward its value by the volume's weight at the camera. Properties no volume overrides keep the engine defaults. Scenes saved with the former PostProcess component load as one global volume that overrides everything.
- SkyAtmosphereA physical sky and aerial perspective lit by the scene's directional light. The sun's elevation sets the time of day; without this component the scene uses its Environment gradient. The first entity in ID order wins.
terrain
- TerrainPuts a .terrain heightfield (and its .foliage scatter) in play: rendered by the landscape renderer, walkable for navigation, solid where TerrainChunks exist.
- TerrainChunkCollision for one terrain tile (grid coordinates of the level's Terrain). Author these in world cells to stream collision with the cells.
twoD
- Camera2dOrthographic view. Pixel mode uses integer zoom and nearest texel sampling.
- FlipbookTick-driven flipbook state, wholly contained in an ECS component.
- Light2dPoint light for an explicitly lit sprite; Z provides normal-map elevation.
- SpriteA batched sprite with optional normal-mapped 2D illumination.
- TilemapCanonical text source for a tilemap. Binary chunks are derived cache products.