unreal.GeometryCollectionComponent

class unreal.GeometryCollectionComponent(outer: Object | None = None, name: Name | str = 'None')

Bases: MeshComponent

C++ Source:

  • Module: GeometryCollectionEngine

  • File: GeometryCollectionComponent.h

Editor Properties: (see get_editor_property/set_editor_property)

  • abandoned_collision_profile_name (Name): [Read-Write] Whether abandoned particles on the client should continue to have collision (i.e. still be in the external/internal acceleration structure).

  • absolute_location (bool): [Read-Write] If RelativeLocation should be considered relative to the world, rather than the parent

  • absolute_rotation (bool): [Read-Write] If RelativeRotation should be considered relative to the world, rather than the parent

  • absolute_scale (bool): [Read-Write] If RelativeScale3D should be considered relative to the world, rather than the parent

  • affect_distance_field_lighting (bool): [Read-Write] Controls whether the primitive should affect dynamic distance field lighting methods. This flag is only used if CastShadow is true. *

  • affect_dynamic_indirect_lighting (bool): [Read-Write] Controls whether the primitive should influence indirect lighting.

  • affect_indirect_lighting_while_hidden (bool): [Read-Write] Controls whether the primitive should affect indirect lighting when hidden. This flag is only used if bAffectDynamicIndirectLighting is true.

  • allow_cull_distance_volume (bool): [Read-Write] Whether to accept cull distance volumes to modify cached cull distance.

  • allow_removal_on_break (bool): [Read-Write] Allow removal on break for the instance if the rest collection has it enabled

  • allow_removal_on_sleep (bool): [Read-Write] Allow removal on sleep for the instance if the rest collection has it enabled

  • always_create_physics_state (bool): [Read-Write] Indicates if we’d like to create physics state all the time (for collision and simulation). If you set this to false, it still will create physics state if collision or simulation activated. This can help performance if you’d like to avoid overhead of creating physics state when triggers

  • angular_ether_drag (float): [Read-Write] Uniform angular ether drag. deprecated: Use PhysicalMaterial instead.

  • apply_impulse_on_damage (bool): [Read-Write] True for damage to this component to apply physics impulse, false to opt out of these impulses.

  • asset_user_data (Array[AssetUserData]): [Read-Write] Array of user data stored with the component

  • auto_activate (bool): [Read-Write] Whether the component is activated at creation or must be explicitly activated.

  • body_instance (BodyInstance): [Read-Write] Physics scene information for this component, holds a single rigid body with multiple shapes.

  • bounds_scale (float): [Read-Write] Scales the bounds of the object. This is useful when using World Position Offset to animate the vertices of the object outside of its bounds. Warning: Increasing the bounds of an object will reduce performance and shadow quality! Currently only used by StaticMeshComponent and SkeletalMeshComponent.

  • cache_playback (bool): [Read-Only]

  • cached_max_draw_distance (float): [Read-Only] The distance to cull this primitive at. A CachedMaxDrawDistance of 0 indicates that the primitive should not be culled by distance.

  • can_character_step_up_on (CanBeCharacterBase): [Read-Write] Determine whether a Character can step up onto this component. This controls whether they can try to step up on it when they bump in to it, not whether they can walk on it after landing on it. see: FWalkableSlopeOverride

  • can_ever_affect_navigation (bool): [Read-Write] Whether this component can potentially influence navigation

  • cast_cinematic_shadow (bool): [Read-Write] Whether this component should cast shadows from lights that have bCastShadowsFromCinematicObjectsOnly enabled. This is useful for characters in a cinematic with special cinematic lights, where the cost of shadowmap rendering of the environment is undesired.

  • cast_contact_shadow (bool): [Read-Write] Whether the object should cast contact shadows. This flag is only used if CastShadow is true.

  • cast_dynamic_shadow (bool): [Read-Write] Controls whether the primitive should cast shadows in the case of non precomputed shadowing. This flag is only used if CastShadow is true. *

  • cast_far_shadow (bool): [Read-Write] When enabled, the component will be rendering into the far shadow cascades (only for directional lights).

  • cast_hidden_shadow (bool): [Read-Write] If true, the primitive will cast shadows even if bHidden is true. Controls whether the primitive should cast shadows when hidden. This flag is only used if CastShadow is true.

  • cast_inset_shadow (bool): [Read-Write] Whether this component should create a per-object shadow that gives higher effective shadow resolution. Useful for cinematic character shadowing. Assumed to be enabled if bSelfShadowOnly is enabled.

  • cast_shadow (bool): [Read-Write] Controls whether the primitive component should cast a shadow or not.

  • cast_shadow_as_two_sided (bool): [Read-Write] Whether this primitive should cast dynamic shadows as if it were a two sided material.

  • cast_static_shadow (bool): [Read-Write] Whether the object should cast a static shadow from shadow casting lights. This flag is only used if CastShadow is true.

  • cast_volumetric_translucent_shadow (bool): [Read-Write] Whether the object should cast a volumetric translucent shadow. Volumetric translucent shadows are useful for primitives with smoothly changing opacity like particles representing a volume, But have artifacts when used on highly opaque surfaces.

  • chaos_solver_actor (ChaosSolverActor): [Read-Write] Chaos RBD Solver override. Will use the world’s default solver actor if null.

  • cluster_connection_type (ClusterConnectionTypeEnum): [Read-Write] deprecated: Connection types are defined on the asset now.

  • cluster_group_index (int32): [Read-Write] Maximum level for cluster breaks.

  • collision_group (int32): [Read-Write]

  • collision_profile_per_level (Array[Name]): [Read-Write] A per-level collision profile name. If the name is set to NONE or an invalid collision profile, nothing will be changed. If the there are more levels than elements in this array, then each level will use the index that best matches it. For example, if the particle is level 2, and there is only 1 element in the array, then the particle will use the 0th collision profile. AbandonedCollisionProfileName will override this on the client when relevant.

  • collision_sample_fraction (float): [Read-Write] Fraction of collision sample particles to keep

  • component_tags (Array[Name]): [Read-Write] Array of tags that can be used for grouping and categorizing. Can also be accessed from scripting.

  • consider_for_actor_placement_when_hidden (bool): [Read-Write] If true, this component will be considered for placement when dragging and placing items in the editor even if it is not visible, such as in the case of hidden collision meshes

  • crumbling_event_includes_children (bool): [Read-Write] If this and bNotifyCrumblings are true, the crumbling events will contain released children indices.

  • custom_depth_stencil_value (int32): [Read-Write] Optionally write this 0-255 value to the stencil buffer in CustomDepth pass (Requires project setting or r.CustomDepth == 3)

  • custom_depth_stencil_write_mask (RendererStencilMask): [Read-Write] Mask used for stencil buffer writes.

  • custom_primitive_data (CustomPrimitiveData): [Read-Write] Optional user defined default values for the custom primitive data of this primitive

  • custom_renderer_type (type(Class)): [Read-Write] Custom class type that will be used to render the geometry collection instead of using the native rendering.

  • damage_model (DamageModelTypeEnum): [Read-Write] Damage model to use for evaluating destruction.

  • damage_propagation_data (GeometryCollectionDamagePropagationData): [Read-Write] Data about how damage propagation shoudl behave.

  • damage_threshold (Array[float]): [Read-Write]

  • desired_cache_time (float): [Read-Only]

  • detail_mode (DetailMode): [Read-Write] If detail mode is >= system detail mode, primitive won’t be rendered.

  • editable_when_inherited (bool): [Read-Write] True if this component can be modified when it was inherited from a parent actor class

  • emissive_light_source (bool): [Read-Write] Whether the primitive will be used as an emissive light source.

  • enable_abandon_after_level (bool): [Read-Write] Enables use of ReplicationAbandonAfterLevel to stop providing network updates to clients when the updated particle is of a level higher then specified.

  • enable_auto_lod_generation (bool): [Read-Write] Whether to include this component in HLODs or not.

  • enable_clustering (bool): [Read-Write]

  • enable_damage_from_collision (bool): [Read-Write] Whether or not collisions against this geometry collection will apply strain which could cause the geometry collection to fracture.

  • enable_material_parameter_caching (bool): [Read-Write]

  • enable_replication (bool): [Read-Write] Per-instance override to enable/disable replication for the geometry collection

  • enable_run_time_data_collection (bool): [Read-Write]

  • exclude_for_specific_hlod_levels (Array[int32]): [Read-Write] deprecated: WARNING: This property has been deprecated, use the SetExcludedFromHLODLevel/IsExcludedFromHLODLevel functions instead

  • exclude_from_hlod_levels (uint8): [Read-Write] Which specific HLOD levels this component should be excluded from

  • exclude_from_light_attachment_group (bool): [Read-Write] If set, then it overrides any bLightAttachmentsAsGroup set in a parent.

  • fill_collision_underneath_for_navmesh (bool): [Read-Write] If set, navmesh will not be generated under the surface of the geometry

  • force_mip_streaming (bool): [Read-Write] If true, forces mips for textures used by this component to be resident when this component’s level is loaded.

  • force_motion_blur (bool): [Read-Write] If ForceMotionBlur is on, motion blur will always be active, even if the GeometryCollection is at rest.

  • generate_overlap_events (bool): [Read-Write]

  • global_crumbling_event_includes_children (bool): [Read-Write] If this and bNotifyGlobalCrumblings are true, the crumbling events will contain released children indices.

  • gravity_group_index (int32): [Read-Write]

  • hidden_in_game (bool): [Read-Write] Whether to hide the primitive in game, if the primitive is Visible.

  • hidden_in_scene_capture (bool): [Read-Write] When true, will not be captured by Scene Capture

  • hlod_batching_policy (HLODBatchingPolicy): [Read-Write] Determines how the geometry of a component will be incorporated in proxy (simplified) HLODs.

  • holdout (bool): [Read-Write] If this is True, this primitive will render black with an alpha of 0, but all secondary effects (shadows, reflections, indirect lighting) remain. This feature is currently only implemented in the Path Tracer.

  • ignore_radial_force (bool): [Read-Write] Will ignore radial forces applied to this component.

  • ignore_radial_impulse (bool): [Read-Write] Will ignore radial impulses applied to this component.

  • indirect_lighting_cache_quality (IndirectLightingCacheQuality): [Read-Write] Quality of indirect lighting for Movable primitives. This has a large effect on Indirect Lighting Cache update time.

  • initial_angular_velocity (Vector): [Read-Write]

  • initial_linear_velocity (Vector): [Read-Write]

  • initial_velocity_type (InitialVelocityTypeEnum): [Read-Write]

  • initialization_fields (Array[FieldSystemActor]): [Read-Write]

  • is_editor_only (bool): [Read-Write] If true, the component will be excluded from non-editor builds

  • ld_max_draw_distance (float): [Read-Write] Max draw distance exposed to LDs. The real max draw distance is the min (disregarding 0) of this and volumes affecting this object.

  • light_attachments_as_group (bool): [Read-Write] Whether to light this component and any attachments as a group. This only has effect on the root component of an attachment tree. When enabled, attached component shadowing settings like bCastInsetShadow, bCastVolumetricTranslucentShadow, etc, will be ignored. This is useful for improving performance when multiple movable components are attached together.

  • lighting_channels (LightingChannels): [Read-Write] Channels that this component should be in. Lights with matching channels will affect the component. These channels only apply to opaque materials, direct lighting, and dynamic lighting and shadowing.

  • lightmap_type (LightmapType): [Read-Write] Controls the type of lightmap used for this component.

  • linear_ether_drag (float): [Read-Write] Uniform linear ether drag. deprecated: Use PhysicalMaterial instead.

  • max_cluster_level (int32): [Read-Write] Maximum level for cluster breaks.

  • max_simulated_level (int32): [Read-Write] The maximum level to create rigid bodies that could be simulated.

    Example: If we have a Geometry Collection with 2 levels, where: 0 = Root 1 = Clusters 2 = Leaf Nodes A setting of ‘1’ would only generate a physics representation of the Root transform and Level 1 clusters. The leaf nodes on Level 2 would never be created on the solver, and would therefore never be considered as part of the simulation.

  • min_draw_distance (float): [Read-Write] The minimum distance at which the primitive should be rendered, measured in world space units from the center of the primitive’s bounding sphere to the camera position.

  • mobility (ComponentMobility): [Read-Write] How often this component is allowed to move, used to make various optimizations. Only safe to set in constructor.

  • multi_body_overlap (bool): [Read-Write] If true, this component will generate individual overlaps for each overlapping physics body if it is a multi-body component. When false, this component will generate only one overlap, regardless of how many physics bodies it has and how many of them are overlapping another component/body. This flag has no influence on single body components.

  • never_distance_cull (bool): [Read-Write] When enabled this object will not be culled by distance. This is ignored if a child of a HLOD.

  • notify_breaks (bool): [Read-Write] If true, this component will generate breaking events that other systems may subscribe to.

  • notify_collisions (bool): [Read-Write] If true, this component will generate collision events that other systems may subscribe to.

  • notify_crumblings (bool): [Read-Write] If true, this component will generate crumbling events that other systems may subscribe to.

  • notify_geometry_collection_physics_loading_state_change (NotifyGeometryCollectionPhysicsLoadingStateChange): [Read-Write]

  • notify_geometry_collection_physics_state_change (NotifyGeometryCollectionPhysicsStateChange): [Read-Write]

  • notify_global_breaks (bool): [Read-Write] If true, this component will generate breaking events that will be listened by the global event relay.

  • notify_global_collisions (bool): [Read-Write] If true, this component will generate collision events that will be listened by the global event relay.

  • notify_global_crumblings (bool): [Read-Write] If true, this component will generate crumbling events that will be listened by the global event relay.

  • notify_global_removals (bool): [Read-Write] If true, this component will generate removal events that will be listened by the global event relay.

  • notify_removals (bool): [Read-Write] If true, this component will generate removal events that other systems may subscribe to.

  • notify_trailing (bool): [Read-Write] If true, this component will generate trailing events that other systems may subscribe to.

  • object_type (ObjectStateTypeEnum): [Read-Write] ObjectType defines how to initialize the rigid objects state, Kinematic, Sleeping, Dynamic.

  • on_begin_cursor_over (ComponentBeginCursorOverSignature): [Read-Write] Event called when the mouse cursor is moved over this component and mouse over events are enabled in the player controller

  • on_chaos_break_event (OnChaosBreakEvent): [Read-Write]

  • on_chaos_crumbling_event (OnChaosCrumblingEvent): [Read-Write]

  • on_chaos_physics_collision (OnChaosPhysicsCollision): [Read-Write]

  • on_chaos_removal_event (OnChaosRemovalEvent): [Read-Write]

  • on_clicked (ComponentOnClickedSignature): [Read-Write] Event called when the left mouse button is clicked while the mouse is over this component and click events are enabled in the player controller

  • on_component_activated (ActorComponentActivatedSignature): [Read-Write] Called when the component has been activated, with parameter indicating if it was from a reset

  • on_component_begin_overlap (ComponentBeginOverlapSignature): [Read-Write] Event called when something starts to overlaps this component, for example a player walking into a trigger. For events when objects have a blocking collision, for example a player hitting a wall, see ‘Hit’ events. note: Both this component and the other one must have GetGenerateOverlapEvents() set to true to generate overlap events. note: When receiving an overlap from another object’s movement, the directions of ‘Hit.Normal’ and ‘Hit.ImpactNormal’ will be adjusted to indicate force from the other object against this object.

  • on_component_deactivated (ActorComponentDeactivateSignature): [Read-Write] Called when the component has been deactivated

  • on_component_end_overlap (ComponentEndOverlapSignature): [Read-Write] Event called when something stops overlapping this component note: Both this component and the other one must have GetGenerateOverlapEvents() set to true to generate overlap events.

  • on_component_hit (ComponentHitSignature): [Read-Write] Event called when a component hits (or is hit by) something solid. This could happen due to things like Character movement, using Set Location with ‘sweep’ enabled, or physics simulation. For events when objects overlap (e.g. walking into a trigger) see the ‘Overlap’ event. note: For collisions during physics simulation to generate hit events, ‘Simulation Generates Hit Events’ must be enabled for this component. note: When receiving a hit from another object’s movement, the directions of ‘Hit.Normal’ and ‘Hit.ImpactNormal’ will be adjusted to indicate force from the other object against this object. note: NormalImpulse will be filled in for physics-simulating bodies, but will be zero for swept-component blocking collisions.

  • on_component_physics_state_changed (ComponentPhysicsStateChanged): [Read-Write] Event called when physics state is created or destroyed for this component

  • on_component_sleep (ComponentSleepSignature): [Read-Write] Event called when the underlying physics objects is put to sleep

  • on_component_wake (ComponentWakeSignature): [Read-Write] Event called when the underlying physics objects is woken up

  • on_end_cursor_over (ComponentEndCursorOverSignature): [Read-Write] Event called when the mouse cursor is moved off this component and mouse over events are enabled in the player controller

  • on_input_touch_begin (ComponentOnInputTouchBeginSignature): [Read-Write] Event called when a touch input is received over this component when touch events are enabled in the player controller

  • on_input_touch_end (ComponentOnInputTouchEndSignature): [Read-Write] Event called when a touch input is released over this component when touch events are enabled in the player controller

  • on_input_touch_enter (ComponentBeginTouchOverSignature): [Read-Write] Event called when a finger is moved over this component when touch over events are enabled in the player controller

  • on_input_touch_leave (ComponentEndTouchOverSignature): [Read-Write] Event called when a finger is moved off this component when touch over events are enabled in the player controller

  • on_released (ComponentOnReleasedSignature): [Read-Write] Event called when the left mouse button is released while the mouse is over this component click events are enabled in the player controller

  • only_owner_see (bool): [Read-Write] If this is True, this component will only be visible when the view actor is the component’s owner, directly or indirectly.

  • overlay_material (MaterialInterface): [Read-Write] Translucent material to blend on top of this mesh. Mesh will be rendered twice - once with a base material and once with overlay material

  • overlay_material_max_draw_distance (float): [Read-Write] The max draw distance for overlay material. A distance of 0 indicates that overlay will be culled using primitive max distance.

  • override_custom_renderer (bool): [Read-Write] If true, CustomRendererType will be used. If false, CustomRendererType comes from the RestCollection.

  • override_materials (Array[MaterialInterface]): [Read-Write] Material overrides.

  • owner_no_see (bool): [Read-Write] If this is True, this component won’t be visible when the view actor is the component’s owner, directly or indirectly.

  • physical_material (ChaosPhysicalMaterial): [Read-Write] Physical Properties deprecated: Physical material now derived from render materials, for instance overrides use PhysicalMaterialOverride.

  • physical_material_override (PhysicalMaterial): [Read-Write] deprecated: Physical material now derived from render materials, for instance overrides use Colliisons PhysicalMaterialOverride.

  • physics_volume_changed_delegate (PhysicsVolumeChanged): [Read-Write] Delegate that will be called when PhysicsVolume has been changed *

  • primary_component_tick (ActorComponentTickFunction): [Read-Write] Main tick function for the Component

  • ray_tracing_group_culling_priority (RayTracingGroupCullingPriority): [Read-Write] Defines how quickly it should be culled. For example buildings should have a low priority, but small dressing should have a high priority.

  • ray_tracing_group_id (int32): [Read-Write] Defines run-time groups of components. For example allows to assemble multiple parts of a building at runtime. -1 means that component doesn’t belong to any group.

  • receive_mobile_csm_shadows (bool): [Read-Write] Mobile only: If disabled this component will not receive CSM shadows. (Components that do not receive CSM may have reduced shading cost)

  • receives_decals (bool): [Read-Write] Whether the primitive receives decals.

  • relative_location (Vector): [Read-Write] Location of the component relative to its parent

  • relative_rotation (Rotator): [Read-Write] Rotation of the component relative to its parent

  • relative_scale3d (Vector): [Read-Write] Non-uniform scaling of the component relative to its parent. Note that scaling is always applied in local space (no shearing etc)

  • render_custom_depth (bool): [Read-Write] If true, this component will be rendered in the CustomDepth pass (usually used for outlines)

  • render_in_depth_pass (bool): [Read-Write] If true, this component will be rendered in the depth pass even if it’s not rendered in the main pass

  • render_in_main_pass (bool): [Read-Write] If true, this component will be rendered in the main pass (z prepass, basepass, transparency)

  • replicate_physics_to_autonomous_proxy (bool): [Read-Write] True if physics should be replicated to autonomous proxies. This should be true for

    server-authoritative simulations, and false for client authoritative simulations.

  • replicate_using_registered_sub_object_list (bool): [Read-Write] When true the replication system will only replicate the registered subobjects list When false the replication system will instead call the virtual ReplicateSubObjects() function where the subobjects need to be manually replicated.

  • replicates (bool): [Read-Write] Is this component currently replicating? Should the network code consider it for replication? Owning Actor must be replicating first!

  • replication_abandon_after_level (int32): [Read-Write] If replicating - the cluster level after which replication will not happen see: bEnableAbandonAfterLevel

  • replication_abandon_cluster_level (int32): [Read-Write] If replicating - the cluster level to stop sending corrections for geometry collection chunks. recommended for smaller leaf levels when the size of the objects means they are no longer gameplay relevant to cut down on required bandwidth to update a collection. See: bEnableAbandonAfterLevel deprecated: GeometryCollection now uses ReplicationAbandonAfterLevel instead of ReplicationAbandonClusterLevel.

  • replication_max_position_and_velocity_correction_level (int32): [Read-Write] If replicating - the maximum level where clusters will have their position and velocity send over to the client for tracking and correcting When breaking, client will only receive the initial break velocity This helps save bandwidth where only the destruction state of the GC is to be replicated but the falling pieces do not need to be tracked precisely note: This will have an effect only if set to a value less than ReplicationAbandonAfterLevel see: ReplicationAbandonAfterLevel

  • rest_collection (GeometryCollection): [Read-Write]

  • return_material_on_move (bool): [Read-Write] If true, component sweeps will return the material in their hit result. see: MoveComponent(), FHitResult

  • run_time_data_collection_guid (Guid): [Read-Write]

  • runtime_virtual_textures (Array[RuntimeVirtualTexture]): [Read-Write] Array of runtime virtual textures into which we draw the mesh for this actor. The material also needs to be set up to output to a virtual texture.

  • self_shadow_only (bool): [Read-Write] When enabled, the component will only cast a shadow on itself and not other components in the world. This is especially useful for first person weapons, and forces bCastInsetShadow to be enabled.

  • shadow_cache_invalidation_behavior (ShadowCacheInvalidationBehavior): [Read-Write] Control shadow invalidation behavior, in particular with respect to Virtual Shadow Maps and material effects like World Position Offset.

  • should_update_physics_volume (bool): [Read-Write] Whether or not the cached PhysicsVolume this component overlaps should be updated when the component is moved. see: GetPhysicsVolume()

  • show_bone_colors (bool): [Read-Write] Display Bone Colors instead of assigned materials

  • simulating (bool): [Read-Write] deprecated: GeometryCollection now abides the bSimulatePhysics flag from the base class.

  • single_sample_shadow_from_stationary_lights (bool): [Read-Write] Whether the whole component should be shadowed as one from stationary lights, which makes shadow receiving much cheaper. When enabled shadowing data comes from the volume lighting samples precomputed by Lightmass, which are very sparse. This is currently only used on stationary directional lights.

  • static_when_not_moveable (bool): [Read-Write] When false, the underlying physics body will contain all sim data (mass, inertia tensor, etc) even if mobility is not set to Moveable

  • store_velocities (bool): [Read-Write] If true, this component will save linear and angular velocities on its DynamicCollection.

  • trace_complex_on_move (bool): [Read-Write] If true, component sweeps with this component should trace against complex collision during movement (for example, each triangle of a mesh). If false, collision will be resolved against simple collision bounds instead. see: MoveComponent()

  • translucency_sort_distance_offset (float): [Read-Write] Modified sort distance offset for translucent objects in world units. A positive number will move the sort distance further and a negative number will move the distance closer.

    Ignored if the object is not translucent. Warning: Adjusting this value will prevent the renderer from correctly sorting based on distance. Only modify this value if you are certain it will not cause visual artifacts.

  • translucency_sort_priority (int32): [Read-Write] Translucent objects with a lower sort priority draw behind objects with a higher priority. Translucent objects with the same priority are rendered from back-to-front based on their bounds origin. This setting is also used to sort objects being drawn into a runtime virtual texture.

    Ignored if the object is not translucent. The default priority is zero. Warning: This should never be set to a non-default value unless you know what you are doing, as it will prevent the renderer from sorting correctly. It is especially problematic on dynamic gameplay effects.

  • treat_as_background_for_occlusion (bool): [Read-Write] Treat this primitive as part of the background for occlusion purposes. This can be used as an optimization to reduce the cost of rendering skyboxes, large ground planes that are part of the vista, etc.

  • update_navigation_in_tick (bool): [Read-Write]

  • use_as_occluder (bool): [Read-Write] Whether to render the primitive in the depth only pass. This should generally be true for all objects, and let the renderer make decisions about whether to render objects in the depth only pass. todo: if any rendering features rely on a complete depth only pass, this variable needs to go away.

  • use_attach_parent_bound (bool): [Read-Write] If true, this component uses its parents bounds when attached. This can be a significant optimization with many components attached together.

  • use_root_proxy_for_navigation (bool): [Read-Write]

  • use_size_specific_damage_threshold (bool): [Read-Write] Damage threshold for clusters at different levels.

  • virtual_texture_cull_mips (int8): [Read-Write] Number of lower mips in the runtime virtual texture to skip for rendering this primitive. Larger values reduce the effective draw distance in the runtime virtual texture. This culling method doesn’t take into account primitive size or virtual texture size.

  • virtual_texture_lod_bias (int8): [Read-Write] Bias to the LOD selected for rendering to runtime virtual textures.

  • virtual_texture_min_coverage (int8): [Read-Write] Set the minimum pixel coverage before culling from the runtime virtual texture. Larger values reduce the effective draw distance in the runtime virtual texture.

  • virtual_texture_render_pass_type (RuntimeVirtualTextureMainPassType): [Read-Write] Controls if this component draws in the main pass as well as in the virtual texture.

  • visible (bool): [Read-Write] Whether to completely draw the primitive; if false, the primitive is not drawn, does not cast a shadow.

  • visible_in_ray_tracing (bool): [Read-Write] If true, this component will be visible in ray tracing effects. Turning this off will remove it from ray traced reflections, shadows, etc.

  • visible_in_real_time_sky_captures (bool): [Read-Write] If true, this component will be visible in real-time sky light reflection captures.

  • visible_in_reflection_captures (bool): [Read-Write] If true, this component will be visible in reflection captures.

  • visible_in_scene_capture_only (bool): [Read-Write] When true, will only be visible in Scene Capture

