UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UMovementComponent Class Reference

#include <MovementComponent.h>

+ Inheritance diagram for UMovementComponent:

Public Member Functions

virtual ENGINE_API void TickComponent (float DeltaTime, enum ELevelTick TickType, FActorComponentTickFunction *ThisTickFunction) override
 
virtual ENGINE_API void RegisterComponentTickFunctions (bool bRegister) override
 
virtual ENGINE_API void PostLoad () override
 
virtual ENGINE_API void Deactivate () override
 
virtual ENGINE_API void Serialize (FArchive &Ar) override
 
virtual ENGINE_API void InitializeComponent () override
 
virtual ENGINE_API void OnRegister () override
 
virtual ENGINE_API float GetGravityZ () const
 
virtual float GetMaxSpeed () const
 
virtual ENGINE_API bool IsExceedingMaxSpeed (float MaxSpeed) const
 
virtual void StopMovementImmediately ()
 
virtual ENGINE_API bool ShouldSkipUpdate (float DeltaTime) const
 
virtual ENGINE_API APhysicsVolumeGetPhysicsVolume () const
 
virtual ENGINE_API void PhysicsVolumeChanged (class APhysicsVolume *NewVolume)
 
virtual ENGINE_API void SetUpdatedComponent (USceneComponent *NewUpdatedComponent)
 
virtual ENGINE_API bool IsInWater () const
 
virtual ENGINE_API void UpdateTickRegistration ()
 
virtual ENGINE_API void HandleImpact (const FHitResult &Hit, float TimeSlice=0.f, const FVector &MoveDelta=FVector::ZeroVector)
 
virtual ENGINE_API void UpdateComponentVelocity ()
 
virtual ENGINE_API void InitCollisionParams (FCollisionQueryParams &OutParams, FCollisionResponseParams &OutResponseParam) const
 
virtual ENGINE_API bool OverlapTest (const FVector &Location, const FQuat &RotationQuat, const ECollisionChannel CollisionChannel, const FCollisionShape &CollisionShape, const AActor *IgnoreActor) const
 
bool MoveUpdatedComponent (const FVector &Delta, const FQuat &NewRotation, bool bSweep, FHitResult *OutHit=NULL, ETeleportType Teleport=ETeleportType::None)
 
bool MoveUpdatedComponent (const FVector &Delta, const FRotator &NewRotation, bool bSweep, FHitResult *OutHit=NULL, ETeleportType Teleport=ETeleportType::None)
 
ENGINE_API bool K2_MoveUpdatedComponent (FVector Delta, FRotator NewRotation, FHitResult &OutHit, bool bSweep=true, bool bTeleport=false)
 
virtual ENGINE_API bool SafeMoveUpdatedComponent (const FVector &Delta, const FQuat &NewRotation, bool bSweep, FHitResult &OutHit, ETeleportType Teleport=ETeleportType::None)
 
bool SafeMoveUpdatedComponent (const FVector &Delta, const FRotator &NewRotation, bool bSweep, FHitResult &OutHit, ETeleportType Teleport=ETeleportType::None)
 
virtual ENGINE_API FVector GetPenetrationAdjustment (const FHitResult &Hit) const
 
bool ResolvePenetration (const FVector &Adjustment, const FHitResult &Hit, const FQuat &NewRotation)
 
bool ResolvePenetration (const FVector &Adjustment, const FHitResult &Hit, const FRotator &NewRotation)
 
virtual ENGINE_API FVector ComputeSlideVector (const FVector &Delta, const float Time, const FVector &Normal, const FHitResult &Hit) const
 
virtual ENGINE_API float SlideAlongSurface (const FVector &Delta, float Time, const FVector &Normal, FHitResult &Hit, bool bHandleImpact=false)
 
virtual ENGINE_API void TwoWallAdjust (FVector &Delta, const FHitResult &Hit, const FVector &OldHitNormal) const
 
virtual ENGINE_API void AddRadialForce (const FVector &Origin, float Radius, float Strength, ERadialImpulseFalloff Falloff)
 
virtual ENGINE_API void AddRadialImpulse (const FVector &Origin, float Radius, float Strength, ERadialImpulseFalloff Falloff, bool bVelChange)
 
virtual ENGINE_API void SetPlaneConstraintAxisSetting (EPlaneConstraintAxisSetting NewAxisSetting)
 
EPlaneConstraintAxisSetting GetPlaneConstraintAxisSetting () const
 
virtual ENGINE_API void SetPlaneConstraintNormal (FVector PlaneNormal)
 
virtual ENGINE_API void SetPlaneConstraintFromVectors (FVector Forward, FVector Up)
 
virtual ENGINE_API void SetPlaneConstraintOrigin (FVector PlaneOrigin)
 
virtual ENGINE_API void SetPlaneConstraintEnabled (bool bEnabled)
 
ENGINE_API const FVectorGetPlaneConstraintNormal () const
 
ENGINE_API const FVectorGetPlaneConstraintOrigin () const
 
virtual ENGINE_API FVector ConstrainDirectionToPlane (FVector Direction) const
 
virtual ENGINE_API FVector ConstrainLocationToPlane (FVector Location) const
 
virtual ENGINE_API FVector ConstrainNormalToPlane (FVector Normal) const
 
virtual ENGINE_API void SnapUpdatedComponentToPlane ()
 
virtual void OnTeleported ()
 
- Public Member Functions inherited from UActorComponent
ENGINE_API UActorComponent (const FObjectInitializer &ObjectInitializer=FObjectInitializer::Get())
 
int32 GetUCSSerializationIndex () const
 
bool IsAsyncCreatePhysicsStateRunning () const
 
bool IsAsyncDestroyPhysicsStateRunning () const
 
uint32 GetMarkedForEndOfFrameUpdateState () const
 
uint32 GetMarkedForPreEndOfFrameSync () const
 
ENGINE_API void DetermineUCSModifiedProperties ()
 
ENGINE_API void GetUCSModifiedProperties (TSet< const FProperty * > &ModifiedProperties) const
 
ENGINE_API void RemoveUCSModifiedProperties (const TArray< FProperty * > &Properties)
 
ENGINE_API void ClearUCSModifiedProperties ()
 
ENGINE_API bool IsEditableWhenInherited () const
 
bool HasBeenCreated () const
 
bool HasBeenInitialized () const
 
bool IsReadyForReplication () const
 
bool HasBegunPlay () const
 
bool IsBeingDestroyed () const
 
ENGINE_API bool IsCreatedByConstructionScript () const
 
virtual ENGINE_API void OnRep_IsActive ()
 
AActorGetOwner () const
 
template<class T >
T * GetOwner () const
 
virtual UWorldGetWorld () const override final
 
ENGINE_API bool ComponentHasTag (FName Tag) const
 
virtual ENGINE_API void Activate (bool bReset=false)
 
virtual ENGINE_API void SetActive (bool bNewActive, bool bReset=false)
 
virtual ENGINE_API void ToggleActive ()
 
bool IsActive () const
 
virtual ENGINE_API void SetAutoActivate (bool bNewAutoActivate)
 
ENGINE_API void SetTickableWhenPaused (bool bTickableWhenPaused)
 
ENGINE_API void CreatePhysicsState (bool bAllowDeferral=false)
 
ENGINE_API void DestroyPhysicsState ()
 
ENGINE_API void SetNetAddressable ()
 
ENGINE_API void SetIsReplicated (bool ShouldReplicate)
 
bool GetIsReplicated () const
 
virtual ENGINE_API bool ReplicateSubobjects (class UActorChannel *Channel, class FOutBunch *Bunch, FReplicationFlags *RepFlags)
 
bool IsUsingRegisteredSubObjectList () const
 
virtual ELifetimeCondition GetReplicationCondition () const
 
virtual void PreReplication (IRepChangedPropertyTracker &ChangedPropertyTracker)
 
virtual ENGINE_API bool GetComponentClassCanReplicate () const
 
ENGINE_API void AddReplicatedSubObject (UObject *SubObject, ELifetimeCondition NetCondition=COND_None)
 
ENGINE_API void RemoveReplicatedSubObject (UObject *SubObject)
 
ENGINE_API void DestroyReplicatedSubObjectOnRemotePeers (UObject *SubObject)
 
ENGINE_API void TearOffReplicatedSubObjectOnRemotePeers (UObject *SubObject)
 
ENGINE_API bool IsReplicatedSubObjectRegistered (const UObject *SubObject) const
 
bool IsNetSimulating () const
 
ENGINE_API ENetRole GetOwnerRole () const
 
ENetMode GetNetMode () const
 
bool IsNetMode (ENetMode Mode) const
 
bool IsNetStartupComponent () const
 
void SetIsNetStartupComponent (const bool bInIsNetStartupComponent)
 
virtual void OnEndOfFrameUpdateDuringTick ()
 
virtual void OnPreEndOfFrameSync ()
 
virtual ENGINE_API void RegisterReplicationFragments (UE::Net::FFragmentRegistrationContext &Context, UE::Net::EFragmentRegistrationFlags RegistrationFlags) override
 
virtual ENGINE_API void OnReplicationStartedForIris (const FOnReplicationStartedParams &)
 
virtual ENGINE_API void OnStopReplicationForIris (const FOnStopReplicationParams &)
 
virtual ENGINE_API void BeginReplication ()
 
virtual ENGINE_API void EndReplication ()
 
virtual ENGINE_API bool ShouldIncrementalPreRegister (UWorld *WorldContext) const
 
virtual ENGINE_API bool ShouldIncrementalPreUnregister () const
 
virtual bool AllowsAsyncPhysicsStateCreation () const
 
