I love the smell of UnrealEd crashing in the morning. – tarquin

UE3:UTWalkerBody (UT3)

From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search
UT3 Object >> Actor >> UTWalkerBody

Contents

Package: 
UTGame
Direct subclasses:
UTWalkerBody_DarkWalker, UTWalkerBody_Scavenger

Copyright 1998-2007 Epic Games, Inc. All Rights Reserved.

Constants[edit]

NUM_WALKER_LEGS[edit]

Value: 3


Properties[edit]

Property group 'UTWalkerBody'[edit]

CustomGravityScale[edit]

Type: float


FootConstraints[edit]

Type: UTWalkerStepHandle

Array size: 3 (NUM_WALKER_LEGS)

Handles used to move the walker feet around.

Default value, index 0: UTWalkerStepHandle'RB_FootHandle0'

Default value, index 1: UTWalkerStepHandle'RB_FootHandle1'

Default value, index 2: UTWalkerStepHandle'RB_FootHandle2'

FootEmbedDistance[edit]

Type: float

Modifiers: protected, const

How far foot should embed into ground.

Default value: 8.0

FootPosVelAdjScale[edit]

Type: float

Array size: 3 (EWalkerLegID.EnumCount)

Modifiers: const

Scalar to control how much velocity to add to the desired foot positions. Indexed by LegID. This effectively controls how far ahead of the walker the legs will try to reach while the walker is moving.

Default value, index 0: 1.2

Default value, index 1: 0.6

Default value, index 2: 0.6

FootStepEndLift[edit]

Type: float

Modifiers: protected, const

How far above the desired foot position to end the foot step interpolation

Default value: 128.0

FootStepStartLift[edit]

Type: float

Modifiers: protected, const

How far above the current foot position to begin interpolating towards.

Default value: 512.0

IgnoreFoot[edit]

Type: byte

Array size: 3 (NUM_WALKER_LEGS)

If TRUE for corresponding foot, walking/stepping code will ignore that leg

LandedFootDistSq[edit]

Type: float


Default value: 400.0

LegSpreadFactor[edit]

Type: float

Factor in range [0..1]. 0 means no leg spread, 1 means legs are spread as far as possible.

MaxLegReach[edit]

Type: float

Max leg extension

Default value: 450.0

MinStepDist[edit]

Type: float

Min dist trigger to make foot a possible candidate for next step

Default value: 20.0

SkeletalMeshComponent[edit]

Type: SkeletalMeshComponent

Modifiers: editconst

Skel mesh for the legs.

Default value: SkeletalMeshComponent'LegMeshComponent'

StepStageTimes[edit]

Type: array<float>

Modifiers: const

Time, in seconds, that each step stage lasts.

Default value, index 0: 0.7

Default value, index 1: 0.135

Default value, index 2: 1.0

Internal variables[edit]

BaseLegDirLocal[edit]

Type: Object.Vector

Array size: 3 (EWalkerLegID.EnumCount)

Modifiers: protected, const

Base directions from the walker center for the legs to point, in walker-local space. Indexed by LegID.

Default value, index 0:

Member Value
X -1.0
Y 0.0
Z 0.0

Default value, index 1:

Member Value
X 0.5
Y -0.866025
Z 0.0

Default value, index 2:

Member Value
X 0.5
Y 0.866025
Z 0.0

bHasCrouchMode[edit]

Type: bool

Modifiers: protected, const


bIsDead[edit]

Type: bool


BodyBoneName[edit]

Type: name

Modifiers: const


Default value: 'Root'

CurrentFootPosition[edit]

Type: Object.Vector

Array size: 3 (NUM_WALKER_LEGS)

Where the feet are right now

FootBoneName[edit]

Type: name

Array size: 3 (NUM_WALKER_LEGS)

Modifiers: const

Bone names for this walker

Default value, index 0: 'Leg1_End'

Default value, index 1: 'Leg2_End'

Default value, index 2: 'Leg3_End'

FootInWater[edit]

Type: byte

Array size: 3 (NUM_WALKER_LEGS)

used to play water effects when feet enter/exit water

FootStepAnimNode[edit]

Type: AnimNode

Array size: 3 (NUM_WALKER_LEGS)

Modifiers: protected

Refs to AnimNodes used for playing step animations

FootStepAnimNodeName[edit]

Type: name

Array size: 3 (NUM_WALKER_LEGS)

Modifiers: protected, const

Names of the anim nodes for playing the step anim for a leg. Used to fill in FootStepAnimNode array.

FootStepEffects[edit]

Type: array<UTPhysicalMaterialProperty.MaterialImpactEffect>


FootStepParticles[edit]

Type: ParticleSystemComponent

Array size: 3 (NUM_WALKER_LEGS)


FootWaterEffect[edit]

Type: ParticleSystem


LegLightEnvironment[edit]

Type: DynamicLightEnvironmentComponent

The walker legs's light environment

Default value: DynamicLightEnvironmentComponent'LegLightEnvironmentComp'

LegMapping[edit]

Type: int

Array size: 3 (EWalkerLegID.EnumCount)

Modifiers: transient

Store indices into the legs array, used to map from rear/left/right leg designations to the model's leg indices. Indexed by LegID.

MaxFootStepEffectDist[edit]

Type: float


Default value: 5000.0

NextStepStageTime[edit]

Type: float

Array size: 3 (NUM_WALKER_LEGS)

world time to advance to the next phase of the step - experimental walker leg code

PreviousTraceSeedLocation[edit]

Type: Object.Vector

Array size: 3 (NUM_WALKER_LEGS)

Modifiers: protected

keeps track of previous leg locations

ShoulderBoneName[edit]

Type: name

Array size: 3 (NUM_WALKER_LEGS)

Modifiers: const