property abandoned_collision_profile_name: Name

[Read-Write] Whether abandoned particles on the client should continue to have collision (i.e. still be in the external/internal acceleration structure).

Type:

(Name)

property allow_removal_on_break: bool

[Read-Write] Allow removal on break for the instance if the rest collection has it enabled

Type:

(bool)

property allow_removal_on_sleep: bool

[Read-Write] Allow removal on sleep for the instance if the rest collection has it enabled

Type:

(bool)

property angular_ether_drag: float

[Read-Write] Uniform angular ether drag. deprecated: Use PhysicalMaterial instead.

Type:

(float)

apply_angular_velocity(item_index, angular_velocity) None

Apply angular velocity on specific piece

Parameters:
  • item_index (int32) – item index ( from HitResult) of the piece to apply velocity on

  • angular_velocity (Vector) – linear velocity to apply

apply_asset_defaults() None

Apply default values from asset ( damage related data and physics material )

apply_breaking_angular_velocity(item_index, angular_velocity) None

Apply linear velocity on breaking pieces for a specific cluster If ItemIndex does not represent a cluster this will do nothing

Parameters:
  • item_index (int32) – item index ( from HitResult) of the cluster owning the breaking pieces to apply velocity on

  • angular_velocity (Vector) – linear velocity to apply