virtual bool AllowsAsyncPhysicsStateDestruction () const
 
virtual ENGINE_API bool IsAsyncPhysicsStateCreated () const override final
 
virtual ENGINE_API UObjectGetAsyncPhysicsStateObject () const override final
 
virtual ENGINE_API bool OnAsyncCreatePhysicsState (const UE::FTimeout &Timeout) override
 
virtual ENGINE_API void OnAsyncCreatePhysicsStateEnd_GameThread () override
 
virtual bool OnAsyncDestroyPhysicsState (const UE::FTimeout &Timeout) override
 
virtual ENGINE_API void OnAsyncDestroyPhysicsStateBegin_GameThread () override
 
virtual ENGINE_API void OnAsyncDestroyPhysicsStateEnd_GameThread () override
 
virtual ENGINE_API void ReadyForReplication ()
 
virtual ENGINE_API void BeginPlay ()
 
ENGINE_API void ReceiveBeginPlay ()
 
virtual ENGINE_API void EndPlay (const EEndPlayReason::Type EndPlayReason)
 
virtual ENGINE_API void UninitializeComponent ()
 
ENGINE_API void ReceiveEndPlay (EEndPlayReason::Type EndPlayReason)
 
ENGINE_API void RegisterAllComponentTickFunctions (bool bRegister)
 
virtual void AsyncPhysicsTickComponent (float DeltaTime, float SimTime)
 
ENGINE_API bool SetupActorComponentTickFunction (struct FTickFunction *TickFunction)
 
virtual ENGINE_API void SetComponentTickEnabled (bool bEnabled)
 
virtual ENGINE_API void SetComponentTickEnabledAsync (bool bEnabled)
 
virtual ENGINE_API bool IsComponentTickEnabled () const
 
ENGINE_API void SetComponentTickInterval (float TickInterval)
 
ENGINE_API void SetComponentTickIntervalAndCooldown (float TickInterval)
 
ENGINE_API float GetComponentTickInterval () const
 
ENGINE_API void PreRegisterComponentWithWorld (UWorld *InWorld)
 
ENGINE_API void PreUnregisterComponentFromWorld ()
 
ENGINE_API void RegisterComponentWithWorld (UWorld *InWorld, FRegisterComponentContext *Context=nullptr)
 
virtual bool IsReadyForOwnerToAutoDestroy () const
 
ENGINE_API bool IsOwnerSelected () const
 
bool IsRenderTransformDirty () const
 
bool IsRenderInstancesDirty () const
 
bool IsRenderStateDirty () const
 
void InvalidateLightingCache ()
 
virtual void InvalidateLightingCacheDetailed (bool bInvalidateBuildEnqueuedLighting, bool bTranslationOnly)
 
ENGINE_API void DoDeferredRenderUpdates_Concurrent ()
 
virtual void UpdateComponentToWorld (EUpdateTransformFlags UpdateTransformFlags=EUpdateTransformFlags::None, ETeleportType Teleport=ETeleportType::None)
 
ENGINE_API void MarkRenderStateDirty ()
 
ENGINE_API void MarkRenderDynamicDataDirty ()
 
ENGINE_API void MarkRenderTransformDirty ()
 
ENGINE_API void MarkRenderInstancesDirty ()
 
ENGINE_API void MarkForNeededEndOfFrameUpdate (bool bReadyForEarlyUpdate=false)
 
ENGINE_API void MarkForNeededEndOfFrameRecreate ()
 
bool IsReadyForEarlyEndOfFrameUpdate () const
 
void ClearNeedEndOfFrameUpdate ()
 
virtual ENGINE_API bool RequiresGameThreadEndOfFrameUpdates () const
 
virtual ENGINE_API bool RequiresGameThreadEndOfFrameRecreate () const
 
virtual ENGINE_API bool RequiresPreEndOfFrameSync () const
 
ENGINE_API void RecreateRenderState_Concurrent ()
 
ENGINE_API void RecreatePhysicsState ()
 
bool IsRenderStateCreated () const
 
bool IsRenderStateRecreating () const
 
bool IsPhysicsStateCreated () const
 
bool IsRenderStateUpdating () const
 
ENGINE_API class FSceneInterfaceGetScene () const
 
ENGINE_API ULevelGetComponentLevel () const
 
ENGINE_API bool ComponentIsInLevel (const class ULevel *TestLevel) const
 
ENGINE_API bool ComponentIsInPersistentLevel (bool bIncludeLevelStreamingPersistent) const
 
virtual void OnActorVisibilityChanged ()
 
virtual void OnActorEnableCollisionChanged ()
 
virtual ENGINE_API FString GetReadableName () const
 
virtual UObject const * AdditionalStatObject () const
 
virtual ENGINE_API TStructOnScope< FActorComponentInstanceDataGetComponentInstanceData () const
 
virtual ENGINE_API void PostApplyToComponent ()
 
virtual void GetComponentChildElements (TArray< FTypedElementHandle > &OutElementHandles, const bool bAllowCreate=true)
 
virtual ENGINE_API void BeginDestroy () override
 
virtual ENGINE_API bool NeedsLoadForClient () const override
 
virtual ENGINE_API bool NeedsLoadForServer () const override
 
virtual ENGINE_API bool NeedsLoadForEditorGame () const override
 
virtual ENGINE_API bool IsNameStableForNetworking () const override
 
virtual ENGINE_API bool IsSupportedForNetworking () const override
 
virtual ENGINE_API void GetLifetimeReplicatedProps (TArray< FLifetimeProperty > &OutLifetimeProps) const override
 
virtual ENGINE_API int32 GetFunctionCallspace (UFunction *Function, FFrame *Stack) override
 
virtual ENGINE_API bool CallRemoteFunction (UFunction *Function, void *Parameters, FOutParmRec *OutParms, FFrame *Stack) override
 
virtual ENGINE_API void PostInitProperties () override
 
virtual ENGINE_API bool Rename (const TCHAR *NewName=NULL, UObject *NewOuter=NULL, ERenameFlags Flags=REN_None) override
 
virtual ENGINE_API void PostRename (UObject *OldOuter, const FName OldName) override
 
virtual ENGINE_API void AddAssetUserData (UAssetUserData *InUserData) override
 
virtual ENGINE_API void RemoveUserDataOfClass (TSubclassOf< UAssetUserData > InUserDataClass) override
 
virtual ENGINE_API UAssetUserDataGetAssetUserDataOfClass (TSubclassOf< UAssetUserData > InUserDataClass) override
 
virtual ENGINE_API const TArray< UAssetUserData * > * GetAssetUserDataArray () const override
 
ENGINE_API void OnCreatedFromReplication ()
 
ENGINE_API void OnDestroyedFromReplication ()
 
ENGINE_API bool IsOwnerRunningUserConstructionScript () const
 
bool IsPreRegistering () const
 
bool IsPreRegistered () const
 
bool IsPreUnregistering () const
 
bool IsPreUnregistered () const
 
bool IsRegistered () const
 
bool AllowReregistration () const
 
ENGINE_API void RegisterComponent ()
 
ENGINE_API void UnregisterComponent ()
 
virtual ENGINE_API void DestroyComponent (bool bPromoteChildren=false)
 
virtual ENGINE_API void OnComponentCreated ()
 
virtual ENGINE_API void OnComponentDestroyed (bool bDestroyingHierarchy)
 
ENGINE_API void K2_DestroyComponent (UObject *Object)
 
ENGINE_API void ReregisterComponent ()
 
ENGINE_API void SetTickGroup (ETickingGroup NewTickGroup)
 
virtual ENGINE_API void AddTickPrerequisiteActor (AActor *PrerequisiteActor)
 
virtual ENGINE_API void AddTickPrerequisiteComponent (UActorComponent *PrerequisiteComponent)
 
virtual ENGINE_API void RemoveTickPrerequisiteActor (AActor *PrerequisiteActor)
 
virtual ENGINE_API void RemoveTickPrerequisiteComponent (UActorComponent *PrerequisiteComponent)
 
ENGINE_API void ReceiveTick (float DeltaSeconds)
 
ENGINE_API void ReceiveAsyncPhysicsTick (float DeltaSeconds, float SimSeconds)
 
virtual void ApplyWorldOffset (const FVector &InOffset, bool bWorldShift)
 
bool CanEverAffectNavigation () const
 
ENGINE_API void SetCanEverAffectNavigation (bool bRelevant)
 
virtual bool IsNavigationRelevant () const
 
virtual bool IsHLODRelevant () const
 
 DECLARE_MULTICAST_DELEGATE_OneParam (FOnMarkRenderStateDirty, UActorComponent &)
 
ENGINE_API void SetActiveFlag (const bool bNewIsActive)
 
- Public Member Functions inherited from UObject
COREUOBJECT_API UObject ()
 
COREUOBJECT_API UObject (const FObjectInitializer &ObjectInitializer)
 
COREUOBJECT_API UObject (EStaticConstructor, EObjectFlags InFlags)
 
COREUOBJECT_API UObject (FVTableHelper &Helper)
 
COREUOBJECT_API UObjectCreateDefaultSubobject (FName SubobjectFName, UClass *ReturnType, UClass *ClassToCreateByDefault, bool bIsRequired, bool bIsTransient)
 
template<class TReturnType >
TReturnTypeCreateEditorOnlyDefaultSubobject (FName SubobjectName, bool bTransient=false)
 
template<class TReturnType >
TReturnTypeCreateDefaultSubobject (FName SubobjectName, bool bTransient=false)
 
