Overview | Package | Class | Source | Class tree | Glossary | UnrealScript Documentation |
previous class next class | frames no frames |
Core.Object | +-- Engine.Actor | +-- Engine.FracturedStaticMeshActor
FracturedSMActorSpawnable, FracturedStaticMeshPart
Constants Summary |
---|
Inherited Contants from Core.Object |
---|
AspectRatio16x9, AspectRatio4x3, AspectRatio5x4, DegToRad, DegToUnrRot, INDEX_NONE, InvAspectRatio16x9, InvAspectRatio4x3, InvAspectRatio5x4, MaxInt, Pi, RadToDeg, RadToUnrRot, UnrRotToDeg, UnrRotToRad |
Inherited Variables from Core.Object |
---|
Class, HashNext, HashOuterNext, Linker, LinkerIndex, Name, NetIndex, ObjectArchetype, ObjectFlags, ObjectInternalInteger, Outer, StateFrame, VfTableObject |
Enumerations Summary |
---|
Inherited Enumerations from Engine.Actor |
---|
ECollisionType, EDoubleClickDir, EMoveDir, ENetRole, EPhysics, ETravelType |
Inherited Enumerations from Core.Object |
---|
AlphaBlendType, EAspectRatioAxisConstraint, EAutomatedRunResult, EAxis, EDebugBreakType, EInputEvent, EInterpCurveMode, EInterpMethodType, ETickingGroup |
Structures Summary | ||
---|---|---|
DeferredPartToSpawn ChunkIndex, InitialVel, InitialAngVel, RelativeScale, bExplosion |
Inherited Structures from Engine.Actor |
---|
ActorReference, AnimSlotDesc, AnimSlotInfo, BasedPosition, CollisionImpactData, ImpactInfo, NavReference, PhysEffectInfo, RigidBodyContactInfo, RigidBodyState, TimerData, TraceHitInfo |
Functions Summary | ||
---|---|---|
![]() | BreakOffIsolatedIslands (out array<BYTE> FragmentVis, array<int> IgnoreFrags, vector ChunkDir, array<FracturedStaticMeshPart> DisableCollWithPart, bool bWantPhysChunks) | |
![]() | BreakOffPartsInRadius (vector Origin, float Radius, float RBStrength, bool bWantPhysChunksAndParticles) | |
![]() | Explode ())) | |
![]() | bool | FractureEffectIsRelevant (bool bForceDedicated, Pawn EffectInstigator, out byte bWantPhysChunksAndParticles )) |
![]() | HideFragmentsToMaximizeMemoryUsage ())) | |
![]() | HideOneFragment ())) | |
![]() | bool | IsFracturedByDamageType (class<DamageType> DmgType)) |
![]() | NotifyHitByExplosion (Controller InstigatorController, float DamageAmount, class<DamageType> DmgType)) | |
![]() | PostBeginPlay ())) | |
![]() | RemoveDecals (int IndexToRemoveDecalsFrom) | |
![]() | ResetHealth () | |
![]() | ResetVisibility () | |
![]() | SetLoseChunkReplacementMaterial ())) | |
![]() | bool | SpawnDeferredParts () |
![]() | FracturedStaticMeshPart | SpawnPart (int ChunkIndex, vector InitialVel, vector InitialAngVel, float RelativeScale, bool bExplosion) |
![]() | FracturedStaticMeshPart | SpawnPartMulti (array<int> ChunkIndices, vector InitialVel, vector InitialAngVel, float RelativeScale, bool bExplosion) |
![]() | TakeDamage (int Damage, Controller EventInstigator, vector HitLocation, vector Momentum, class<DamageType> DamageType, optional TraceHitInfo HitInfo, optional Actor DamageCauser)) |
Variables Detail |
---|
Used so we only display the 'missing sound' warning once
Current health of each chunk
Array of parts that are waiting to be spawned in an upcoming tick
Cached sound for large fractures.
This is the material that was set on this FracuredStaticMeshActor before we overrode it with LoseChunkOutsideMaterial
Cached info for part impacts
Cached sound for single chunk fractures.
Skinned component which will handle rendering for FracturedStaticMeshComponent
If true, detach parts when an Actor with bCanCauseFractureOnTouch contacts them. Actor must not be blocked by this FSMA.
Allows controlling how much 'health' chunks have on a per-instance basis
Maximum distance from player where actor will be allowed to fracture (scaled by global settings.)
Minimum distance from player where actor will ALWAYS fracture, even when outside the view frustum (scaled by global settings.)
Set of damage types that can cause pieces to break off this FSAM. If empty, all damage types can do this.
Maximum number of rigid body parts to spawn off per actor, per frame
Allows you to override particle effects to play when chunk is hidden for just this actor.
Structures Detail |
---|
var bool bExplosion;};
var int ChunkIndex;
var vector InitialAngVel;
var vector InitialVel;
var float RelativeScale;
Info about a fracture part that should be spawned in an upcoming Tick
bExplosion:TRUE if this part was spawned because of an explosionChunkIndex:Index of the chunk to spawnInitialAngVel:Exit angular velocity for this chunkInitialVel:Exit velocity for this chunkRelativeScale:Relative scale
Functions Detail |
---|
Find all groups of chunks which are not connected to 'root' parts, and spawn them as new physics objects. Updates FragmentVis with new chunks that get hidden by the process.
Util to break off all parts within radius of the explosion
Break off all pieces in one go.
Specialized to handle explicit effect instigators. Also, handles None instigators -- these are special weapons (eg dummyfire) and are always relevant. Also, for fractured static meshes we only spawn effects if
Hide some percentage of the fragments from this mesh to maximize memory usage - does not spawn physics pieces etc
Hide one fragment from this mesh - does not spawn physics pieces etc
Util for checking if this damage type will cause fracture.
Let kismet know that we've been hit
@param InstigatorController - the player that caused the explosion
@param DamageAmount - how much damage was caused
@param DmgType - the type of damage caused
This function will remove all of the currently attached decals from the object. Basically, we want to have decals attach to these objects and then on state change (due to damage usually), we will just detach them all with the big particle effect that occurs it should not be noticeable.
Used to init/reset health array.
Unhides all fragments
This will possibly set the material on the FracturedMesh after we have lost a chunk.
Gives the actor a chance to spawn chunks that may have been deferred
@return Returns true if there are still any deferred parts left to spawn
Spawn one chunk of this mesh as its own Actor, with the supplied velocities and scale relative to this Actor.
Does the same as SpawnPart, but takes an array of chunks to make part of the new part.
TakeDamage will hide/spawn chunks when they get shot.
Defaultproperties |
---|
defaultproperties { MaxPartsToSpawnAtOnce=6 ChunkHealthScale=1.0 FractureCullMinDistance=512.0 FractureCullMaxDistance=4096.0 bEdShouldSnap=TRUE bCollideActors=TRUE bBlockActors=TRUE bWorldGeometry=TRUE bProjTarget=TRUE bGameRelevant=TRUE bRouteBeginPlayEvenIfStatic=FALSE bCollideWhenPlacing=FALSE bStatic=FALSE bMovable=FALSE bNoDelete=TRUE bPathColliding=TRUE bCanBeDamaged=true Begin Object Class=DynamicLightEnvironmentComponent Name=LightEnvironment0 bEnabled=FALSE bDynamic=FALSE bForceNonCompositeDynamicLights=TRUE End Object Components.Add(LightEnvironment0) Begin Object Class=FracturedSkinnedMeshComponent Name=FracturedSkinnedComponent0 bDisableAllRigidBody=TRUE LightEnvironment=LightEnvironment0 End Object Components.Add(FracturedSkinnedComponent0) SkinnedComponent=FracturedSkinnedComponent0 Begin Object Class=FracturedStaticMeshComponent Name=FracturedStaticMeshComponent0 WireframeColor=(R=0,G=128,B=255,A=255) bAllowApproximateOcclusion=TRUE bForceDirectLightMap=TRUE BlockRigidBody=TRUE bAcceptsStaticDecals=FALSE bAcceptsDynamicDecals=TRUE bAcceptsDecalsDuringGameplay=FALSE bUseDynamicIndexBuffer=TRUE bUseDynamicIBWithHiddenFragments=TRUE End Object CollisionComponent=FracturedStaticMeshComponent0 FracturedStaticMeshComponent=FracturedStaticMeshComponent0 Components.Add(FracturedStaticMeshComponent0) } |
Overview | Package | Class | Source | Class tree | Glossary | UnrealScript Documentation |
previous class next class | frames no frames |