apply_breaking_linear_velocity(item_index, linear_velocity) None

Apply linear velocity on breaking pieces for a specific cluster If ItemIndex does not represent a cluster this will do nothing

Parameters:
  • item_index (int32) – item index ( from HitResult) of the cluster owning the breaking pieces to apply velocity on

  • linear_velocity (Vector) – linear velocity to apply

apply_external_strain(item_index, location, radius=0.000000, propagation_depth=0, propagation_factor=1.000000, strain=0.000000) None

Apply an external strain to specific piece of the geometry collection

Parameters:
  • item_index (int32) – item index ( from HitResult) of the piece to apply strain on

  • location (Vector) – world location of where to apply the strain

  • radius (float) – radius from the location point to apply the strain to ( using the center of mass of the pieces )

  • propagation_depth (int32) – How many level of connection to follow to propagate the strain through

  • propagation_factor (float) – when using propagation, the factor to multiply the strain from one level to the other, allowing falloff effect

  • strain (float) – strain / damage to apply

apply_internal_strain(item_index, location, radius=0.000000, propagation_depth=0, propagation_factor=1.000000, strain=0.000000) None

Apply an internal strain to specific piece of the geometry collection

Parameters:
  • item_index (int32) – item index ( from HitResult) of the piece to apply strain on

  • location (Vector) – world location of where to apply the strain

  • radius (float) – radius from the location point to apply the strain to ( using the center of mass of the pieces )

  • propagation_depth (int32) – How many level of connection to follow to propagate the strain through

  • propagation_factor (float) – when using propagation, the factor to multiply the strain from one level to the other, allowing falloff effect

  • strain (float) – strain / damage to apply