template<class TReturnType , class TClassToConstructByDefault >
TReturnTypeCreateDefaultSubobject (FName SubobjectName, bool bTransient=false)
 
template<class TReturnType >
TReturnTypeCreateOptionalDefaultSubobject (FName SubobjectName, bool bTransient=false)
 
template<class TReturnType , class TClassToConstructByDefault >
TReturnTypeCreateOptionalDefaultSubobject (FName SubobjectName, bool bTransient=false)
 
COREUOBJECT_API void GetDefaultSubobjects (TArray< UObject * > &OutDefaultSubobjects)
 
COREUOBJECT_API UObjectGetDefaultSubobjectByName (FName ToFind)
 
virtual COREUOBJECT_API void PostReinitProperties ()
 
virtual void PostCDOContruct ()
 
virtual COREUOBJECT_API void PreSaveRoot (FObjectPreSaveRootContext ObjectSaveContext)
 
virtual COREUOBJECT_API void PostSaveRoot (FObjectPostSaveRootContext ObjectSaveContext)
 
virtual COREUOBJECT_API void PreSave (FObjectPreSaveContext SaveContext)
 
virtual COREUOBJECT_API void CollectSaveOverrides (FObjectCollectSaveOverridesContext SaveContext)
 
UE_FORCEINLINE_HINT bool Modify (bool bAlwaysMarkDirty=true)
 
UE_FORCEINLINE_HINT bool IsCapturingAsRootObjectForTransaction () const
 
virtual bool ResolveSubobject (const TCHAR *SubObjectPath, UObject *&OutObject, bool bLoadIfExists)
 
virtual bool IsReadyForAsyncPostLoad () const
 
virtual COREUOBJECT_API void PostLoadSubobjects (FObjectInstancingGraph *OuterInstanceGraph)
 
virtual bool IsReadyForFinishDestroy ()
 
virtual COREUOBJECT_API void FinishDestroy ()
 
virtual COREUOBJECT_API void Serialize (FStructuredArchive::FRecord Record)
 
virtual void ShutdownAfterError ()
 
virtual void PostInterpChange (FProperty *PropertyThatChanged)
 
virtual void PreDuplicate (FObjectDuplicationParameters &DupParams)
 
virtual void PostDuplicate (bool bDuplicateForPIE)
 
virtual void PostDuplicate (EDuplicateMode::Type DuplicateMode)
 
virtual COREUOBJECT_API bool NeedsLoadForTargetPlatform (const class ITargetPlatform *TargetPlatform) const
 
virtual bool IsEditorOnly () const
 
virtual bool HasNonEditorOnlyReferences () const
 
virtual bool IsPostLoadThreadSafe () const
 
virtual COREUOBJECT_API bool IsDestructionThreadSafe () const
 
virtual COREUOBJECT_API void GetPreloadDependencies (TArray< UObject * > &OutDeps)
 
virtual void GetPrestreamPackages (TArray< UObject * > &OutPrestream)
 
virtual void ExportCustomProperties (FOutputDevice &Out, uint32 Indent)
 
virtual void ImportCustomProperties (const TCHAR *SourceText, FFeedbackContext *Warn)
 
virtual void PostEditImport ()
 
virtual void PostReloadConfig (class FProperty *PropertyThatWasLoaded)
 
virtual FString GetDesc ()
 
COREUOBJECT_API UScriptStructGetSparseClassDataStruct () const
 
virtual bool GetNativePropertyValues (TMap< FString, FString > &out_PropertyValues, uint32 ExportFlags=0) const
 
virtual COREUOBJECT_API void GetResourceSizeEx (FResourceSizeEx &CumulativeResourceSize)
 
SIZE_T GetResourceSizeBytes (EResourceSizeMode::Type Mode)
 
virtual FName GetExporterName (void)
 
COREUOBJECT_API void CallAddReferencedObjects (FReferenceCollector &Collector)
 
virtual FRestoreForUObjectOverwriteGetRestoreForUObjectOverwrite ()
 
virtual bool AreNativePropertiesIdenticalTo (UObject *Other) const
 
virtual COREUOBJECT_API void GetAssetRegistryTags (FAssetRegistryTagsContext Context) const
 
virtual COREUOBJECT_API void GetAssetRegistryTags (TArray< FAssetRegistryTag > &OutTags) const
 
COREUOBJECT_API void GetAssetRegistryTags (FAssetData &Out) const
 
COREUOBJECT_API void GetAssetRegistryTags (FAssetRegistryTagsContext Context, FAssetData &Out) const
 
virtual COREUOBJECT_API bool IsAsset () const
 
virtual COREUOBJECT_API FPrimaryAssetId GetPrimaryAssetId () const
 
virtual COREUOBJECT_API bool IsLocalizedResource () const
 
virtual COREUOBJECT_API bool IsSafeForRootSet () const
 
virtual COREUOBJECT_API void TagSubobjects (EObjectFlags NewFlags)
 
virtual COREUOBJECT_API void GetReplicatedCustomConditionState (FCustomPropertyConditionState &OutActiveState) const
 
virtual COREUOBJECT_API bool IsFullNameStableForNetworking () const
 
virtual void GetSubobjectsWithStableNamesForNetworking (TArray< UObject * > &ObjList)
 
virtual COREUOBJECT_API void PreNetReceive ()
 
virtual COREUOBJECT_API void PostNetReceive ()
 
virtual void PostRepNotifies ()
 
virtual COREUOBJECT_API void PreDestroyFromReplication ()
 
COREUOBJECT_API bool IsSelected () const
 
COREUOBJECT_API void SerializeScriptProperties (FArchive &Ar) const
 
COREUOBJECT_API void SerializeScriptProperties (FStructuredArchive::FSlot Slot) const
 
COREUOBJECT_API void ReinitializeProperties (UObject *SourceObject=NULL, struct FObjectInstancingGraph *InstanceGraph=NULL)
 
COREUOBJECT_API FString GetDetailedInfo () const
 
COREUOBJECT_API bool ConditionalBeginDestroy ()
 
COREUOBJECT_API bool ConditionalFinishDestroy ()
 
COREUOBJECT_API void ConditionalPostLoad ()
 
COREUOBJECT_API void ConditionalPreload ()
 
COREUOBJECT_API void ConditionalPostLoadSubobjects (struct FObjectInstancingGraph *OuterInstanceGraph=NULL)
 
bool IsBasedOnArchetype (const UObject *const SomeObject) const
 
COREUOBJECT_API UFunctionFindFunction (FName InName) const
 
COREUOBJECT_API UFunctionFindFunctionChecked (FName InName) const
 
virtual COREUOBJECT_API void BuildSubobjectMapping (UObject *OtherObject, TMap< UObject *, UObject * > &ObjectMapping) const
 
COREUOBJECT_API void CollectDefaultSubobjects (TArray< UObject * > &OutDefaultSubobjects, bool bIncludeNestedSubobjects=false) const
 
COREUOBJECT_API bool CheckDefaultSubobjects (bool bForceCheck=false) const
 
COREUOBJECT_API void SaveConfig (uint64 RequiredPropertyFlags=CPF_Config, const TCHAR *Filename=nullptr, FConfigCacheIni *Config=GConfig, bool bAllowCopyToDefaultObject=true)
 
COREUOBJECT_API void SaveConfig (const FSaveConfigContext &Context)
 
COREUOBJECT_API void UpdateDefaultConfigFile (const FString &SpecificFileLocation="")
 
COREUOBJECT_API bool TryUpdateDefaultConfigFile (const FString &SpecificFileLocation="", bool bWarnIfFail=true)
 
COREUOBJECT_API void UpdateGlobalUserConfigFile ()
 
COREUOBJECT_API void UpdateProjectUserConfigFile ()
 
COREUOBJECT_API void UpdateSinglePropertyInConfigFile (const FProperty *InProperty, const FString &InConfigIniName)
 
COREUOBJECT_API FString GetDefaultConfigFilename () const
 
COREUOBJECT_API FString GetGlobalUserConfigFilename () const
 
COREUOBJECT_API FString GetProjectUserConfigFilename () const
 
virtual const TCHARGetConfigOverridePlatform () const
 
virtual void OverrideConfigSection (FString &SectionName)
 
virtual void OverridePerObjectConfigSection (FString &SectionName)
 
COREUOBJECT_API void LoadConfig (UClass *ConfigClass=nullptr, const TCHAR *Filename=nullptr, uint32 PropagationFlags=UE::LCPF_None, class FProperty *PropertyToLoad=nullptr, TArray< UE::ConfigAccessTracking::FConfigAccessData > *OutAccessedKeys=nullptr)
 
COREUOBJECT_API void ReloadConfig (UClass *ConfigClass=NULL, const TCHAR *Filename=NULL, uint32 PropagationFlags=UE::LCPF_None, class FProperty *PropertyToLoad=NULL)
 
COREUOBJECT_API void ParseParms (const TCHAR *Parms)
 
COREUOBJECT_API void OutputReferencers (FOutputDevice &Ar, FReferencerInformationList *Referencers=NULL)
 
COREUOBJECT_API void RetrieveReferencers (TArray< FReferencerInformation > *OutInternalReferencers, TArray< FReferencerInformation > *OutExternalReferencers)
 
COREUOBJECT_API void SetLinker (FLinkerLoad *LinkerLoad, int32 LinkerIndex, bool bShouldDetachExisting=true, bool bSilenceLogs=false)
 
COREUOBJECT_API UObjectGetArchetype () const
 
COREUOBJECT_API void GetArchetypeInstances (TArray< UObject * > &Instances)
 
