Component Reference

Components add functionality to entities in Open 3D Engine (O3DE). An entity can contain any number or combination of components. Some components allow only one instance per entity, and some depend on other components to function.

Components are provided by Gems. To make a component available in O3DE Editor, you must add the Gem that provides the component. Though components might belong to the same type, they might not be provided by the same Gem. You can find out which Gem provides a component in the reference topic for the component.

Add a component to an entity

To add a component to an entity in O3DE Editor:

  1. In Entity Outliner or Perspective, click an entity to select it. This will show the entity’s details in Entity Inspector.
  2. In Entity Inspector, choose Add Component.
  3. Select a component from the component list to add to the entity.
Note:
If you can’t find a component in the Add Component list, you may need to enable the Gem that provides the component and rebuild your project.

Components

The components below are grouped by type as they appear in the O3DE Editor.

Animation

ComponentDescription
ActorCreates and manages a controllable character.
Anim GraphManages a set of assets that are built in the Animation Editor, including the animation graph, default parameter settings, and assigned motion set for the associated Actor.
AttachmentAllows an entity to attach to a bone on the skeleton of another entity.
Simple LOD DistanceChanges the actor skeleton LOD based on camera distance.
Simple MotionAssigns a single motion to the associated Actor. This is a simpler alterative to the Anim Graph component.

Atom

ComponentDescription
BloomSimulates real-world light bleeding, or glow.
Decal (Atom)Projects a texture material in a single direction onto mesh surfaces.
Deferred FogCreates a screen space fog effect that can ben used as scene fog or layered / ground fog with an optional cloud noise turbulence.
Depth of FieldSimulates the lens effects of real world cameras that focus on a specific area.
Diffuse Global IlluminationControls the quality level of global illumination that Diffuse Probe Grid components provide.
Diffuse Probe GridCreates a volume of light probes that provide diffuse global illumination within the specified area.
Directional LightCasts light from an infinitely distant point towards a single direction, similar to sunlight.
Display MapperConfigures tone mapping and color grading for the scene.
Entity ReferenceAllows you to provide an entity with references to other entities.
Exposure ControlAdjusts the amount of light the camera exposes in the scene.
Global Skylight (IBL)Creates an image-based global illumination effect that calculates light for a scene using an HDR skybox image.
GridAdds a customizable grid to the scene.
HDRi SkyboxCreates a skybox in your scene using an HDR image.
LightSimulates soft studio light by creating various types of punctual and area lights.
Look ModificationConfigures a color grading look-up table (LUT).
MaterialAdds a material on the object’s mesh.
MeshSpecifies a model to render.
Occlusion Culling PlaneCreates an occluder that when put between the camera and a mesh, can block the mesh from being rendered.
Physical SkyAdjusts the physical environment of the scene, such as the sky, sun, and fog.
Post-processing ModifiersA collection of components that define layers, volumes, areas, and weights for post-processing effects (PostFX).
Reflection ProbeCreates specular reflections in the environment around a probe (capture point).
SSAOApproximates indirect lighting in a scene by using the screen space ambient occlusion technique.

Audio

ComponentDescription
Audio AnimationAdds the ability to execute audio triggers when animation events occur.
Audio Area EnvironmentEnables entities that are moving around and throughout a shape to have environment effects applied to any sounds that they trigger.
Audio EnvironmentApplies environmental effects such as reverb or echo.
Audio ListenerAllows a virtual microphone to be placed in the environment.
Audio PreloadLoads and unloads soundbanks contained in the Audio Translation Layer preloads.
Audio ProxyIf multiple Audio components are added to an entity, the Audio Proxy component is required to ensure the other Audio components communicate to the same Audio object.
Audio RtpcProvides basic Real-time Parameter Control (RTPC) functionality, which allows you to tweak sounds in real-time.
Audio SwitchProvides basic Audio Translation Layer switch functionality to specify the state of an entity.
Audio TriggerProvides Audio Translation Layer triggers that allows you to play or stop the audio.
Multi-Position AudioProvides the ability to broadcast sounds through multiple positions.

Camera

ComponentDescription
CameraAllows an entity to be used as a camera.
Camera RigManages the behaviors that drive a camera entity.

Editor