Default value, index 0: 'Leg1_Shoulder'

Default value, index 1: 'Leg2_Shoulder'

Default value, index 2: 'Leg3_Shoulder'

ShoulderSkelControl[edit]

Type: SkelControlLookAt

Array size: 3 (NUM_WALKER_LEGS)

Modifiers: protected, transient

Refs to shoulder lookat skelcontrols for each leg

ShoulderSkelControlName[edit]

Type: name

Array size: 3 (NUM_WALKER_LEGS)

Modifiers: protected, const

Names for the shoulder skelcontrol nodes for each leg (from the animtree)

Default value, index 0: 'Shoulder1'

Default value, index 1: 'Shoulder2'

Default value, index 2: 'Shoulder3'

StepAnimData[edit]

Type: WalkerLegStepAnimData

Array size: 3 (EWalkerLegID.EnumCount)

Modifiers: protected

Indexed by LegID.

StepStage[edit]

Type: int

Array size: 3 (NUM_WALKER_LEGS)

Modifiers: protected

which stage the step is in for each leg - experimental walker leg code

WalkerVehicle[edit]

Type: UTVehicle_Walker

Modifiers: transient

Ref to the walker vehicle that we are attached to.

Default values[edit]

Property Value
bCollideActors True
bEdShouldSnap True
bIgnoreEncroachers True
bNoEncroachCheck True
bProjTarget True
CollisionComponent SkeletalMeshComponent'LegMeshComponent'
CollisionType COLLIDE_CustomDefault
Components[0] DynamicLightEnvironmentComponent'LegLightEnvironmentComp'
Components[1] SkeletalMeshComponent'LegMeshComponent'
Components[2] UTWalkerStepHandle'RB_FootHandle0'
Components[3] UTWalkerStepHandle'RB_FootHandle1'
Components[4] UTWalkerStepHandle'RB_FootHandle2'
Physics PHYS_RigidBody
TickGroup TG_PostAsyncWork

Subobjects[edit]

LegLightEnvironmentComp[edit]

Class: Engine.DynamicLightEnvironmentComponent

Property Value
AmbientGlow
Member Value
A 1.0
B 0.2
G 0.2
R 0.2

LegMeshComponent[edit]

Class: Engine.SkeletalMeshComponent

Property Value
bHasPhysicsAssetInstance True
bIgnoreControllersWhenNotRendered True
BlockNonZeroExtent True
BlockZeroExtent True
bUseAsOccluder False
CollideActors True
LightEnvironment DynamicLightEnvironmentComponent'UTGame.Default__UTWalkerBody:LegLightEnvironmentComp'
PhysicsWeight 1.0
RBChannel RBCC_Nothing
RBCollideWithChannels
Member Value
Default True
EffectPhysics True
GameplayPhysics True

RB_FootHandle0[edit]

Class: UTGame.UTWalkerStepHandle

Property Value
LinearDamping 50.0
LinearStiffness 10000.0

RB_FootHandle1[edit]

Class: UTGame.UTWalkerStepHandle

Property Value
LinearDamping 50.0
LinearStiffness 10000.0

RB_FootHandle2[edit]

Class: UTGame.UTWalkerStepHandle

Property Value
LinearDamping 50.0
LinearStiffness 10000.0

Enums[edit]

EWalkerLegID[edit]

WalkerLeg_Rear 
WalkerLeg_FrontLeft 
WalkerLeg_FrontRight 

Structs[edit]

WalkerLegStepAnimData[edit]

Modifiers: native

Object.Vector DesiredFootPosition 
Where foot wants to be.
Object.Vector DesiredFootPosNormal 
Normal of the surface at the desired foot position.
PhysicalMaterial DesiredFootPosPhysMaterial 
Physical material at the DesiredFootPosition
bool bNoValidFootHold 
True if we don't have a valid desired foot position for this leg.

Functions[edit]

Native functions[edit]

DoTestStep[edit]

native function DoTestStep (int LegIdx, float Mag)


InitFeet[edit]

native function InitFeet ()

Called once to set up legs.

InitFeetOnLanding[edit]

native function InitFeetOnLanding ()

Called on landing to reestablish a foothold

Events[edit]

PlayFootStep[edit]

event PlayFootStep (int LegIdx)


PostBeginPlay[edit]

event PostBeginPlay ()

Overrides: Actor.PostBeginPlay


SpawnFootWaterEffect[edit]

event SpawnFootWaterEffect (int LegIdx)


TakeDamage[edit]

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

Overrides: Actor.TakeDamage

Default behavior when shot is to apply an impulse and kick the KActor.

Other instance functions[edit]

AddVelocity[edit]

function AddVelocity (Object.Vector NewVelocity, Object.Vector HitLocation, class<DamageTypeDamageType, optional Actor.TraceHitInfo HitInfo)


PlayDying[edit]

function PlayDying ()


ReattachMesh[edit]

simulated function ReattachMesh ()

reattaches the mesh component, because settings were updated

SetBurnOut[edit]

simulated function SetBurnOut ()

NOTE: this is actually what changes the colors on the PowerOrb on the legs of the Walker *

SetWalkerVehicle[edit]

function SetWalkerVehicle (UTVehicle_Walker V)


StopsProjectile[edit]

simulated function bool StopsProjectile (Projectile P)

Overrides: Actor.StopsProjectile


TeamChanged[edit]

simulated function TeamChanged ()

NOTE: this is actually what changes the colors on the PowerOrb on the legs of the Walker *

UpdateShadowSettings[edit]

simulated function UpdateShadowSettings (bool bWantShadow)


States[edit]

DyingVehicle[edit]

DyingVehicle.TakeDamage[edit]

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

Overrides: TakeDamage (global)

Default behavior when shot is to apply an impulse and kick the KActor.