COREUOBJECT_API void InstanceSubobjectTemplates (struct FObjectInstancingGraph *InstanceGraph=NULL)
 
template<class T >
bool Implements () const
 
virtual COREUOBJECT_API void ProcessEvent (UFunction *Function, void *Parms)
 
COREUOBJECT_API bool CallFunctionByNameWithArguments (const TCHAR *Cmd, FOutputDevice &Ar, UObject *Executor, bool bForceCallWithNonExec=false)
 
COREUOBJECT_API void CallFunction (FFrame &Stack, RESULT_DECL, UFunction *Function)
 
 DECLARE_FUNCTION (ProcessInternal)
 
virtual bool ProcessConsoleExec (const TCHAR *Cmd, FOutputDevice &Ar, UObject *Executor)
 
COREUOBJECT_API void SkipFunction (FFrame &Stack, RESULT_DECL, UFunction *Function)
 
virtual UClassRegenerateClass (UClass *ClassToRegenerate, UObject *PreviousCDO)
 
COREUOBJECT_API bool IsInBlueprint () const
 
COREUOBJECT_API void DestroyNonNativeProperties ()
 
virtual void MarkAsEditorOnlySubobject ()
 
COREUOBJECT_API void AbortInsideMemberFunction () const
 
 DECLARE_FUNCTION (execUndefined)
 
 DECLARE_FUNCTION (execLocalVariable)
 
 DECLARE_FUNCTION (execInstanceVariable)
 
 DECLARE_FUNCTION (execDefaultVariable)
 
 DECLARE_FUNCTION (execLocalOutVariable)
 
 DECLARE_FUNCTION (execInterfaceVariable)
 
 DECLARE_FUNCTION (execClassSparseDataVariable)
 
 DECLARE_FUNCTION (execInterfaceContext)
 
 DECLARE_FUNCTION (execArrayElement)
 
 DECLARE_FUNCTION (execBoolVariable)
 
 DECLARE_FUNCTION (execClassDefaultVariable)
 
 DECLARE_FUNCTION (execEndFunctionParms)
 
 DECLARE_FUNCTION (execNothing)
 
 DECLARE_FUNCTION (execNothingInt32)
 
 DECLARE_FUNCTION (execNothingOp4a)
 
 DECLARE_FUNCTION (execBreakpoint)
 
 DECLARE_FUNCTION (execTracepoint)
 
 DECLARE_FUNCTION (execWireTracepoint)
 
 DECLARE_FUNCTION (execInstrumentation)
 
 DECLARE_FUNCTION (execEndOfScript)
 
 DECLARE_FUNCTION (execReturnNothing)
 
 DECLARE_FUNCTION (execEmptyParmValue)
 
 DECLARE_FUNCTION (execJump)
 
 DECLARE_FUNCTION (execJumpIfNot)
 
 DECLARE_FUNCTION (execAssert)
 
 DECLARE_FUNCTION (execPushExecutionFlow)
 
 DECLARE_FUNCTION (execPopExecutionFlow)
 
 DECLARE_FUNCTION (execComputedJump)
 
 DECLARE_FUNCTION (execPopExecutionFlowIfNot)
 
 DECLARE_FUNCTION (execLet)
 
 DECLARE_FUNCTION (execLetObj)
 
 DECLARE_FUNCTION (execLetWeakObjPtr)
 
 DECLARE_FUNCTION (execLetBool)
 
 DECLARE_FUNCTION (execLetDelegate)
 
 DECLARE_FUNCTION (execLetMulticastDelegate)
 
 DECLARE_FUNCTION (execAddMulticastDelegate)
 
 DECLARE_FUNCTION (execClearMulticastDelegate)
 
 DECLARE_FUNCTION (execEatReturnValue)
 
 DECLARE_FUNCTION (execRemoveMulticastDelegate)
 
 DECLARE_FUNCTION (execSelf)
 
 DECLARE_FUNCTION (execContext)
 
 DECLARE_FUNCTION (execContext_FailSilent)
 
 DECLARE_FUNCTION (execStructMemberContext)
 
 DECLARE_FUNCTION (execVirtualFunction)
 
 DECLARE_FUNCTION (execFinalFunction)
 
 DECLARE_FUNCTION (execLocalVirtualFunction)
 
 DECLARE_FUNCTION (execLocalFinalFunction)
 
 DECLARE_FUNCTION (execStructCmpEq)
 
 DECLARE_FUNCTION (execStructCmpNe)
 
 DECLARE_FUNCTION (execStructMember)
 
 DECLARE_FUNCTION (execEqualEqual_DelegateDelegate)
 
 DECLARE_FUNCTION (execNotEqual_DelegateDelegate)
 
 DECLARE_FUNCTION (execEqualEqual_DelegateFunction)
 
 DECLARE_FUNCTION (execNotEqual_DelegateFunction)
 
 DECLARE_FUNCTION (execIntConst)
 
 DECLARE_FUNCTION (execInt64Const)
 
 DECLARE_FUNCTION (execUInt64Const)
 
 DECLARE_FUNCTION (execSkipOffsetConst)
 
 DECLARE_FUNCTION (execFloatConst)
 
 DECLARE_FUNCTION (execDoubleConst)
 
 DECLARE_FUNCTION (execStringConst)
 
 DECLARE_FUNCTION (execUnicodeStringConst)
 
 DECLARE_FUNCTION (execTextConst)
 
 DECLARE_FUNCTION (execPropertyConst)
 
 DECLARE_FUNCTION (execObjectConst)
 
 DECLARE_FUNCTION (execSoftObjectConst)
 
 DECLARE_FUNCTION (execFieldPathConst)
 
 DECLARE_FUNCTION (execInstanceDelegate)
 
 DECLARE_FUNCTION (execNameConst)
 
 DECLARE_FUNCTION (execByteConst)
 
 DECLARE_FUNCTION (execIntZero)
 
 DECLARE_FUNCTION (execIntOne)
 
 DECLARE_FUNCTION (execTrue)
 
 DECLARE_FUNCTION (execFalse)
 
 DECLARE_FUNCTION (execNoObject)
 
 DECLARE_FUNCTION (execNullInterface)
 
 DECLARE_FUNCTION (execIntConstByte)
 
 DECLARE_FUNCTION (execRotationConst)
 
 DECLARE_FUNCTION (execVectorConst)
 
 DECLARE_FUNCTION (execVector3fConst)
 
 DECLARE_FUNCTION (execTransformConst)
 
 DECLARE_FUNCTION (execStructConst)
 
 DECLARE_FUNCTION (execSetArray)
 
 DECLARE_FUNCTION (execSetSet)
 
 DECLARE_FUNCTION (execSetMap)
 
 DECLARE_FUNCTION (execArrayConst)
 
 DECLARE_FUNCTION (execSetConst)
 
 DECLARE_FUNCTION (execMapConst)
 
 DECLARE_FUNCTION (execBitFieldConst)
 
 DECLARE_FUNCTION (execNew)
 
 DECLARE_FUNCTION (execClassContext)
 
 DECLARE_FUNCTION (execNativeParm)
 
 DECLARE_FUNCTION (execCast)
 
 DECLARE_FUNCTION (execDynamicCast)
 
 DECLARE_FUNCTION (execMetaCast)
 
 DECLARE_FUNCTION (execInterfaceCast)
 
 DECLARE_FUNCTION (execDoubleToFloatCast)
 
 DECLARE_FUNCTION (execFloatToDoubleCast)
 
 DECLARE_FUNCTION (execObjectToBool)
 
 DECLARE_FUNCTION (execInterfaceToBool)
 
 DECLARE_FUNCTION (execObjectToInterface)
 
 DECLARE_FUNCTION (execInterfaceToInterface)
 
 DECLARE_FUNCTION (execInterfaceToObject)
 
 DECLARE_FUNCTION (execGetDynArrayElement)
 
 DECLARE_FUNCTION (execSetDynArrayElement)
 
 DECLARE_FUNCTION (execGetDynArrayLength)
 
 DECLARE_FUNCTION (execSetDynArrayLength)
 
 DECLARE_FUNCTION (execDynArrayInsert)
 
 DECLARE_FUNCTION (execDynArrayRemove)
 
 DECLARE_FUNCTION (execDynArrayFind)
 
 DECLARE_FUNCTION (execDynArrayFindStruct)
 
 DECLARE_FUNCTION (execDynArrayAdd)
 
 DECLARE_FUNCTION (execDynArrayAddItem)
 
 DECLARE_FUNCTION (execDynArrayInsertItem)
 
 DECLARE_FUNCTION (execDynArrayRemoveItem)
 
 DECLARE_FUNCTION (execDynArraySort)
 
 DECLARE_FUNCTION (execBindDelegate)
 
 DECLARE_FUNCTION (execCallMulticastDelegate)
 
 DECLARE_FUNCTION (execLetValueOnPersistentFrame)
 
 DECLARE_FUNCTION (execCallMathFunction)
 
 DECLARE_FUNCTION (execSwitchValue)
 
 DECLARE_FUNCTION (execArrayGetByRef)
 
 DECLARE_FUNCTION (execAutoRtfmTransact)
 
 DECLARE_FUNCTION (execAutoRtfmStopTransact)
 
 DECLARE_FUNCTION (execAutoRtfmAbortIfNot)
 
void ExecuteUbergraph (int32 EntryPoint)
 
virtual void ValidateGeneratedRepEnums (const TArray< struct FRepRecord > &ClassReps) const
 
virtual uint64 GetNetPushIdDynamic () const
 
- Public Member Functions inherited from UObjectBaseUtility
 UObjectBaseUtility ()
 
 UObjectBaseUtility (EObjectFlags InFlags)
 