ComponentDescription
CommentAllows you to add a text comment for component entities.

Gameplay

ComponentDescription
Fly Camera InputAllows you to control the camera using mouse and key inputs.
Look AtForces an entity to always look at a given target.
Simple StateProvides a simple state machine that allows you to activate and deactivate associated entities.
TagAllows you to apply one or more labels to an entity.
InputBinds raw input to events in your game.

Gradient Modifiers

ComponentDescription
Dither Gradient ModifierApplies ordered dithering to the input gradient.
Gradient MixerGenerates a new gradient by combining other gradients.
Gradient Transform ModifierCreates a coordinate space for the gradient based on a Shape component. Modifiers for the input gradient are applied in this space.
Invert Gradient ModifierInverts a gradient’s values.
Levels Gradient ModifierModifies an input gradient’s signal using low/mid/high points and allows clamping of min/max output values.
Posterize Gradient ModifierDivides an input gradient’s signal into a specified number of bands.
Smooth-Step Gradient ModifierGenerates a gradient fall off that smooths the input gradient.
Threshold Gradient ModifierApplies a threshold value to an input gradient to generate an output gradient that has only two values. Input gradient values above the threshold are set to 1 and input values at or below the threshold are set to 0.

Gradients

ComponentDescription
Altitude GradientGenerates a gradient based on height within a range.
Constant GradientReturns a specified value as a gradient when sampled.
FastNoise GradientGenerates gradient values using FastNoise , a noise generation library with a collection of real-time noise algorithms.
Image GradientGenerates a gradient by sampling an image asset.
Perlin Noise GradientGenerates a gradient by sampling a perlin noise generator.
Random Noise GradientGenerates a gradient by sampling a random noise generator.
Reference GradientReferences another gradient.
Shape Falloff GradientGenerates a gradient based on the distance from a shape.
Slope GradientGenerates a gradient based on the surface angle.
Surface Mask GradientGenerates a gradient based on the underlying surface types.

Non-uniform Scale

ComponentDescription
Non-uniform ScaleAllows an entity to scale by varying sizes across the x-, y-, and z- axes. By default, entities can scale only equally across the axes.

NVIDIA PhysX

ComponentDescription
ClothSimulates the behavior of cloth by treating the vertices of a mesh as cloth particles with physical properties.
PhysX Ball JointSimulates a dynamic ball joint that constrains an entity to the joint with freedom to rotate around the y- and z-axes of the joint.
PhysX Character ControllerImplements basic character interactions with the physical world.
PhysX Character GameplayConfigures general character properties in the gameplay, such as the character’s gravitational strength.
PhysX ColliderAllows you to specify primitive shapes or PhysX mesh assets to calculate collisions between entities.
PhysX Fixed JointCreates a dynamic fixed joint that constrains an entity to the joint with no degree of freedom in any axis.
PhysX Force RegionApplies a physical force on objects that are within the specified region.
PhysX Heightfield ColliderCreates a geometric collider based on the Axis-Aligned Box component.
PhysX Hinge JointCreates a dynamic hinge joint that constrains an entity to the joint with freedom to rotate around the x-axis of the joint.
PhysX RagdollSimulates ragdoll physics by creating a hierarchy of rigid bodies connected by joints.
PhysX Rigid BodyDefines the entity as a rigid object that is solid and can move and collide with other PhysX entities.
PhysX Shape ColliderCreates a geometric collider based on the Shape component.

Scripting

ComponentDescription
Lua ScriptAllows you to add custom logic and functionality using Lua code.
Script CanvasAllows you to add custom logic and functionality using Lua code.

Shape

ComponentDescription
Box ShapeGenerates box geometry for volumes and triggers.
Capsule ShapeGenerates capsule geometry for volumes and triggers.
Compound ShapeBuilds complex geometry from simple shapes for volumes and triggers.
Cylinder ShapeGenerates cylinder geometry for volumes and triggers.
Disk ShapeGenerates disk geometry for areas and triggers.
Polygon Prism ShapeGenerates n-sided prism geometry for volumes and triggers.
Quad ShapeGenerates quad-plane geometry for areas and triggers.
Shape ReferenceEnables entities to reference and reuse Shape components.
Sphere ShapeGenerates sphere geometry for volumes and triggers.
SplineGenerates lines and curves for paths.
Tube ShapeGenerates tube geometry for volumes and triggers.
White BoxAllows you to sketch 3D proxy meshes in the O3DE Editor.
White Box ColliderSupports collision layers and physics materials for white box meshes.

