| FPhysicsSolverBase
|
Module |
|
Header |
/Engine/Source/Runtime/Experimental/Chaos/Public/Chaos/Framework/PhysicsSolverBase.h |
Include |
#include "Chaos/Framework/PhysicsSolverBase.h" |
class FPhysicsSolverBase
Name | Description | ||
---|---|---|---|
|
BufferMode |
Mode that the results buffers should be set to (single, double, triple) |
|
|
bUseCollisionResimCache |
||
|
ContactModifiers |
||
|
EventPostSolve |
||
|
EventPreBuffer |
||
|
EventPreSolve |
Storage for events, see the Add/Remove pairs above for event timings |
|
|
MarshallingManager |
||
|
TUniquePtr< IRe... |
MRewindCallback |
|
|
TUniquePtr< FRe... |
MRewindData |
|
|
TUniquePtr< FPe... |
PendingSpatialOperations_External |
The spatial operations not yet consumed by the internal sim. Use this to ensure any GT operations are seen immediately. |
|
PendingTasks |
||
|
TUniquePtr< FCh... |
PullResultsManager |
|
|
SimCallbackObjects |
||
|
ThreadingMode |
Name | Description | |
---|---|---|
|
FPhysicsSolverBase() |
|
|
FPhysicsSolverBase ( |
|
|
FPhysicsSolverBase ( |
|
|
FPhysicsSolverBase ( |
Protected construction so callers still have to go through the module to create new instances |
Name | Description | |
---|---|---|
|
~FPhysicsSolverBase() |
Only allow construction with valid parameters as well as restricting to module construction |
Name | Description | ||
---|---|---|---|
|
AddDirtyProxiesUnsafe ( |
Batch dirty proxies without checking DirtyIdx. |
|
|
AddDirtyProxy ( |
||
|
AddDirtyProxyShape ( |
||
|
FDelegateHan... |
AddPostAdvanceCallback ( |
Post advance happens after all processing and results generation has been completed |
|
FDelegateHan... |
AddPreAdvanceCallback ( |
Events Pre advance is called before any physics processing or simulation happens in a given physics update |
|
FDelegateHan... |
AddPreBufferCallback ( |
Pre buffer happens after the simulation has been advanced (particle positions etc. will have been updated) but GT results haven't been prepared yet |
|
FGraphEventR... |
AdvanceAndDispatch_External ( |
|
|
AdvanceSolverBy ( |
||
|
ApplyCallbacks_Internal |
||
|
AreAnyTasksPending() |
||
|
FPBDRigidsSo... |
CastChecked() |
|
|
CastHelper ( |
||
|
ChangeBufferMode ( |
||
|
ClearGTParticle_External ( |
||
|
ConditionalApplyRewind_Internal() |
||
|
TSimCallback... |
CreateAndRegisterSimCallbackObject_External ( |
Creates a new sim callback object of the type given. |
|
DestroySolver ( |
||
|
DisableAsyncMode() |
||
|
EnableAsyncMode ( |
||
|
EnableRewindCapture ( |
||
|
EnqueueCommandImmediate ( |
||
|
FinalizeCallbackData_Internal() |
||
|
FPhysicsScen... |
GetExternalDataLock_External() |
Get the lock used for external data manipulation. |
|
FChaosMarsha... |
GetMarshallingManager() |
|
|
const UObjec... |
GetOwner() |
|
|
GetPhysicsResultsTime_External() |
Returns the time used by physics results. If fixed dt is used this will be the interpolated time |
|
|
IRewindCallb... |
GetRewindCallback() |
|
|
FRewindData ... |
GetRewindData() |
|
|
EThreadingMo... |
GetThreadingMode() |
|
|
IsPaused_External() |
||
|
IsPendingTasksComplete() |
||
|
IsShuttingDown() |
||
|
IsUsingAsyncResults() |
||
|
IsUsingFixedDt() |
||
|
MarkShuttingDown() |
||
|
PopAndExecuteStolenAdvanceTask_ForTesting() |
||
|
ProcessPushedData_Internal ( |
||
|
PullPhysicsStateForEachDirtyProxy_External ( |
Pulls physics state for each dirty particle and allows caller to do additional work if needed. |
|
|
PushPhysicsState |
||
|
RegisterSimOneShotCallback ( |
||
|
RemoveDirtyProxy ( |
||
|
RemovePostAdvanceCallback ( |
||
|
RemovePreAdvanceCallback ( |
||
|
RemovePreBufferCallback ( |
||
|
SetExternalTimestampConsumed_Internal ( |
||
|
SetIsPaused_External ( |
||
|
SetNumDirtyShapes ( |
||
|
SetOwner ( |
||
|
SetRewindCallback ( |
||
|
SetStealAdvanceTasks_ForTesting ( |
||
|
SetThreadingMode_External ( |
||
|
TrackGTParticle_External ( |
||
|
FGeometryPar... |
UniqueIdxToGTParticle_External ( |
Used as helper for GT to go from unique idx back to gt particle If GT deletes a particle, this function will return null (that's a good thing when consuming async outputs as GT may have already deleted the particle we care about) In this case instead of getting a nullptr you will get an unrelated (wrong) GT particle Because of this we keep the index alive for as long as the async callback can lag behind. |
|
UnregisterAndFreeSimCallbackObject_External ( |
||
|
UpdateParticleInAccelerationStructure_External ( |
||
|
WaitOnPendingTasks_External() |
Ensures that any running tasks finish. |
Name | Description | ||
---|---|---|---|
|
FPhysicsSolv... |
operator= ( |
|
|
FPhysicsSolv... |
operator= ( |