void SetFlags (EObjectFlags NewFlags)
 
void ClearFlags (EObjectFlags FlagsToClear)
 
bool HasAnyFlags (EObjectFlags FlagsToCheck) const
 
bool HasAllFlags (EObjectFlags FlagsToCheck) const
 
UE_FORCEINLINE_HINT EObjectFlags GetMaskedFlags (EObjectFlags Mask=RF_AllFlags) const
 
UE_FORCEINLINE_HINT void Mark (EObjectMark Marks) const
 
UE_FORCEINLINE_HINT void UnMark (EObjectMark Marks) const
 
UE_FORCEINLINE_HINT bool HasAnyMarks (EObjectMark Marks) const
 
UE_FORCEINLINE_HINT bool HasAllMarks (EObjectMark Marks) const
 
UE_FORCEINLINE_HINT EObjectMark GetAllMarks () const
 
void MarkAsGarbage ()
 
void ClearGarbage ()
 
UE_FORCEINLINE_HINT void AddToRoot ()
 
UE_FORCEINLINE_HINT void RemoveFromRoot ()
 
UE_FORCEINLINE_HINT bool IsRooted () const
 
UE_FORCEINLINE_HINT int32 GetRefCount () const
 
bool ThisThreadAtomicallyClearedRFUnreachable ()
 
UE_FORCEINLINE_HINT bool IsUnreachable () const
 
UE_FORCEINLINE_HINT bool IsNative () const
 
void SetInternalFlags (EInternalObjectFlags FlagsToSet) const
 
UE_FORCEINLINE_HINT EInternalObjectFlags GetInternalFlags () const
 
UE_FORCEINLINE_HINT bool HasAnyInternalFlags (EInternalObjectFlags FlagsToCheck) const
 
void ClearInternalFlags (EInternalObjectFlags FlagsToClear) const
 
bool AtomicallyClearInternalFlags (EInternalObjectFlags FlagsToClear) const
 
COREUOBJECT_API FString GetFullName (const UObject *StopOuter=NULL, EObjectFullNameFlags Flags=EObjectFullNameFlags::None) const
 
COREUOBJECT_API void GetFullName (const UObject *StopOuter, FString &ResultString, EObjectFullNameFlags Flags=EObjectFullNameFlags::None) const
 
COREUOBJECT_API void GetFullName (FStringBuilderBase &ResultString, const UObject *StopOuter=NULL, EObjectFullNameFlags Flags=EObjectFullNameFlags::None) const
 
COREUOBJECT_API FString GetPathName (const UObject *StopOuter=NULL) const
 
COREUOBJECT_API void GetPathName (const UObject *StopOuter, FString &ResultString) const
 
COREUOBJECT_API void GetPathName (const UObject *StopOuter, FStringBuilderBase &ResultString) const
 
virtual bool CanBeClusterRoot () const
 
virtual COREUOBJECT_API bool CanBeInCluster () const
 
virtual COREUOBJECT_API void CreateCluster ()
 
virtual void OnClusterMarkedAsPendingKill ()
 
COREUOBJECT_API void AddToCluster (UObjectBaseUtility *ClusterRootOrObjectFromCluster, bool bAddAsMutableObject=false)
 
COREUOBJECT_API FString GetFullGroupName (bool bStartWithOuter) const
 
UE_FORCEINLINE_HINT FString GetName () const
 
UE_FORCEINLINE_HINT void GetName (FString &ResultString) const
 
UE_FORCEINLINE_HINT void AppendName (FString &ResultString) const
 
COREUOBJECT_API bool IsPackageExternal () const
 
COREUOBJECT_API void DetachExternalPackage ()
 
COREUOBJECT_API void ReattachExternalPackage ()
 
COREUOBJECT_API UObjectGetOutermostObject () const
 
COREUOBJECT_API UPackageGetPackage () const
 
UE_INTERNAL virtual COREUOBJECT_API UE::Core::FVersePath GetVersePath () const
 
COREUOBJECT_API UPackageGetOutermost () const
 
COREUOBJECT_API bool MarkPackageDirty () const
 
COREUOBJECT_API bool IsTemplate (EObjectFlags TemplateTypes=RF_ArchetypeObject|RF_ClassDefaultObject) const
 
COREUOBJECT_API UObjectGetTypedOuter (UClass *Target) const
 
template<typename T >
T * GetTypedOuter () const
 
template<typename InterfaceClassType >
InterfaceClassTypeGetImplementingOuter () const
 
COREUOBJECT_API UObjectBaseUtilityGetImplementingOuterObject (const UClass *InInterfaceClass) const
 
COREUOBJECT_API bool IsIn (const UObject *SomeOuter) const
 
COREUOBJECT_API bool IsIn (const UPackage *SomePackage) const
 
COREUOBJECT_API bool IsInOuter (const UObject *SomeOuter) const
 
COREUOBJECT_API bool IsInPackage (const UPackage *SomePackage) const
 
COREUOBJECT_API bool IsInA (const UClass *SomeBaseClass) const
 
COREUOBJECT_API bool RootPackageHasAnyFlags (uint32 CheckFlagMask) const
 
template<typename OtherClassType >
bool IsA (OtherClassType SomeBase) const
 
template<class T >
bool IsA () const
 
COREUOBJECT_API const UClassFindNearestCommonBaseClass (const UClass *TestClass) const
 
COREUOBJECT_API voidGetInterfaceAddress (UClass *InterfaceClass)
 
COREUOBJECT_API voidGetNativeInterfaceAddress (UClass *InterfaceClass)
 
const voidGetNativeInterfaceAddress (UClass *InterfaceClass) const
 
COREUOBJECT_API bool IsTemplateForSubobjects (EObjectFlags TemplateTypes=RF_ClassDefaultObject|RF_DefaultSubObject|RF_InheritableComponentTemplate) const
 
COREUOBJECT_API bool IsDefaultSubobject () const
 
COREUOBJECT_API class FLinkerLoadGetLinker () const
 
COREUOBJECT_API int32 GetLinkerIndex () const
 
COREUOBJECT_API FPackageFileVersion GetLinkerUEVersion () const
 
int32 GetLinkerUE4Version () const
 
COREUOBJECT_API int32 GetLinkerLicenseeUEVersion () const
 
int32 GetLinkerLicenseeUE4Version () const
 
COREUOBJECT_API int32 GetLinkerCustomVersion (FGuid CustomVersionKey) const
 
UE_FORCEINLINE_HINT bool operator< (const UObjectBaseUtility &Other) const
 
TStatId GetStatID (bool bForDeferredUse=false) const
 
- Public Member Functions inherited from UObjectBase
COREUOBJECT_API UObjectBase (UClass *InClass, EObjectFlags InFlags, EInternalObjectFlags InInternalFlags, UObject *InOuter, FName InName, int32 InInternalIndex=-1, int32 InSerialNumber=0, FRemoteObjectId InRemoteId=FRemoteObjectId())
 
virtual COREUOBJECT_API ~UObjectBase ()
 
COREUOBJECT_API bool IsValidLowLevel () const
 
COREUOBJECT_API bool IsValidLowLevelFast (bool bRecursive=true) const
 
FORCEINLINE uint32 GetUniqueID () const
 
FORCEINLINE UClassGetClass () const
 
FORCEINLINE UObjectGetOuter () const
 
FORCEINLINE FName GetFName () const
 
virtual COREUOBJECT_API FName GetFNameForStatID () const
 
COREUOBJECT_API UPackageGetExternalPackage () const
 
COREUOBJECT_API void SetExternalPackage (UPackage *InPackage)
 
COREUOBJECT_API UPackageGetExternalPackageInternal () const
 
COREUOBJECT_API void MarkAsReachable () const
 
COREUOBJECT_API void AddRef () const
 
COREUOBJECT_API void ReleaseRef () const
 
FORCEINLINE EObjectFlags GetFlags () const
 
FORCENOINLINE void AtomicallySetFlags (EObjectFlags FlagsToAdd)
 
FORCENOINLINE void AtomicallyClearFlags (EObjectFlags FlagsToClear)
 
- Public Member Functions inherited from IAsyncPhysicsStateProcessor
virtual void CollectBodySetupsWithPhysicsMeshesToCreate (TSet< UBodySetup * > &OutBodySetups) const
 
virtual void OnAsyncCreatePhysicsStateBegin_GameThread ()
 

Public Attributes

uint8 bUpdateOnlyIfRendered:1
 
uint8 bAutoUpdateTickRegistration:1
 
uint8 bTickBeforeOwner:1
 
uint8 bAutoRegisterUpdatedComponent:1
 
uint8 bConstrainToPlane:1
 
uint8 bSnapToPlaneAtStart:1
 
uint8 bAutoRegisterPhysicsVolumeUpdates:1
 
uint8 bComponentShouldUpdatePhysicsVolume:1
 
- Public Attributes inherited from UActorComponent
struct FActorComponentTickFunction PrimaryComponentTick
 
TArray< FNameComponentTags
 
uint8 bAutoRegister:1
 
uint8 bTickInEditor:1
 
uint8 bNeverNeedsRenderUpdate:1
 
uint8 bAllowConcurrentTick:1
 
uint8 bAllowAnyoneToDestroyMe:1
 
uint8 bAutoActivate:1
 
uint8 bEditableWhenInherited:1
 
uint8 bNavigationRelevant: 1
 
uint8 bWantsInitializeComponent:1
 
uint8 bIsEditorOnly:1
 
EComponentCreationMethod CreationMethod
 