Surface Data

ComponentDescription
Gradient Surface Tag EmitterEnables a gradient to emit surface tags.
Mesh Surface Tag EmitterEnables a static mesh to emit surface tags.
PhysX Collider Surface Tag EmitterEnables a physics collider to emit surface tags.
Shape Surface Tag EmitterEnables a shape to emit surface tags.

Terrain

ComponentDescription
Terrain Physics Heightfield ColliderProvides terrain data to a physics collider in the form of a heightfield and surface to material mapping.
Terrain Layer SpawnerSpawns a terrain region contained within configurable bounds, and allows prioritization of overlapping terrain layers.
Terrain Height Gradient ListProvides terrain height data from a list of gradients.
Terrain Surface Materials ListDefines mappings between a surface type and a render material.
Terrain Surface Gradient ListDefines mappings between a gradient and a surface type on a terrain layer.
Terrain Macro MaterialProvides a macro level method of defining the appearance of a region of terrain.
Terrain WorldAllows the bounds of the Terrain World and the height query resolution to be set.
Terrain World DebuggerProvides a means to display a wireframe or bounds representation of the Terrain World.
Terrain World RendererRenders the terrain within the Terrain World bounds.

Test

ComponentDescription
AssetCollectionAsyncLoaderTestAllows you to test the API provided by AssetCollectionAsyncLoader.

UI

ComponentDescription
UI Canvas Asset RefAllows you to associate a UI Canvas with an entity.
UI Canvas Proxy RefAllows you to associate an entity with another entity that is managing a UI Canvas.
UI Canvas on MeshAllows you to place a UI Canvas on an entity in the 3D world that a player can interact with via ray casts.

Vegetation

ComponentDescription
Landscape CanvasProvides a node-based Editor for authoring Dynamic Vegetation.
Vegetation Asset ListProvides a set of vegetation descriptors.
Vegetation Asset List CombinerProvides a list of vegetation descriptor providers.
Vegetation Asset Weight SelectorSelects vegetation assets based on their weight.
Vegetation Layer BlenderCombines a collection of vegetation areas and applies them in a specified order.
Vegetation Layer BlockerDefines an area in which dynamic vegetation cannot be placed.
Vegetation Layer Blocker (Mesh)Prevents vegetation from being placed in the mesh.
Vegetation Layer DebuggerEnables debug visualizers for vegetation layers.
Vegetation Layer SpawnerCreates dynamic vegetation in a specified area.

Vegetation Filters

ComponentDescription
Vegetation Altitude FilterLimits the placement of vegetation to surfaces within the specified height range.
Vegetation Distance Between FilterDefines the minimum distance between vegetation instances.
Vegetation Distribution FilterLimits the placement of vegetation to a specified value range within a distribution defined by a gradient.
Vegetation Shape Intersection FilterLimits the placement of vegetation to surfaces that intersect the specified shape.
Vegetation Slope FilterLimits the placement of vegetation to surfaces within the specified surface angle range.
Vegetation Surface Mask Depth FilterLimits the placement of vegetation to surfaces within a specified depth range between two surface tags.
Vegetation Surface Mask FilterFilters out vegetation based on surface mask-to-tag mappings.

Vegetation Modifiers

ComponentDescription
Vegetation Position ModifierOffsets the position of the vegetation.
Vegetation Rotation ModifierOffsets the rotation of the vegetation.
Vegetation Scale ModifierOffsets the scale of the vegetation.
Vegetation Slope Alignment ModifierOffsets the orientation of the vegetation relative to a surface angle.

Copyright © 2022 Open 3D Engine Contributors

Documentation Distributed under CC BY 4.0.
For our trademark, privacy and antitrust policies, code of conduct, and terms of use, please click the applicable link below or see https://www.lfprojects.org.


The Linux Foundation has registered trademarks and uses trademarks. For a list of trademarks of The Linux Foundation, please see our Trademark Policy page.