apply_kinematic_field(radius, position) None
SetDynamicState

This function will dispatch a command to the physics thread to apply a kinematic to dynamic state change for the geo collection particles within the field.

Parameters:
  • radius (float) – Radial influence from the position

  • position (Vector) – The location of the command

apply_linear_velocity(item_index, linear_velocity) None

Apply linear velocity on specific piece

Parameters:
  • item_index (int32) – item index ( from HitResult) of the piece to apply velocity on

  • linear_velocity (Vector) – linear velocity to apply

apply_physics_field(enabled, target, meta_data, field) None
AddPhysicsField

This function will dispatch a command to the physics thread to apply a generic evaluation of a user defined transient field network. See documentation, for examples of how to recreate variations of the above generic fields using field networks

Parameters:
property cache_playback: bool

[Read-Only]

Type:

(bool)

property cluster_connection_type: ClusterConnectionTypeEnum

[Read-Write] deprecated: Connection types are defined on the asset now.

Type:

(ClusterConnectionTypeEnum)

property cluster_group_index: int

[Read-Write] Maximum level for cluster breaks.

Type:

(int32)

property collision_group: int

[Read-Write]

Type:

(int32)

property collision_profile_per_level: None

[Read-Write] A per-level collision profile name. If the name is set to NONE or an invalid collision profile, nothing will be changed. If the there are more levels than elements in this array, then each level will use the index that best matches it. For example, if the particle is level 2, and there is only 1 element in the array, then the particle will use the 0th collision profile. AbandonedCollisionProfileName will override this on the client when relevant.