FActorComponentActivatedSignature OnComponentActivated
 
FActorComponentDeactivateSignature OnComponentDeactivated
 

Protected Member Functions

ENGINE_API FVector GetPlaneConstraintNormalFromAxisSetting (EPlaneConstraintAxisSetting AxisSetting) const
 
virtual ENGINE_API bool MoveUpdatedComponentImpl (const FVector &Delta, const FQuat &NewRotation, bool bSweep, FHitResult *OutHit=NULL, ETeleportType Teleport=ETeleportType::None)
 
virtual ENGINE_API bool ResolvePenetrationImpl (const FVector &Adjustment, const FHitResult &Hit, const FQuat &NewRotation)
 
- Protected Member Functions inherited from UActorComponent
virtual ENGINE_API bool ShouldActivate () const
 
virtual ENGINE_API bool ShouldAsyncCreatePhysicsState (UWorld *WorldContext) const
 
virtual ENGINE_API bool ShouldAsyncDestroyPhysicsState () const
 
virtual ENGINE_API void OnPreRegister ()
 
virtual ENGINE_API void OnPreRegistered ()
 
virtual ENGINE_API void OnPreUnregister ()
 
virtual ENGINE_API void OnPreUnregistered ()
 
virtual ENGINE_API void OnUnregister ()
 
virtual void PrecachePSOs ()
 
virtual bool ShouldCreateRenderState () const
 
virtual ENGINE_API void CreateRenderState_Concurrent (FRegisterComponentContext *Context)
 
virtual ENGINE_API void SendRenderTransform_Concurrent ()
 
virtual ENGINE_API void SendRenderDynamicData_Concurrent ()
 
virtual ENGINE_API void SendRenderInstanceData_Concurrent ()
 
virtual ENGINE_API void DestroyRenderState_Concurrent ()
 
virtual ENGINE_API void OnCreatePhysicsState ()
 
virtual ENGINE_API void OnDestroyPhysicsState ()
 
virtual bool ShouldCreatePhysicsState () const
 
virtual bool HasValidPhysicsState () const
 
ENGINE_API void HandleCanEverAffectNavigationChange (bool bForceUpdate=false)
 
ENGINE_API void SetAsyncPhysicsTickEnabled (bool bEnabled)
 
ENGINE_API void DeferRemoveAsyncPhysicsTick ()
 
ENGINE_API void SetIsReplicatedByDefault (const bool bNewReplicates)
 
ENGINE_API bool OwnerNeedsInitialization () const
 
ENGINE_API bool NeedsInitialization () const
 
- Protected Member Functions inherited from UObject
virtual FString GetDetailedInfoInternal () const
 
COREUOBJECT_API bool CanCheckDefaultSubObjects (bool bForceCheck, bool &bResult) const
 
virtual COREUOBJECT_API bool CheckDefaultSubobjectsInternal () const
 
- Protected Member Functions inherited from UObjectBase
 UObjectBase ()
 
COREUOBJECT_API UObjectBase (EObjectFlags InFlags)
 
COREUOBJECT_API void LowLevelRename (FName NewName, UObject *NewOuter=NULL)
 
virtual void RegisterDependencies ()
 
COREUOBJECT_API void Register (class UClass *(*StaticClassFn)(), const TCHAR *PackageName, const TCHAR *Name)
 
COREUOBJECT_API void Register (const TCHAR *PackageName, const TCHAR *Name)
 
virtual COREUOBJECT_API void DeferredRegister (UClass *UClassStaticClass, const TCHAR *PackageName, const TCHAR *Name)
 
FORCEINLINE void SetFlagsTo (EObjectFlags NewFlags)
 

Protected Attributes

FVector PlaneConstraintNormal
 
FVector PlaneConstraintOrigin
 
- Protected Attributes inherited from UActorComponent
TArray< TObjectPtr< UAssetUserData > > AssetUserData
 
EComponentRegistrationState RegistrationState
 
uint8 bRegistered:1
 
uint8 bRenderStateCreated:1
 
uint8 bRenderStateRecreating:1
 
uint8 bPhysicsStateCreated:1
 
uint8 bCallAsyncPhysicsStateCreatedDelegate:1
 
uint8 bNetAddressable:1
 
uint8 bReplicateUsingRegisteredSubObjectList: 1
 
uint8 bAllowReregistration:1
 
uint8 bCanEverAffectNavigation: 1
 

Additional Inherited Members

- Public Types inherited from UObject
enum class  ENetFields_Private { NETFIELD_REP_START = 0 , NETFIELD_REP_END = -1 }
 
typedef UObject WithinClass
 
- Static Public Member Functions inherited from UActorComponent
static ENGINE_API void AddReferencedObjects (UObject *InThis, FReferenceCollector &Collector)
 
- Static Public Member Functions inherited from UObject
static COREUOBJECT_API void UpdateClassesExcludedFromDedicatedServer (const TArray< FString > &InClassNames, const TArray< FString > &InModulesNames)
 
static COREUOBJECT_API void UpdateClassesExcludedFromDedicatedClient (const TArray< FString > &InClassNames, const TArray< FString > &InModulesNames)
 
static COREUOBJECT_API bool CanCreateInCurrentContext (UObject *Template)
 
static COREUOBJECT_API void AddReferencedObjects (UObject *InThis, FReferenceCollector &Collector)
 
static COREUOBJECT_API const FNameSourceFileTagName ()
 
static COREUOBJECT_API UObjectGetArchetypeFromRequiredInfo (const UClass *Class, const UObject *Outer, FName Name, EObjectFlags ObjectFlags)
 
- Static Public Member Functions inherited from UObjectBaseUtility
static bool IsGarbageEliminationEnabled ()
 
static bool IsPendingKillEnabled ()
 
static void SetGarbageEliminationEnabled (bool bEnabled)
 
static COREUOBJECT_API void ReloadObjectsFromModifiedConfigSections (const class FConfigModificationTracker *ChangeTracker)
 
- Static Public Member Functions inherited from UObjectBase
static COREUOBJECT_API FString RemoveClassPrefix (const TCHAR *ClassName)
 
static void PrefetchClass (UObject *Object)
 
static void PrefetchOuter (UObject *Object)
 
- Static Public Attributes inherited from UActorComponent
static ENGINE_API FActorComponentGlobalCreatePhysicsSignature GlobalCreatePhysicsDelegate
 
static ENGINE_API FActorComponentGlobalDestroyPhysicsSignature GlobalDestroyPhysicsDelegate
 
static ENGINE_API FTransactionallySafeRWLock AllUCSModifiedPropertiesLock
 
static ENGINE_API TMap< UActorComponent *, TArray< FSimpleMemberReference > > AllUCSModifiedProperties
 
static ENGINE_API const FString ComponentTemplateNameSuffix
 
static ENGINE_API FOnMarkRenderStateDirty MarkRenderStateDirtyEvent
 
- Protected Types inherited from UActorComponent
enum class  EComponentRegistrationState {
  None , PreRegistering , PreRegistered , PreUnregistering ,
  PreUnregistered
}
 
- Static Protected Member Functions inherited from UActorComponent
static ENGINE_API bool CanBeHLODRelevant (const UActorComponent *ActorComponent)
 
static const FName GetReplicatesPropertyName ()
 

Detailed Description

MovementComponent is an abstract component class that defines functionality for moving a PrimitiveComponent (our UpdatedComponent) each tick. Base functionality includes:

  • Restricting movement to a plane or axis.
  • Utility functions for special handling of collision results (SlideAlongSurface(), ComputeSlideVector(), TwoWallAdjust()).
  • Utility functions for moving when there may be initial penetration (SafeMoveUpdatedComponent(), ResolvePenetration()).
  • Automatically registering the component tick and finding a component to move on the owning Actor. Normally the root component of the owning actor is moved, however another component may be selected (see SetUpdatedComponent()). During swept (non-teleporting) movement only collision of UpdatedComponent is considered, attached components will teleport to the end location ignoring collision.

Member Function Documentation

◆ AddRadialForce()

void UMovementComponent::AddRadialForce ( const FVector Origin,
float  Radius,
float  Strength,
ERadialImpulseFalloff  Falloff 
)
virtual

Adds force from radial force components. Intended to be overridden by subclasses; default implementation does nothing.

Parameters
OriginThe origin of the force
RadiusThe radius in which the force will be applied
StrengthThe strength of the force
FalloffThe falloff from the force's origin

Reimplemented in UCharacterMovementComponent.

◆ AddRadialImpulse()

void UMovementComponent::AddRadialImpulse ( const FVector Origin,
float  Radius,
float  Strength,
ERadialImpulseFalloff  Falloff,
bool  bVelChange 
)
virtual

Adds impulse from radial force components. Intended to be overridden by subclasses; default implementation does nothing.

Parameters
OriginThe origin of the force
RadiusThe radius in which the force will be applied
StrengthThe strength of the force
FalloffThe falloff from the force's origin
bVelChangeIf true, the Strength is taken as a change in velocity instead of an impulse (ie. mass will have no effect).

Reimplemented in UCharacterMovementComponent.

◆ ComputeSlideVector()

FVector UMovementComponent::ComputeSlideVector ( const FVector Delta,
const float  Time,
const FVector Normal,
const FHitResult Hit 
) const
virtual

Compute a vector to slide along a surface, given an attempted move, time, and normal.

Parameters
DeltaAttempted move.
TimeAmount of move to apply (between 0 and 1).
NormalNormal opposed to movement. Not necessarily equal to Hit.Normal.
HitHitResult of the move that resulted in the slide.

Reimplemented in UCharacterMovementComponent.

