UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
CharacterGroundConstraintProxy.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2#pragma once
3
5
6namespace Chaos
7{
8 class FCharacterGroundConstraint;
9 class FCharacterGroundConstraintHandle;
10 class FDirtyChaosProperties;
11 struct FDirtyCharacterGroundConstraintData;
12 class FDirtyPropertiesManager;
13 class FPBDRigidsSolver;
14
18 {
19 public:
21
23
26
27 FCharacterGroundConstraint* GetGameThreadAPI() { return Constraint_GT; }
28 const FCharacterGroundConstraint* GetGameThreadAPI() const { return Constraint_GT; }
29
31 const FCharacterGroundConstraintHandle* GetPhysicsThreadAPI() const { return Constraint_PT; }
32
35
38
41
44
47
50
53
54 virtual void* GetHandleUnsafe() const override { return Constraint_PT; }
55
58
61
64
65 private:
66 FCharacterGroundConstraint* Constraint_GT;
68 bool bInitialized = false;
69 };
70
71} // namespace Chaos
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
Definition CharacterGroundConstraintContainer.h:35
Definition CharacterGroundConstraintProxy.h:18
CHAOS_API void BufferPhysicsResults(FDirtyCharacterGroundConstraintData &Buffer)
Manage Output Data.
Definition CharacterGroundConstraintProxy.cpp:140
const FCharacterGroundConstraintHandle * GetPhysicsThreadAPI() const
Definition CharacterGroundConstraintProxy.h:31
CHAOS_API void InitializeOnPhysicsThread(FPBDRigidsSolver *InSolver, FDirtyPropertiesManager &Manager, int32 DataIdx, FDirtyChaosProperties &RemoteData)
State Management.
Definition CharacterGroundConstraintProxy.cpp:42
virtual void * GetHandleUnsafe() const override
IPhysicsProxyBase Implementation.
Definition CharacterGroundConstraintProxy.h:54
CHAOS_API void PushStateOnPhysicsThread(FPBDRigidsSolver *InSolver, const FDirtyPropertiesManager &Manager, int32 DataIdx, const FDirtyChaosProperties &RemoteData)
Reads changed data from the game thread constraint into the physics thread constraint via the remote ...
Definition CharacterGroundConstraintProxy.cpp:76
FCharacterGroundConstraintHandle * GetPhysicsThreadAPI()
Definition CharacterGroundConstraintProxy.h:30
const FCharacterGroundConstraint * GetGameThreadAPI() const
Definition CharacterGroundConstraintProxy.h:28
CHAOS_API bool PullFromPhysicsState(const FDirtyCharacterGroundConstraintData &Buffer, const int32 SolverSyncTimestamp)
Write the output constraint data from the buffer to the game thread.
Definition CharacterGroundConstraintProxy.cpp:180
CHAOS_API void PushStateOnGameThread(FDirtyPropertiesManager &Manager, int32 DataIdx, FDirtyChaosProperties &RemoteData)
Pushes any changed data from the game thread constraint to the remote data.
Definition CharacterGroundConstraintProxy.cpp:103
FCharacterGroundConstraint * GetGameThreadAPI()
Member Access.
Definition CharacterGroundConstraintProxy.h:27
CHAOS_API void DestroyOnGameThread()
Deletes the game thread constraint.
Definition CharacterGroundConstraintProxy.cpp:111
CHAOS_API void DestroyOnPhysicsThread(FPBDRigidsSolver *InSolver)
Removes references to the physics thread constraint and deletes it.
Definition CharacterGroundConstraintProxy.cpp:120
Definition CharacterGroundConstraint.h:19
Definition ParticleDirtyFlags.h:1129
Definition ParticleDirtyFlags.h:1039
Definition PBDRigidsSolver.h:84
Definition PhysicsProxyBase.h:97
Definition Object.h:95
Definition SkeletalMeshComponent.h:307
FPBDRigidsSolver FPBDRigidsSolver
Definition PBDRigidsEvolutionFwd.h:15
Definition PullPhysicsDataImp.h:153