Type:

(Array[Name])

property collision_sample_fraction: float

[Read-Write] Fraction of collision sample particles to keep

Type:

(float)

crumble_active_clusters() None

Crumbe active clusters for this entire geometry collection this will apply to internal and regular clusters

crumble_cluster(item_index) None

Crumbe a cluster into all its pieces

Parameters:

item_index (int32) – item index ( from HitResult) of the cluster to crumble

property crumbling_event_includes_children: bool

[Read-Only] If this and bNotifyCrumblings are true, the crumbling events will contain released children indices.

Type:

(bool)

property custom_renderer_type: Class

[Read-Write] Custom class type that will be used to render the geometry collection instead of using the native rendering.

Type:

(type(Class))

property damage_model: DamageModelTypeEnum

[Read-Write] Damage model to use for evaluating destruction.

Type:

(DamageModelTypeEnum)

property damage_propagation_data: GeometryCollectionDamagePropagationData

[Read-Write] Data about how damage propagation shoudl behave.

Type:

(GeometryCollectionDamagePropagationData)

property damage_threshold: None

[Read-Write]

Type:

(Array[float])

property desired_cache_time: float

[Read-Only]

Type:

(float)

property enable_abandon_after_level: bool

[Read-Write] Enables use of ReplicationAbandonAfterLevel to stop providing network updates to clients when the updated particle is of a level higher then specified.

