unreal.DestructibleComponent

class unreal.DestructibleComponent(outer=None, name='None')

Bases: unreal.SkinnedMeshComponent

This component holds the physics data for a DestructibleActor.

The USkeletalMesh pointer in the base class (SkinnedMeshComponent) MUST be a DestructibleMesh

C++ Source:

  • Plugin: ApexDestruction
  • Module: ApexDestruction
  • File: DestructibleComponent.h

Editor Properties: (see get_editor_property/set_editor_property)

  • 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 inject light into the Light Propagation Volume. This flag is only used if CastShadow is true. *

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

  • 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

  • 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.

  • 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. FWalkableSlopeOverride:

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

  • capsule_indirect_shadow_min_visibility (float): [Read-Write] Controls how dark the capsule indirect shadow can be.

  • cast_capsule_direct_shadow (bool): [Read-Write] Whether to use the capsule representation (when present) from a skeletal mesh’s ShadowPhysicsAsset for direct shadowing from lights. This type of shadowing is approximate but handles extremely wide area shadowing well. The softness of the shadow depends on the light’s LightSourceAngle / SourceRadius. This flag will force bCastInsetShadow to be enabled.

  • cast_capsule_indirect_shadow (bool): [Read-Write] Whether to use the capsule representation (when present) from a skeletal mesh’s ShadowPhysicsAsset for shadowing indirect lighting (from lightmaps or skylight).

  • 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_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.

    This flag is ignored (no shadows will be generated) if all materials on this component have an Unlit shading model.

  • 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.

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

  • component_use_fixed_skel_bounds (bool): [Read-Write] When true, skip using the physics asset etc. and always use the fixed bounds defined in the SkeletalMesh.

  • consider_all_bodies_for_bounds (bool): [Read-Write] If true, when updating bounds from a PhysicsAsset, consider _all_ BodySetups, not just those flagged with bConsiderForBounds.

  • 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.

  • destructible_mesh (DestructibleMesh): [Read-Write] Provide a blueprint interface for setting the destructible mesh

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

  • disable_morph_target (bool): [Read-Write] Disable Morphtarget for this component.

  • display_debug_update_rate_optimizations (bool): [Read-Write] Enable on screen debugging of update rate optimization. Red = Skipping 0 frames, Green = skipping 1 frame, Blue = skipping 2 frames, black = skipping more than 2 frames. turn this into a console command.:

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

  • enable_auto_lod_generation (bool): [Read-Write] If true, and if World setting has bEnableHierarchicalLOD equal to true, then this component will be included when generating a Proxy mesh for the parent Actor

  • enable_hard_sleeping (bool): [Read-Write] Enable “hard sleeping” for destruction-generated PxActors. This means that they turn kinematic when they sleep, but can be made dynamic again by application of enough damage.

  • enable_material_parameter_caching (bool): [Read-Write] Enable Material Parameter Caching

  • enable_update_rate_optimizations (bool): [Read-Write] if TRUE, Owner will determine how often animation will be updated and evaluated. See AnimUpdateRateTick() This allows to skip frames for performance. (For example based on visibility and size on screen).

  • exclude_for_specific_hlod_levels (Array(int32)): [Read-Write] Which specific HLOD levels this component should be excluded from

  • 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.

  • forced_lod_model (int32): [Read-Write] If 0, auto-select LOD level. if >0, force to (ForcedLodModel-1).

  • fracture_effect_override (bool): [Read-Write] If set, use this actor’s fracture effects instead of the asset’s fracture effects.

  • fracture_effects (Array(FractureEffect)): [Read-Write] Fracture effects for each fracture level. Used only if Fracture Effect Override is set.

  • generate_overlap_events (bool): [Read-Write] Generate Overlap Events

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

  • ignore_master_pose_component_lod (bool): [Read-Write] Flag that when set will ensure UpdateLODStatus will not take the MasterPoseComponent’s current LOD in consideration when determining the correct LOD level (this requires MasterPoseComponent’s LOD to always be >= determined LOD otherwise bone transforms could be missing

  • 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.

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

  • large_chunk_threshold (float): [Read-Write] The minimum size required to treat chunks as Large.

  • 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.

  • lpv_bias_multiplier (float): [Read-Write] Multiplier used to scale the Light Propagation Volume light injection bias, to reduce light bleeding. Set to 0 for no bias, 1 for default or higher for increased biasing (e.g. for thin geometry such as walls)

  • master_pose_component (SkinnedMeshComponent): [Read-Write] If set, this SkeletalMeshComponent will not use its SpaceBase for bone transform, but will use the component space transforms from the MasterPoseComponent. This is used when constructing a character using multiple skeletal meshes sharing the same skeleton within the same Actor.

  • 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.

  • min_lod_model (int32): [Read-Write] This is the min LOD that this component will use. (e.g. if set to 2 then only 2+ LOD Models will be used.) This is useful to set on meshes which are known to be a certain distance away and still want to have better LODs when zoomed in on them.

  • 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.

  • 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_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. Both this component and the other one must have GetGenerateOverlapEvents() set to true to generate overlap events.: 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 Both this component and the other one must have GetGenerateOverlapEvents() set to true to generate overlap events.:

  • on_component_fracture (ComponentFractureSignature): [Read-Write] Called when a component is touched

  • 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. For collisions during physics simulation to generate hit events, ‘Simulation Generates Hit Events’ must be enabled for this component.: 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.: NormalImpulse will be filled in for physics-simulating bodies, but will be zero for swept-component blocking collisions.:

  • 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.

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

  • override_min_lod (bool): [Read-Write] Whether we should use the min lod specified in MinLodModel for this component instead of the min lod in the mesh

  • 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.

  • per_bone_motion_blur (bool): [Read-Write] If true, use per-bone motion blur on this skeletal mesh (requires additional rendering, can be disabled to save performance).

  • physics_asset_override (PhysicsAsset): [Read-Write] PhysicsAsset is set in SkeletalMesh by default, but you can override with this value

  • 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

  • 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_main_pass (bool): [Read-Write] If true, this component will be rendered in the main pass (z prepass, basepass, transparency)

  • render_static (bool): [Read-Write] If true, render as static in reference pose.

  • 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.

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

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

  • 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.

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

  • 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.

  • skeletal_mesh (SkeletalMesh): [Read-Write] The skeletal mesh used by this component.

  • streaming_distance_multiplier (float): [Read-Write] Allows adjusting the desired streaming distance of streaming textures that uses UV 0. 1.0 is the default, whereas a higher value makes the textures stream in sooner from far away. A lower value (0.0-1.0) makes the textures stream in later (you have to be closer). Value can be < 0 (from legcay content, or code changes)

  • sync_attach_parent_lod (bool): [Read-Write] If true, this component uses its parents LOD when attached if available ForcedLOD can override this change. By default, it will use parent LOD.

  • 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. MoveComponent():

  • 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.

    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.

  • 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. 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_bounds_from_master_pose_component (bool): [Read-Write] When true, we will just using the bounds from our MasterPoseComponent. This is useful for when we have a Mesh Parented to the main SkelMesh (e.g. outline mesh or a full body overdraw effect that is toggled) that is always going to be the same bounds as parent. We want to do no calculations in that case.

  • use_max_lod_as_imposter (bool): [Read-Write] Use the Maximum LOD Mesh (imposter) instead of including Mesh data from this component in the Proxy Generation process

  • visibility_based_anim_tick_option (VisibilityBasedAnimTickOption): [Read-Write] * This is tick animation frequency option based on this component rendered or not or using montage * You can change this default value in the INI file * Mostly related with performance

  • 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_reflection_captures (bool): [Read-Write] If true, this component will be visible in reflection captures.

apply_damage(damage_amount, hit_location, impulse_dir, impulse_strength) → None

Take damage

Parameters:
apply_radius_damage(base_damage, hurt_origin, damage_radius, impulse_strength, full_damage) → None

Take radius damage

Parameters:
  • base_damage (float) –
  • hurt_origin (Vector) –
  • damage_radius (float) –
  • impulse_strength (float) –
  • full_damage (bool) –
destructible_mesh

(DestructibleMesh) – [Read-Write] Provide a blueprint interface for setting the destructible mesh

enable_hard_sleeping

(bool) – [Read-Write] Enable “hard sleeping” for destruction-generated PxActors. This means that they turn kinematic when they sleep, but can be made dynamic again by application of enough damage.

fracture_effect_override

(bool) – [Read-Write] If set, use this actor’s fracture effects instead of the asset’s fracture effects.

fracture_effects

(Array(FractureEffect)) – [Read-Only] Fracture effects for each fracture level. Used only if Fracture Effect Override is set.

get_destructible_mesh() → DestructibleMesh

Get Destructible Mesh

Returns:
Return type:DestructibleMesh
large_chunk_threshold

(float) – [Read-Write] The minimum size required to treat chunks as Large.

on_component_fracture

(ComponentFractureSignature) – [Read-Write] Called when a component is touched

set_destructible_mesh(new_mesh) → None

Set Destructible Mesh

Parameters:new_mesh (DestructibleMesh) –