Classes and Structs
| Name | Description |
|---|---|
basic_interactable_component |
An interactable component with a composable feature set. |
interactable_component |
Used to handle general interaction. |
interactable_cooldown |
Used to set a cooldown when interacted. |
interactable_cooldown_per_agent |
Used to set a cooldown per agent when interacted. |
interactable_duration |
Used to set an interaction duration. |
interactable_success_limit |
Used to set a limit of times to interact. |
camera_body |
Camera body settings, e.g. sensor/film settings, shutter speed, etc |
camera_component |
Represents the physical body, lens of the camera and other cinematographic qualities, such as sensor size, aspect ratio lock/constraint, focal length, focus distance, post-process settings, etc. |
camera_director_component |
Responsible for selecting a camera and blending when the active camera changes. Also allows global settings to be shared between different cameras (such as post process settings) and modifications to the final blended camera state, such as camera shakes |
camera_lens |
Camera lens settings |
camera_modifier_stack |
Modifier stack for camera state. |
camera_modifier |
Base class for objects that can modify camera state. |
camera_state |
|
camera_transition |
Controls how a camera mode transitions to another |
camera_mode_blend |
Configurable blend between two camera modes |
camera_mode_blend_pop |
Instantly snap to target mode |
camera_mode_blend_linear |
Linear blend between camera modes |
camera_mode_blend_smoothstep |
Camera mode blend that uses the smoothstep function to blend between the two camera modes |
camera_mode_blend_smootherstep |
Camera mode blend that uses the smootherstep function to blend between the two camera modes |
camera_mode_blend_orbit |
Configurable blend between two camera modes |
orthographic_camera_component |
Simple orthographic camera. |
perspective_camera_component |
Simple perspective camera. |
physical_camera_component |
Camera that is physically based, determining its view properties in a manner more consistent with a physical camera |
skeletal_animation |
A modifier of skeletons, used to animate meshes using skeletal animation |
play_skeletal_animation_result |
|
skeleton |
Skeletons are collections of bones & sets/chains |
easing_window |
An easing function combined with a relative time window |
capsule_light_component |
A |
directional_light_component |
A |
light_component |
Base class for light components in the SceneGraph. Dependencies:
Examples of components implementing
|
mesh_component |
Used to render a
Dependencies:
|
particle_system_component |
Used to spawn a Dependencies:
|
rect_light_component |
A |
sound_component |
|
sphere_light_component |
A |
spot_light_component |
A |
float_range |
A range with a minimum and maximum value. For a value to fall inside of this range, the min value must be less than or equal to the max value. |
collision_channel |
Every volume has a collision channel as part of its collision_profile. It is used to determine how two volumes interact. See collision_profile. |
collision_profile |
A collision profile determines how a volume interacts with other volumes for Overlap queries, Sweep queries, and physics simulation. When two volumes are being tested to see how they interact, the algorithm looks like this: GetInteraction(A:collision_profile, B:collision_profile):collision_interaction = InteractionA = B.GetChannelInteraction(A.Channel) InteractionB = A.GetChannelInteraction(B.Channel) return Min(InteractionA, InteractionB) |
overlap_hit |
The results of an overlap query. See entity.FindOverlapHits(). We will get one overlap_hit for each intersection of any volume in SourceVolumes with any other volume. |
sweep_hit |
The results of a sweep query. See entity.FindSweepHits(). We will get one sweep_hit for each intersection of any volume in SourceVolumes with any other volume. |
collision_volume |
Collision Volumes represent the collision shapes of meshes. They can be detected by Overlap and Sweep queries and generate collisions in the physics simulation. |
collision_element |
Base class for collision_volumes that consist of a single volume with a single collision_profile and collision_material for the whole volume. This covers most volume types used in queries and physics, except compound types like a mesh. A query will always return an element rather than a general volume. For example when colliding with a mesh, the element will be a collision_triangle, which is a collision_element and has a single material, rather than a collision_triangle_mesh, which is not an element and has a material palette. |
collision_capsule |
A collision capsule aligned along the Z axis. |
collision_sphere |
A collision sphere. |
collision_point |
A collision point. |
collision_box |
An axis-aligned collision box. |
component |
Base class for authoring logic and data in the SceneGraph. Using components you can author re-usable building blocks of logic and data which can then be added to entities in the scene. Components are a very low level building block which can be used in many ways. For example:
As components are generic there is no specific way that they must be used. It is up to the needs of your experience if you use one big game component or if you break up logic into many small components. Classes deriving from component must also specify Only one instance of a component from each subclass group can be added to an entity at a time. For example, given this group of components, only one light_component can exist on a single entity. To create multiple lights you should use multiple entities. light_component := class ============================================================================== Component Lifetime Components move through a series of lifetime functions as they are added to entities, added to the scene, and begin running in the simulation. Components should override these methods to perform setup and run their simulation. As a component shuts down it will then move through shutdown version of these
functions, giving users the opportunity to clean up any retained state on the
component before it is disposed
.
Lifetime Methods:
OnAddedToScene
OnBeginSimulation -> OnSimulate |
entity |
Entities are the base object in the SceneGraph.
In the SceneGraph system a class that derives from While you can create base prefabs for common game object types like a vehicle or character, we highly recommended that you do not add code directly to the entity class, and instead keep logic in components. Keeping logic and data in components allows you to restructure your prefabs throughout production of your experience, without needing to massively refactor your class structure. |
entity_prefab |
Reference type to editor defined prefab. Only generated digest code should reference this type. |
icon_component |
Component that holds an icon for an entity. |
entity_origin |
class to provide alternative origin to the 'transform_component' as an entity |
rarity |
Rarity may be used by gameplay and presentation systems to classify and rank things. |
common_rarity |
|
uncommon_rarity |
|
rare_rarity |
|
epic_rarity |
|
legendary_rarity |
|
rarity_component |
Component that denotes the rarity of an entity. |
stackable_component |
A component that when attached to an entity allows for it to merge or 'stack' with other entities with compatible components. |
change_stack_size_result |
|
change_max_stack_size_result |
|
basic_stackable_component |
|
tick_events |
Describes discrete phases of a frame update. Subscribe to members of the tick_events object to run code before or after the physics system has updated your object, allowing you to affect or react to these updates. |
transform_component |
Stores the transforms for an entity, which are used to position the entity. |
execution_listenable |
Users to subscribe to, or await on, a DeltaTime based callback from one of the phases in a component's |
Interfaces
| Name | Description |
|---|---|
has_camera_modifier |
Interface for classes that own a camera modifier stack. |
easeable |
Interface used to trigger easing behaviors |
scene_event |
An event which can be sent through the scene graph. |
origin |
Interface to provide alternative origin to an entity which is defaulted to its parent. See |
has_merge_rules |
Merge Rules Interface. Implemented by components that want to participate in entity mergeability checks. |
Enumerations
| Name | Description |
|---|---|
camera_projection_mode |
camera_transition_initial_orientation |
Controls how a camera mode transitions to another |
entity_streaming_policy |
Entity client streaming modes |
children_streaming_policy |
Child entities client streaming modes |
collision_interaction |
Specifies how a collision volume pair should interact. See collision_profile. |
Data
| Name | Description |
|---|---|
GlobalModifierPosition |
VisualModifierPosition |