Type:

(bool)

property enable_clustering: bool

[Read-Write]

Type:

(bool)

property enable_damage_from_collision: bool

[Read-Write] Whether or not collisions against this geometry collection will apply strain which could cause the geometry collection to fracture.

Type:

(bool)

property enable_replication: bool

[Read-Write] Per-instance override to enable/disable replication for the geometry collection

Type:

(bool)

property force_motion_blur: bool

[Read-Write] If ForceMotionBlur is on, motion blur will always be active, even if the GeometryCollection is at rest.

Type:

(bool)

get_debug_info() str

RestCollection

Return type:

str

get_initial_level(item_index) int32

Get the initial level of a specific piece Initial level means the level as it is in the unbroken state

Parameters:

item_index (int32) – item index ( from HitResult) of the cluster to get level from

Return type:

int32

get_initial_local_rest_transforms() Array[Transform]

Get the initial rest transforms in component (local) space space, they are the transforms as defined in the rest collection asset

Return type:

Array[Transform]

get_local_bounds() Box

Get local bounds of the geometry collection

Return type:

Box

get_mass_and_extents(item_index) -> (out_mass=float, out_extents=Box)

Get mass and extent of a specific piece

Parameters:

item_index (int32) – item index ( from HitResult) of the cluster to get level from

Returns:

