Navigation
API > API/Plugins > API/Plugins/ChaosMover
| Name | UChaosMoverSimulation |
| Type | class |
| Header File | /Engine/Plugins/Experimental/ChaosMover/Source/ChaosMover/Public/ChaosMover/ChaosMoverSimulation.h |
| Include Path | #include "ChaosMover/ChaosMoverSimulation.h" |
Syntax
UCLASS (MinimalAPI, BlueprintType)
class UChaosMoverSimulation :
public UMoverSimulation ,
public INetworkPhysicsActionHandler_Internal
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UMoverSimulation → UChaosMoverSimulation
Implements Interfaces
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
UChaosMoverSimulation() |
ChaosMover/ChaosMoverSimulation.h |
Structs
| Name | Remarks |
|---|---|
| FInitParams |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| DebugOwnerName | FString | Mover Gameplay Tag Logging. | ChaosMover/ChaosMoverSimulation.h | |
| DebugOwnerRole | FString | ChaosMover/ChaosMoverSimulation.h |
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bInitialized | bool | ChaosMover/ChaosMoverSimulation.h | ||
| bInputCmdOverridden | bool | ChaosMover/ChaosMoverSimulation.h | ||
| bIsUsingAsyncPhysics | bool | ChaosMover/ChaosMoverSimulation.h | ||
| bSyncStateOverridden | bool | ChaosMover/ChaosMoverSimulation.h | ||
| Events | TArray< TSharedPtr< FMoverSimulationEventData > > | Events from this simulation update. | ChaosMover/ChaosMoverSimulation.h | |
| InternalServerFrame | int32 | ChaosMover/ChaosMoverSimulation.h | ||
| NetInputCmd | FMoverInputCmdContext | ChaosMover/ChaosMoverSimulation.h | ||
| NetSyncState | FMoverSyncState | ChaosMover/ChaosMoverSimulation.h | ||
| OwnerLocalRole | ENetRole | ChaosMover/ChaosMoverSimulation.h | ||
| ProcessedEvents | TArray< TSharedPtr< FMoverSimulationEventData > > | Dedup record of events sent to the GT during the forward sim, used to suppress duplicate re-emission during resimulation. | ChaosMover/ChaosMoverSimulation.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AddEvent
(
TSharedPtr< FMoverSimulationEventData > Event |
ChaosMover/ChaosMoverSimulation.h | ||
void ApplyNetInputData
(
const FMoverInputCmdContext& InNetInputCmd |
ChaosMover/ChaosMoverSimulation.h | ||
void ApplyNetStateData
(
const FMoverSyncState& InNetSyncState |
ChaosMover/ChaosMoverSimulation.h | ||
void BuildNetInputData
(
FMoverInputCmdContext& OutNetInputCmd |
ChaosMover/ChaosMoverSimulation.h | ||
void BuildNetStateData
(
FMoverSyncState& OutNetSyncState |
ChaosMover/ChaosMoverSimulation.h | ||
void Deinit() |
ChaosMover/ChaosMoverSimulation.h | ||
void EnableActuationConstraint() |
ChaosMover/ChaosMoverSimulation.h | ||
void EnableCharacterGroundConstraint() |
Constraint enable helpers called by IChaosPostSimulationTickInterface implementations to re-enable the constraint after the simulation disables it upfront each tick. | ChaosMover/ChaosMoverSimulation.h | |
TWeakObjectPtr< const UBaseMovementMode > FindMovementModeByName
(
const FName& Name |
ChaosMover/ChaosMoverSimulation.h | ||
TWeakObjectPtr< UBaseMovementMode > FindMovementModeByName_Mutable
(
const FName& Name |
ChaosMover/ChaosMoverSimulation.h | ||
const ModifierT * FindMovementModifierByType () |
Find a movement modifier of a specific type in this components movement modifiers. | ChaosMover/ChaosMoverSimulation.h | |
const FMovementModifierBase * FindMovementModifierByType
(
const UScriptStruct* DataStructType |
Find movement modifier by type (returns the first modifier it finds). Returns nullptr if the modifier couldn't be found. | ChaosMover/ChaosMoverSimulation.h | |
Chaos::FPBDJointConstraintHandle * GetActuationConstraintHandle() |
ChaosMover/ChaosMoverSimulation.h | ||
Chaos::FCharacterGroundConstraintHandle * GetCharacterGroundConstraintHandle() |
ChaosMover/ChaosMoverSimulation.h | ||
Chaos::FPBDRigidParticleHandle * GetControlledParticle() |
Physics state accessors callable from IChaosPostSimulationTickInterface implementations. | ChaosMover/ChaosMoverSimulation.h | |
TWeakObjectPtr< const UBaseMovementMode > GetCurrentMovementMode() |
ChaosMover/ChaosMoverSimulation.h | ||
TWeakObjectPtr< UBaseMovementMode > GetCurrentMovementMode_Mutable() |
ChaosMover/ChaosMoverSimulation.h | ||
const FMoverSyncState & GetCurrentSyncState() |
ChaosMover/ChaosMoverSimulation.h | ||
FMoverDataCollection & GetDebugSimData() |
Collection for holding extra debug data, that will be sent to the Chaos Visual Debugger for debugging. | ChaosMover/ChaosMoverSimulation.h |
|
const TArray< TSharedPtr< FMoverSimulationEventData > > & GetEvents() |
ChaosMover/ChaosMoverSimulation.h | ||
ENetRole GetLocalRole() |
ChaosMover/ChaosMoverSimulation.h | ||
const FMoverDataCollection & GetLocalSimInput() |
Returns the local simulation input MoverDataCollection, to read local non networked data passed to the simulation by the gameplay thread. | ChaosMover/ChaosMoverSimulation.h |
|
FMoverDataCollection & GetLocalSimInput_Mutable() |
Returns the local simulation input MoverDataCollection, to pass local non networked data to the simulation Only available from the gameplay thread | ChaosMover/ChaosMoverSimulation.h |
|
bool HasGameplayTag
(
FGameplayTag TagToFind, |
ChaosMover/ChaosMoverSimulation.h |
|
|
bool HasMovementMode
(
const FName& Name |
ChaosMover/ChaosMoverSimulation.h | ||
void Init
(
const FInitParams& InitParams |
ChaosMover/ChaosMoverSimulation.h | ||
bool IsControlledParticleDynamic() |
ChaosMover/ChaosMoverSimulation.h | ||
bool IsControlledParticleKinematic() |
ChaosMover/ChaosMoverSimulation.h | ||
bool IsNonResimSimProxy() |
ChaosMover/ChaosMoverSimulation.h | ||
bool IsUsingAsyncPhysics() |
ChaosMover/ChaosMoverSimulation.h | ||
void K2_QueueInstantMovementEffect
(
const int32& EffectAsRawData |
ChaosMover/ChaosMoverSimulation.h |
|
|
void K2_QueueLayeredMove
(
const int32& LayeredMoveAsRawData |
ChaosMover/ChaosMoverSimulation.h |
|
|
FMovementModifierHandle K2_QueueMovementModifier
(
const int32& MoveAsRawData |
ChaosMover/ChaosMoverSimulation.h |
|
|
void ModifyContacts
(
const FMoverTimeStep& TimeStep, |
ChaosMover/ChaosMoverSimulation.h | ||
void ProcessInputs
(
int32 PhysicsStep, |
ChaosMover/ChaosMoverSimulation.h | ||
void QueueInstantMovementEffect_Internal
(
const FScheduledInstantMovementEffect& ScheduledInstantMovementEffect, |
Queue a scheduled instant movement effect. | ChaosMover/ChaosMoverSimulation.h | |
void QueueInstantMovementEffect_Internal
(
TSharedPtr< FInstantMovementEffect > InstantMovementEffect, |
Queue an Instant Movement Effect to take place at the end of this frame or start of the next subtick - whichever happens first. | ChaosMover/ChaosMoverSimulation.h | |
void QueueLayeredMove_Internal
(
TSharedPtr< FLayeredMoveBase > LayeredMove, |
Queue a Layered Move to take place at the end of this frame or start of the next subtick - whichever happens first. | ChaosMover/ChaosMoverSimulation.h | |
void QueueLayeredMove_Internal
(
const FScheduledLayeredMove& ScheduledLayeredMove, |
Queue a scheduled layered move. | ChaosMover/ChaosMoverSimulation.h | |
void QueueLayeredMoveInstance_Internal
(
TSubclassOf< ULayeredMoveLogic > MoveLogicClass, |
Queue a FLayeredMoveInstance activation. Looks up the registered logic by class and constructs the instance. | ChaosMover/ChaosMoverSimulation.h | |
void QueueNextMovementMode
(
FName ModeName |
ChaosMover/ChaosMoverSimulation.h | ||
void SetActuationTargetTransform
(
const FTransform& TargetTransform |
Target transform for the actuation joint callable from pathed movement mode. | ChaosMover/ChaosMoverSimulation.h | |
void SetControlledParticleDynamic() |
Object state callable from IChaosPostSimulationTickInterface implementations (e.g. executor classes that need to switch the particle between dynamic and kinematic). | ChaosMover/ChaosMoverSimulation.h | |
void SetControlledParticleKinematic() |
ChaosMover/ChaosMoverSimulation.h | ||
void SetOwner
(
const AActor* Owner |
ChaosMover/ChaosMoverSimulation.h | ||
void SetRegisteredMoves
(
const TArray< TObjectPtr< ULayeredMoveLogic > >& Moves |
Updates the cached snapshot of registered ULayeredMoveLogic objects. | ChaosMover/ChaosMoverSimulation.h | |
bool ShouldResim() |
ChaosMover/ChaosMoverSimulation.h | ||
void SimulationTick
(
const FMoverSimContext& SimContext, |
ChaosMover/ChaosMoverSimulation.h | ||
void TraceMoverData
(
const FMoverTimeStep& TimeStep, |
Trace mover data to Chaos Visual Debugger. | ChaosMover/ChaosMoverSimulation.h |
Public Virtual
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual const FTransform & GetMovementBasisTransform() |
Movement modes can be relative to a basis transform, which can change at runtime Returns the movement basis transform, for movement relative to it | ChaosMover/ChaosMoverSimulation.h | |
virtual void SetMovementBasisTransform
(
const FTransform& InMovementBasisTransform |
Sets the movement basis transform, for movement relative to it. | ChaosMover/ChaosMoverSimulation.h |
Overridden from UMoverSimulation
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void AttemptTeleport
(
const FMoverTimeStep& TimeStep, |
Teleportation (internal functions) | ChaosMover/ChaosMoverSimulation.h | |
virtual void CancelModifierFromHandle
(
FMovementModifierHandle ModifierHandle |
ChaosMover/ChaosMoverSimulation.h |
|
|
virtual FMovementModifierHandle QueueMovementModifier
(
TSharedPtr< FMovementModifierBase > Modifier |
Queue a Movement Modifier to start during the next simulation frame. | ChaosMover/ChaosMoverSimulation.h |
Overridden from INetworkPhysicsActionHandler_Internal
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void ApplyAction_Internal
(
const TInstancedStruct< FNetworkPhysicsActionPayload >& ActionInstance |
INetworkPhysicsActionHandler_Internal: receives scheduled actions enqueued via UNetworkPhysicsComponent::EnqueueScheduledAction_External. | ChaosMover/ChaosMoverSimulation.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void BackupState
(
FChaosMoverPredictionStateBackup& Out |
Trajectory Prediction. | ChaosMover/ChaosMoverSimulation.h | |
void DisableActuationConstraint() |
General purpose actuation joint constraint. | ChaosMover/ChaosMoverSimulation.h | |
void DisableCharacterGroundConstraint() |
Character ground constraint. | ChaosMover/ChaosMoverSimulation.h | |
bool IsActuationConstraintEnabled() |
ChaosMover/ChaosMoverSimulation.h | ||
bool IsCharacterGroundConstraintEnabled() |
ChaosMover/ChaosMoverSimulation.h | ||
void PredictTrajectory
(
const FMoverTimeStep& TimeStep, |
ChaosMover/ChaosMoverSimulation.h | ||
void RestoreState
(
const FChaosMoverPredictionStateBackup& In |
ChaosMover/ChaosMoverSimulation.h | ||
void TeleportActuationTarget
(
const FTransform& TargetTransform, |
ChaosMover/ChaosMoverSimulation.h |
Protected Virtual
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool CanTeleport
(
const FTransform& TargetTransform, |
Whether the teleport can happen (does the movement mode allow it? Do we fit at the target transform?) | ChaosMover/ChaosMoverSimulation.h | |
virtual void OnDeinit() |
ChaosMover/ChaosMoverSimulation.h | ||
virtual void OnInit() |
ChaosMover/ChaosMoverSimulation.h | ||
virtual void OnModifyContacts
(
const FMoverTimeStep& TimeStep, |
ChaosMover/ChaosMoverSimulation.h | ||
virtual void OnMovementModeChanged
(
const FMovementModeChangedEventData& ModeChangedData |
ChaosMover/ChaosMoverSimulation.h | ||
virtual void OnPostSimulationTick
(
const FMoverTimeStep& TimeStep, |
ChaosMover/ChaosMoverSimulation.h | ||
virtual void OnPreSimulationTick
(
const FMoverTimeStep& TimeStep, |
ChaosMover/ChaosMoverSimulation.h | ||
virtual void OnSimulationRollback
(
const FMoverTimeStep& NewTimeStep, |
ChaosMover/ChaosMoverSimulation.h | ||
virtual void OnSimulationTick
(
const FMoverSimContext& SimContext, |
ChaosMover/ChaosMoverSimulation.h | ||
virtual void ProcessSimulationEvent
(
const FMoverSimulationEventData& ModeChangedData |
ChaosMover/ChaosMoverSimulation.h | ||
virtual void Teleport
(
const FTransform& TargetTransform, |
Actually perform the teleport. | ChaosMover/ChaosMoverSimulation.h |