◆ ConstrainDirectionToPlane()

FVector UMovementComponent::ConstrainDirectionToPlane ( FVector  Direction) const
virtual

Constrain a direction vector to the plane constraint, if enabled.

See also
SetPlaneConstraint

◆ ConstrainLocationToPlane()

FVector UMovementComponent::ConstrainLocationToPlane ( FVector  Location) const
virtual

Constrain a position vector to the plane constraint, if enabled.

◆ ConstrainNormalToPlane()

FVector UMovementComponent::ConstrainNormalToPlane ( FVector  Normal) const
virtual

Constrain a normal vector (of unit length) to the plane constraint, if enabled.

◆ Deactivate()

void UMovementComponent::Deactivate ( )
overridevirtual

Deactivates the SceneComponent.

Reimplemented from UActorComponent.

Reimplemented in UCharacterMovementComponent.

◆ GetGravityZ()

float UMovementComponent::GetGravityZ ( ) const
virtual

Returns gravity that affects this component

Reimplemented in UCharacterMovementComponent.

◆ GetMaxSpeed()

float UMovementComponent::GetMaxSpeed ( ) const
inlinevirtual

Returns maximum speed of component in current movement mode.

Reimplemented in UCharacterMovementComponent.

◆ GetPenetrationAdjustment()

FVector UMovementComponent::GetPenetrationAdjustment ( const FHitResult Hit) const
virtual

Calculate a movement adjustment to try to move out of a penetration from a failed move.

Parameters
Hitthe result of the failed move
Returns
The adjustment to use after a failed move, or a zero vector if no attempt should be made.

Reimplemented in UCharacterMovementComponent.

◆ GetPhysicsVolume()

APhysicsVolume * UMovementComponent::GetPhysicsVolume ( ) const
virtual

Returns the PhysicsVolume this MovementComponent is using, or the world's default physics volume if none.

◆ GetPlaneConstraintAxisSetting()

EPlaneConstraintAxisSetting UMovementComponent::GetPlaneConstraintAxisSetting ( ) const
inline

Get the plane constraint axis setting.

◆ GetPlaneConstraintNormal()

const FVector & UMovementComponent::GetPlaneConstraintNormal ( ) const

Returns the normal of the plane that constrains movement, enforced if the plane constraint is enabled.

◆ GetPlaneConstraintNormalFromAxisSetting()

FVector UMovementComponent::GetPlaneConstraintNormalFromAxisSetting ( EPlaneConstraintAxisSetting  AxisSetting) const
protected

Helper to compute the plane constraint axis from the current setting.

Parameters
AxisSettingSetting to use when computing the axis.
Returns
Plane constraint axis/normal.

◆ GetPlaneConstraintOrigin()

const FVector & UMovementComponent::GetPlaneConstraintOrigin ( ) const

Get the plane constraint origin. This defines the behavior of snapping a position to the plane, such as by SnapUpdatedComponentToPlane().

Returns
The origin of the plane that constrains movement, if the plane constraint is enabled.

◆ HandleImpact()

void UMovementComponent::HandleImpact ( const FHitResult Hit,
float  TimeSlice = 0.f,
const FVector MoveDelta = FVector::ZeroVector 
)
virtual

Called for Blocking impact

Parameters
HitDescribes the collision.
TimeSliceTime period for the simulation that produced this hit. Useful for putting Hit.Time in context. Can be zero in certain situations where it's not appropriate, be sure to handle that.
MoveDeltaAttempted move that resulted in the hit.

Reimplemented in UInterpToMovementComponent, and UCharacterMovementComponent.

◆ InitCollisionParams()

void UMovementComponent::InitCollisionParams ( FCollisionQueryParams OutParams,
FCollisionResponseParams OutResponseParam 
) const
virtual

Initialize collision params appropriately based on our collision settings. Use this before any Line, Overlap, or Sweep tests.

◆ InitializeComponent()

void UMovementComponent::InitializeComponent ( )
overridevirtual

Overridden to auto-register the updated component if it starts NULL, and we can find a root component on our owner.

Reimplemented from UActorComponent.

◆ IsExceedingMaxSpeed()

bool UMovementComponent::IsExceedingMaxSpeed ( float  MaxSpeed) const
virtual

Returns true if the current velocity is exceeding the given max speed (usually the result of GetMaxSpeed()), within a small error tolerance. Note that under normal circumstances updates cause by acceleration will not cause this to be true, however external forces or changes in the max speed limit can cause the max speed to be violated.

◆ IsInWater()

bool UMovementComponent::IsInWater ( ) const
virtual

Returns true if it's in PhysicsVolume with water flag

◆ K2_MoveUpdatedComponent()

bool UMovementComponent::K2_MoveUpdatedComponent ( FVector  Delta,
FRotator  NewRotation,
FHitResult OutHit,
bool  bSweep = true,
bool  bTeleport = false 
)

Moves our UpdatedComponent by the given Delta, and sets rotation to NewRotation. Respects the plane constraint, if enabled.

Returns
True if some movement occurred, false if no movement occurred. Result of any impact will be stored in OutHit.

◆ MoveUpdatedComponent() [1/2]

bool UMovementComponent::MoveUpdatedComponent ( const FVector Delta,
const FQuat NewRotation,
bool  bSweep,
FHitResult OutHit = NULL,
ETeleportType  Teleport = ETeleportType::None 
)
inline

Moves our UpdatedComponent by the given Delta, and sets rotation to NewRotation. Respects the plane constraint, if enabled.

Note
This simply calls the virtual MoveUpdatedComponentImpl() which can be overridden to implement custom behavior.
The overload taking rotation as an FQuat is slightly faster than the version using FRotator (which will be converted to an FQuat).
The 'Teleport' flag is currently always treated as 'None' (not teleporting) when used in an active FScopedMovementUpdate.
Returns
True if some movement occurred, false if no movement occurred. Result of any impact will be stored in OutHit.

◆ MoveUpdatedComponent() [2/2]

bool UMovementComponent::MoveUpdatedComponent ( const FVector Delta,
const FRotator NewRotation,
bool  bSweep,
FHitResult OutHit = NULL,
ETeleportType  Teleport = ETeleportType::None 
)
inline

◆ MoveUpdatedComponentImpl()

bool UMovementComponent::MoveUpdatedComponentImpl ( const FVector Delta,
const FQuat NewRotation,
bool  bSweep,
FHitResult OutHit = NULL,
ETeleportType  Teleport = ETeleportType::None 
)
protectedvirtual

◆ OnRegister()

void UMovementComponent::OnRegister ( )
overridevirtual

Overridden to update component properties that should be updated while being edited.

Reimplemented from UActorComponent.

Reimplemented in UCharacterMovementComponent.

◆ OnTeleported()

virtual void UMovementComponent::OnTeleported ( )
inlinevirtual

Called by owning Actor upon successful teleport from AActor::TeleportTo().

Reimplemented in UCharacterMovementComponent, and UPawnMovementComponent.

◆ OverlapTest()

bool UMovementComponent::OverlapTest ( const FVector Location,
const FQuat RotationQuat,
const ECollisionChannel  CollisionChannel,
const FCollisionShape CollisionShape,
const AActor IgnoreActor 
) const
virtual

Return true if the given collision shape overlaps other geometry at the given location and rotation. The collision params are set by InitCollisionParams().

◆ PhysicsVolumeChanged()

void UMovementComponent::PhysicsVolumeChanged ( class APhysicsVolume NewVolume)
virtual

Delegate when PhysicsVolume of UpdatedComponent has been changed

Reimplemented in UCharacterMovementComponent.

◆ PostLoad()

void UMovementComponent::PostLoad ( )
overridevirtual

Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

Reimplemented from UActorComponent.

Reimplemented in UCharacterMovementComponent.

◆ RegisterComponentTickFunctions()

void UMovementComponent::RegisterComponentTickFunctions ( bool  bRegister)
overridevirtual

Virtual call chain to register all tick functions

Parameters
bRegister- true to register, false, to unregister

Reimplemented from UActorComponent.

Reimplemented in UCharacterMovementComponent.

◆ ResolvePenetration() [1/2]

bool UMovementComponent::ResolvePenetration ( const FVector Adjustment,
const FHitResult Hit,
const FQuat NewRotation 
)
inline

Try to move out of penetration in an object after a failed move. This function should respect the plane constraint if applicable.

Note
This simply calls the virtual ResolvePenetrationImpl() which can be overridden to implement custom behavior.
The overload taking rotation as an FQuat is slightly faster than the version using FRotator (which will be converted to an FQuat)..
Parameters
AdjustmentThe requested adjustment, usually from GetPenetrationAdjustment()
HitThe result of the failed move
Returns
True if the adjustment was successful and the original move should be retried, or false if no repeated attempt should be made.

◆ ResolvePenetration() [2/2]

bool UMovementComponent::ResolvePenetration ( const FVector Adjustment,
const FHitResult Hit,
const FRotator NewRotation 
)
inline

◆ ResolvePenetrationImpl()

bool UMovementComponent::ResolvePenetrationImpl ( const FVector Adjustment,
const FHitResult Hit,
const FQuat NewRotation 
)
protectedvirtual

◆ SafeMoveUpdatedComponent() [1/2]

bool UMovementComponent::SafeMoveUpdatedComponent ( const FVector Delta,
const FQuat NewRotation,
bool  bSweep,
FHitResult OutHit,
ETeleportType  Teleport = ETeleportType::None 
)
virtual

Calls MoveUpdatedComponent(), handling initial penetrations by calling ResolvePenetration(). If this adjustment succeeds, the original movement will be attempted again.