out_mass (float):

out_extents (Box):

Return type:

tuple

get_root_current_transform() Transform

Get the root item current world transform

Return type:

Transform

get_root_index() int32

Get the root item index of the hierarchy

Return type:

int32

get_root_initial_transform() Transform

Get the root item initial transform in world space

Return type:

Transform

property global_crumbling_event_includes_children: bool

[Read-Only] If this and bNotifyGlobalCrumblings are true, the crumbling events will contain released children indices.

Type:

(bool)

property gravity_group_index: int

[Read-Write]

Type:

(int32)

property initial_angular_velocity: Vector

[Read-Write]

Type:

(Vector)

property initial_linear_velocity: Vector

[Read-Write]

Type:

(Vector)

property initial_velocity_type: InitialVelocityTypeEnum

[Read-Write]

Type:

(InitialVelocityTypeEnum)

property initialization_fields: None

[Read-Only]

Type:

(Array[FieldSystemActor])

is_root_broken() bool

return true if the root cluster is not longer active at runtime

Return type:

bool

property linear_ether_drag: float

[Read-Write] Uniform linear ether drag. deprecated: Use PhysicalMaterial instead.

Type:

(float)

property max_cluster_level: int

[Read-Write] Maximum level for cluster breaks.

Type:

(int32)

property max_simulated_level: int

[Read-Write] The maximum level to create rigid bodies that could be simulated. Example: If we have a Geometry Collection with 2 levels, where: 0 = Root 1 = Clusters 2 = Leaf Nodes A setting of ‘1’ would only generate a physics representation of the Root transform and Level 1 clusters. The leaf nodes on Level 2 would never be created on the solver, and would therefore never be considered as part of the simulation.

Type:

(int32)

property notify_breaks: bool

[Read-Only] If true, this component will generate breaking events that other systems may subscribe to.

Type:

(bool)

property notify_collisions: bool

[Read-Only] If true, this component will generate collision events that other systems may subscribe to.

Type:

(bool)

property notify_crumblings: bool

[Read-Only] If true, this component will generate crumbling events that other systems may subscribe to.

Type:

(bool)

property notify_geometry_collection_physics_loading_state_change: NotifyGeometryCollectionPhysicsLoadingStateChange

[Read-Write]

Type:

(NotifyGeometryCollectionPhysicsLoadingStateChange)

property notify_geometry_collection_physics_state_change: NotifyGeometryCollectionPhysicsStateChange

[Read-Write]

Type:

(NotifyGeometryCollectionPhysicsStateChange)

property notify_global_breaks: bool

[Read-Only] If true, this component will generate breaking events that will be listened by the global event relay.

Type:

(bool)

property notify_global_collisions: bool

[Read-Only] If true, this component will generate collision events that will be listened by the global event relay.

Type:

(bool)

property notify_global_crumblings: bool

[Read-Only] If true, this component will generate crumbling events that will be listened by the global event relay.

Type:

(bool)

property notify_global_removals: bool

[Read-Only] If true, this component will generate removal events that will be listened by the global event relay.

Type:

(bool)

property notify_removals: bool

[Read-Only] If true, this component will generate removal events that other systems may subscribe to.

Type:

(bool)

property notify_trailing: bool

[Read-Only] If true, this component will generate trailing events that other systems may subscribe to.

Type:

(bool)

property object_type: ObjectStateTypeEnum

[Read-Write] ObjectType defines how to initialize the rigid objects state, Kinematic, Sleeping, Dynamic.

Type:

(ObjectStateTypeEnum)

property on_chaos_break_event: OnChaosBreakEvent

[Read-Write]

Type:

(OnChaosBreakEvent)

property on_chaos_crumbling_event: OnChaosCrumblingEvent

[Read-Write]

Type:

(OnChaosCrumblingEvent)

property on_chaos_physics_collision: OnChaosPhysicsCollision

[Read-Write]

Type:

(OnChaosPhysicsCollision)

property on_chaos_removal_event: OnChaosRemovalEvent

[Read-Write]

Type:

(OnChaosRemovalEvent)

property override_custom_renderer: bool

[Read-Write] If true, CustomRendererType will be used. If false, CustomRendererType comes from the RestCollection.

Type:

(bool)

property physical_material: ChaosPhysicalMaterial

[Read-Write] Physical Properties deprecated: Physical material now derived from render materials, for instance overrides use PhysicalMaterialOverride.

Type:

(ChaosPhysicalMaterial)

property physical_material_override: PhysicalMaterial

[Read-Write] deprecated: Physical material now derived from render materials, for instance overrides use Colliisons PhysicalMaterialOverride.

Type:

(PhysicalMaterial)

receive_physics_collision(collision_info) None

Receive Physics Collision

Parameters:

collision_info (ChaosPhysicsCollisionInfo) –

remove_all_anchors() None

this will remove anchors on all the pieces ( including the static and kinematic initial states ones ) of the geometry colection

property replication_abandon_after_level: int

[Read-Write] If replicating - the cluster level after which replication will not happen see: bEnableAbandonAfterLevel

Type:

(int32)

property replication_abandon_cluster_level: int

[Read-Write] If replicating - the cluster level to stop sending corrections for geometry collection chunks. recommended for smaller leaf levels when the size of the objects means they are no longer gameplay relevant to cut down on required bandwidth to update a collection. See: bEnableAbandonAfterLevel deprecated: GeometryCollection now uses ReplicationAbandonAfterLevel instead of ReplicationAbandonClusterLevel.

Type:

(int32)

property replication_max_position_and_velocity_correction_level: int

[Read-Write] If replicating - the maximum level where clusters will have their position and velocity send over to the client for tracking and correcting When breaking, client will only receive the initial break velocity This helps save bandwidth where only the destruction state of the GC is to be replicated but the falling pieces do not need to be tracked precisely note: This will have an effect only if set to a value less than ReplicationAbandonAfterLevel see: ReplicationAbandonAfterLevel

Type:

(int32)

property rest_collection: GeometryCollection

[Read-Only]

Type:

(GeometryCollection)

property run_time_data_collection_guid: Guid

[Read-Only]

Type:

(Guid)

set_abandoned_particle_collision_profile_name(collision_profile) None

Set Abandoned Particle Collision Profile Name

Parameters:

collision_profile (Name) –

set_anchored_by_box(world_space_box, anchored, max_level=-1) None

Set all pieces within a world space bounding box to be anchored or not

Parameters:
  • world_space_box (Box) –

  • anchored (bool) –

  • max_level (int32) –

set_anchored_by_index(index, anchored) None

Set a piece or cluster to be anchored or not

Parameters:
  • index (int32) –

  • anchored (bool) –

set_anchored_by_transformed_box(box, transform, anchored, max_level=-1) None

Set all pieces within a world transformed bounding box to be anchored or not

Parameters:
  • box (Box) –

  • transform (Transform) –

  • anchored (bool) –

  • max_level (int32) –

set_enable_damage_from_collision(value) None

Set Enable Damage from Collision

Parameters:

value (bool) –

set_local_rest_transforms(transforms, only_leaves) None

Set the local rest transform, this may be different from the rest collection If the geometry collection is already simulating those matrices will be overriden by the physics state updates

Parameters:
set_notify_breaks(new_notify_breaks) None

Changes whether or not this component will get future break notifications.

Parameters:

new_notify_breaks (bool) –

set_notify_crumblings(new_notify_crumblings, new_crumbling_event_includes_children=False) None

Changes whether or not this component will get future crumbling notifications.

Parameters:
  • new_notify_crumblings (bool) –

  • new_crumbling_event_includes_children (bool) –

set_notify_global_breaks(new_notify_global_breaks) None

Changes whether or not this component will get future global break notifications.

Parameters:

new_notify_global_breaks (bool) –

set_notify_global_collision(new_notify_global_collisions) None

Changes whether or not this component will get future global collision notifications.

Parameters:

new_notify_global_collisions (bool) –

set_notify_global_crumblings(new_notify_global_crumblings, global_new_crumbling_event_includes_children) None

Changes whether or not this component will get future global crumbling notifications.

Parameters:
  • new_notify_global_crumblings (bool) –

  • global_new_crumbling_event_includes_children (bool) –

set_notify_global_removals(new_notify_global_removals) None

Changes whether or not this component will get future global removal notifications.

Parameters:

new_notify_global_removals (bool) –

set_notify_removals(new_notify_removals) None

Changes whether or not this component will get future removal notifications.

Parameters:

new_notify_removals (bool) –

set_per_level_collision_profile_names(profile_names) None

Set Per Level Collision Profile Names

Parameters:

profile_names (Array[Name]) –

set_per_particle_collision_profile_name(bone_ids, profile_name) None

Set Per Particle Collision Profile Name

Parameters:
  • bone_ids (Array[int32]) –

  • profile_name (Name) –

set_rest_collection(rest_collection_in, apply_asset_defaults=True) None

RestCollection

Parameters:
property show_bone_colors: bool

[Read-Write] Display Bone Colors instead of assigned materials

Type:

(bool)

property simulating: bool

[Read-Write] deprecated: GeometryCollection now abides the bSimulatePhysics flag from the base class.

Type:

(bool)

property store_velocities: bool

[Read-Only] If true, this component will save linear and angular velocities on its DynamicCollection.

Type:

(bool)

property update_navigation_in_tick: bool

[Read-Write]

Type:

(bool)

property use_root_proxy_for_navigation: bool

[Read-Write]

Type:

(bool)

property use_size_specific_damage_threshold: bool

[Read-Write] Damage threshold for clusters at different levels.

Type:

(bool)