Once I get that upgrade to 36-hour days, I will tackle that. – Mychaeel

UE3:PhysXDestructibleActor (UDK)

From Unreal Wiki, The Unreal Engine Documentation Site
Revision as of 11:47, 6 November 2009 by (Talk)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
UDK Object >> Actor >> FracturedStaticMeshActor >> PhysXDestructibleActor
Package: 
Engine

null

Properties

Property group 'Destructible'

bSupportChunksInSupportFragment

Type: bool

Modifiers: const

If this is checked, then only chunks that are children of a FracturedStaticMesh support fragment are considered for support.

bSupportChunksTouchWorld

Type: bool

Modifiers: const

If this is checked, then only chunks that touch the world are considered for support.

Default value: True

DestructibleParameters

Type: PhysXDestructible.PhysXDestructibleParameters

Modifiers: editinline

Destructible parameters - damage thresholds, crumble particle systems, etc.

Default value:

Member Value
bAccumulateDamage True
CrumbleParticleSize 10.0
DamageThreshold 5.0
DamageToRadius 0.1

PerFrameProcessBudget

Type: int

Modifiers: const

Per frame Chunk graph update processing budget, in leaf chunks's quantity

Default value: 100

SupportDepth

Type: int

Modifiers: const


Internal variables

bPlayFractureSound

Type: bool

Modifiers: transient, native

Fracture sound effect flag

DestructibleComponent

Type: PhysXDestructibleComponent

Contains aggregate collision info for all of the fragments

EffectBases

Type: array<SpawnBasis>

Modifiers: transient, native

Fracture effect data - one for each fragment

LightEnvironment

Type: LightEnvironmentComponent

In case the destructible becomes dynamic

LinearSize

Type: float

Modifiers: transient, native

Stored off linear size

Neighbors

Type: array<int>

Array of neighbors in the destructible structure

NumPartsRemaining

Type: byte

Number of potentially active parts remaining

PartFirstChunkIndices

Type: array<int>

Where the parts may find their chunks within the Structure. Appended element [#Fragments] = "stop" value

Parts

Type: array<PhysXDestructiblePart>

Array of spawned parts (starts off a full array of NULL pointers)

PhysXDestructible

Type: PhysXDestructible

The FracturedStaticMesh and SkeletalMeshes which form the hierarchical decomposition

Structure

Type: PhysXDestructibleStructure


VolumeFill

Type: pointer{struct FRBVolumeFill}

Modifiers: transient, native

Fluid crumbling data

Default values

Property Value
bNoEncroachCheck True
bWorldGeometry False

Subobjects

FracturedSkinnedComponent0

Class: Engine.FracturedSkinnedMeshComponent

Inherits from: FracturedStaticMeshActor.FracturedSkinnedComponent0

Property Value
ReplacementPrimitive None

FracturedStaticMeshComponent0

Class: Engine.FracturedStaticMeshComponent

Inherits from: FracturedStaticMeshActor.FracturedStaticMeshComponent0

Property Value
bUsePrecomputedShadows False
ReplacementPrimitive None

LightEnvironment0

Class: Engine.DynamicLightEnvironmentComponent

Inherits from: FracturedStaticMeshActor.LightEnvironment0

No new values.

Structs

SpawnBasis

Modifiers: native

Object.Vector Location 
Object.Rotator Rotation 
float Scale 

Functions

Native functions

Init

native function Init ()


NativeSpawnEffects

native function NativeSpawnEffects ()

Native code for SpawnEffects

NativeTakeDamage

native function NativeTakeDamage (int Damage, Controller EventInstigator, Object.Vector HitLocation, Object.Vector Momentum, class<DamageTypeDamageType, optional Actor.TraceHitInfo HitInfo, optional Actor DamageCauser)

Native code for TakeDamage.

TakeRadiusDamage

simulated native function TakeRadiusDamage (Controller InstigatedBy, float BaseDamage, float DamageRadius, class<DamageTypeDamageType, float Momentum, Object.Vector HurtOrigin, bool bFullDamage, Actor DamageCauser, optional float DamageFalloffExponent)

Overrides: Actor.TakeRadiusDamage

(Description copied from Actor.TakeRadiusDamage)
Take Radius Damage by default scales damage based on distance from HurtOrigin to Actor's location. This can be overridden by the actor receiving the damage for special conditions (see KAsset.uc). This then calls TakeDamage() to go through the same damage pipeline.

Parameters:

  • InstigatedBy - instigator of the damage
  • BaseDamage -
  • DamageRadius - from Origin)
  • DamageType - class
  • Momentum - float)
  • HurtOrigin - origin of the damage radius.
  • bFullDamage - if true, damage not scaled based on distance HurtOrigin
  • DamageCauser - the Actor that directly caused the damage (i.e. the Projectile that exploded, the Weapon that fired, etc)
  • DamageFalloff - allows for nonlinear damage falloff from the point. Default is linera.

Returns:

Returns amount of damage applied.

Term

native function Term ()


Events

Destroyed

event Destroyed ()

Overrides: Actor.Destroyed


Explode

simulated event Explode ()

Overrides: FracturedStaticMeshActor.Explode

Break off all pieces in one go.

PostBeginPlay

simulated event PostBeginPlay ()

Overrides: FracturedStaticMeshActor.PostBeginPlay


SpawnEffects

simulated event SpawnEffects ()


TakeDamage

simulated event TakeDamage (int Damage, Controller EventInstigator, Object.Vector HitLocation, Object.Vector Momentum, class<DamageTypeDamageType, optional Actor.TraceHitInfo HitInfo, optional Actor DamageCauser)

Overrides: FracturedStaticMeshActor.TakeDamage

TakeDamage will hide/spawn chunks when they get shot.