Note
The overload taking rotation as an FQuat is slightly faster than the version using FRotator (which will be converted to an FQuat).
The 'Teleport' flag is currently always treated as 'None' (not teleporting) when used in an active FScopedMovementUpdate.
When overriding, it is recommended to either call super or at least maintain the intended operation that includes resolving initial penetration.
Also when overriding, make sure to include using UMovementComponent::SafeMoveUpdatedComponent next to the declaration. The FRotator version will be hidden otherwise and cause compilation issues when invoked.
Returns
result of the final MoveUpdatedComponent() call.

◆ SafeMoveUpdatedComponent() [2/2]

bool UMovementComponent::SafeMoveUpdatedComponent ( const FVector Delta,
const FRotator NewRotation,
bool  bSweep,
FHitResult OutHit,
ETeleportType  Teleport = ETeleportType::None 
)
inline

◆ Serialize()

void UMovementComponent::Serialize ( FArchive Ar)
overridevirtual

Handles reading, writing, and reference collecting using FArchive. This implementation handles all FProperty serialization, but can be overridden for native variables.

Reimplemented from UActorComponent.

Reimplemented in UNavMovementComponent, UPawnMovementComponent, and UCharacterMovementComponent.

◆ SetPlaneConstraintAxisSetting()

void UMovementComponent::SetPlaneConstraintAxisSetting ( EPlaneConstraintAxisSetting  NewAxisSetting)
virtual

Set the plane constraint axis setting. Changing this setting will modify the current value of PlaneConstraintNormal.

Parameters
NewAxisSettingNew plane constraint axis setting.

◆ SetPlaneConstraintEnabled()

void UMovementComponent::SetPlaneConstraintEnabled ( bool  bEnabled)
virtual

Sets whether or not the plane constraint is enabled.

◆ SetPlaneConstraintFromVectors()

void UMovementComponent::SetPlaneConstraintFromVectors ( FVector  Forward,
FVector  Up 
)
virtual

Uses the Forward and Up vectors to compute the plane that constrains movement, enforced if the plane constraint is enabled.

◆ SetPlaneConstraintNormal()

void UMovementComponent::SetPlaneConstraintNormal ( FVector  PlaneNormal)
virtual

Sets the normal of the plane that constrains movement, enforced if the plane constraint is enabled. Changing the normal automatically sets PlaneConstraintAxisSetting to "Custom".

Parameters
PlaneNormalThe normal of the plane. If non-zero in length, it will be normalized.

◆ SetPlaneConstraintOrigin()

void UMovementComponent::SetPlaneConstraintOrigin ( FVector  PlaneOrigin)
virtual

Sets the origin of the plane that constrains movement, enforced if the plane constraint is enabled.

◆ SetUpdatedComponent()

void UMovementComponent::SetUpdatedComponent ( USceneComponent *  NewUpdatedComponent)
virtual

Assign the component we move and update.

Reimplemented in UCharacterMovementComponent, and UPawnMovementComponent.

◆ ShouldSkipUpdate()

bool UMovementComponent::ShouldSkipUpdate ( float  DeltaTime) const
virtual

Possibly skip update if moved component is not rendered or can't move.

Parameters
DeltaTime
Returns
true if component movement update should be skipped

◆ SlideAlongSurface()

float UMovementComponent::SlideAlongSurface ( const FVector Delta,
float  Time,
const FVector Normal,
FHitResult Hit,
bool  bHandleImpact = false 
)
virtual

Slide smoothly along a surface, and slide away from multiple impacts using TwoWallAdjust if necessary. Calls HandleImpact for each surface hit, if requested. Uses SafeMoveUpdatedComponent() for movement, and ComputeSlideVector() to determine the slide direction.

Parameters
DeltaAttempted movement vector.
TimePercent of Delta to apply (between 0 and 1). Usually equal to the remaining time after a collision: (1.0 - Hit.Time).
NormalNormal opposing movement, along which we will slide.
Hit[In] HitResult of the attempted move that resulted in the impact triggering the slide. [Out] HitResult of last attempted move.
bHandleImpactWhether to call HandleImpact on each hit.
Returns
The percentage of requested distance (Delta * Percent) actually applied (between 0 and 1). 0 if no movement occurred, non-zero if movement occurred.

Reimplemented in UCharacterMovementComponent.

◆ SnapUpdatedComponentToPlane()

void UMovementComponent::SnapUpdatedComponentToPlane ( )
virtual

Snap the updated component to the plane constraint, if enabled.

◆ StopMovementImmediately()

void UMovementComponent::StopMovementImmediately ( )
inlinevirtual

Stops movement immediately (zeroes velocity, usually zeros acceleration for components with acceleration).

Reimplemented in UNavMovementComponent.

◆ TickComponent()

void UMovementComponent::TickComponent ( float  DeltaTime,
enum ELevelTick  TickType,
FActorComponentTickFunction ThisTickFunction 
)
overridevirtual

Function called every frame on this ActorComponent. Override this function to implement custom logic to be executed every frame. Only executes if the component is registered, and also PrimaryComponentTick.bCanEverTick must be set to true.

Parameters
DeltaTime- The time since the last tick.
TickType- The kind of tick this is, for example, are we paused, or 'simulating' in the editor
ThisTickFunction- Internal tick function struct that caused this to run

Reimplemented from UActorComponent.

Reimplemented in UCharacterMovementComponent.

◆ TwoWallAdjust()

void UMovementComponent::TwoWallAdjust ( FVector Delta,
const FHitResult Hit,
const FVector OldHitNormal 
) const
virtual

Compute a movement direction when contacting two surfaces.

Parameters
Delta[In] Amount of move attempted before impact. [Out] Computed adjustment based on impacts.
HitImpact from last attempted move
OldHitNormalNormal of impact before last attempted move
Returns
Result in Delta that is the direction to move when contacting two surfaces.

Reimplemented in UCharacterMovementComponent.

◆ UpdateComponentVelocity()

void UMovementComponent::UpdateComponentVelocity ( )
virtual

Update ComponentVelocity of UpdatedComponent. This needs to be called by derived classes at the end of an update whenever Velocity has changed.

◆ UpdateTickRegistration()

void UMovementComponent::UpdateTickRegistration ( )
virtual

Update tick registration state, determined by bAutoUpdateTickRegistration. Called by SetUpdatedComponent.

Member Data Documentation

◆ bAutoRegisterPhysicsVolumeUpdates

uint8 UMovementComponent::bAutoRegisterPhysicsVolumeUpdates

If true, then applies the value of bComponentShouldUpdatePhysicsVolume to the UpdatedComponent. If false, will not change bShouldUpdatePhysicsVolume on the UpdatedComponent at all.

See also
bComponentShouldUpdatePhysicsVolume

◆ bAutoRegisterUpdatedComponent

uint8 UMovementComponent::bAutoRegisterUpdatedComponent

If true, registers the owner's Root component as the UpdatedComponent if there is not one currently assigned.

◆ bAutoUpdateTickRegistration

uint8 UMovementComponent::bAutoUpdateTickRegistration

If true, whenever the updated component is changed, this component will enable or disable its tick dependent on whether it has something to update. This will NOT enable tick at startup if bAutoActivate is false, because presumably you have a good reason for not wanting it to start ticking initially.

◆ bComponentShouldUpdatePhysicsVolume

uint8 UMovementComponent::bComponentShouldUpdatePhysicsVolume

If true, enables bShouldUpdatePhysicsVolume on the UpdatedComponent during initialization from SetUpdatedComponent(), otherwise disables such updates. Only enabled if bAutoRegisterPhysicsVolumeUpdates is true. WARNING: UpdatePhysicsVolume is potentially expensive if overlap events are also disabled because it requires a separate query against all physics volumes in the world.

◆ bConstrainToPlane

uint8 UMovementComponent::bConstrainToPlane

If true, movement will be constrained to a plane.

See also
PlaneConstraintNormal, PlaneConstraintOrigin, PlaneConstraintAxisSetting

◆ bSnapToPlaneAtStart

uint8 UMovementComponent::bSnapToPlaneAtStart

If true and plane constraints are enabled, then the updated component will be snapped to the plane when first attached.

◆ bTickBeforeOwner

uint8 UMovementComponent::bTickBeforeOwner

If true, after registration we will add a tick dependency to tick before our owner (if we can both tick). This is important when our tick causes an update in the owner's position, so that when the owner ticks it uses the most recent position without lag. Disabling this can improve performance if both objects tick but the order of ticks doesn't matter.

◆ bUpdateOnlyIfRendered

uint8 UMovementComponent::bUpdateOnlyIfRendered

If true, skips TickComponent() if UpdatedComponent was not recently rendered.

◆ PlaneConstraintNormal

FVector UMovementComponent::PlaneConstraintNormal
protected

The normal or axis of the plane that constrains movement, if bConstrainToPlane is enabled. If for example you wanted to constrain movement to the X-Z plane (so that Y cannot change), the normal would be set to X=0 Y=1 Z=0. This is recalculated whenever PlaneConstraintAxisSetting changes. It is normalized once the component is registered with the game world.

See also
bConstrainToPlane, SetPlaneConstraintNormal(), SetPlaneConstraintFromVectors()

◆ PlaneConstraintOrigin

FVector UMovementComponent::PlaneConstraintOrigin
protected

The origin of the plane that constrains movement, if plane constraint is enabled. This defines the behavior of snapping a position to the plane, such as by SnapUpdatedComponentToPlane().

See also
bConstrainToPlane, SetPlaneConstraintOrigin().

The documentation for this class was generated from the following files: