UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
Chaos::TGeometryParticleHandleImp< T, d, bPersistent > Class Template Reference

#include <ParticleHandle.h>

+ Inheritance diagram for Chaos::TGeometryParticleHandleImp< T, d, bPersistent >:

Classes

struct  FInvalidFromTransient
 

Public Types

using FDynamicParticleHandleType = TPBDRigidParticleHandleImp< T, d, bPersistent >
 
using FKinematicParticleHandleType = TKinematicGeometryParticleHandleImp< T, d, bPersistent >
 
using TTransientHandle = TTransientGeometryParticleHandle< T, d >
 
using THandleBase = TParticleHandleBase< T, d >
 
using TSOAType = TGeometryParticles< T, d >
 
- Public Types inherited from Chaos::TParticleHandleBase< T, d >
using TType = T
 

Public Member Functions

template<typename TPayloadType >
TPayloadType GetPayload (int32 Idx)
 
 ~TGeometryParticleHandleImp ()
 
TGeometryParticleHandleImp< T, d, falseAsTransient ()
 
 TGeometryParticleHandleImp (const TGeometryParticleHandleImp &)=delete
 
const TVector< T, d > & X () const
 
TVector< T, d > & X ()
 
const TVector< T, d > & GetX () const
 
void SetX (const TVector< T, d > &InX, bool bInvalidate=false)
 
FUniqueIdx UniqueIdx () const
 
void SetUniqueIdx (const FUniqueIdx UniqueIdx, bool bInvalidate=false) const
 
const TRotation< T, d > R () const
 
TRotation< T, d > R ()
 
const TRotation< T, d > GetR () const
 
void SetR (const TRotation< T, d > &InR, bool bInvalidate=false)
 
const TRotation< FRealSingle, d > GetRf () const
 
void SetRf (const TRotation< FRealSingle, d > &InR, bool bInvalidate=false)
 
FRigidTransform3 GetTransformXR () const
 
void InitTransform (const FVec3 &InP, const FRotation3 &InQ)
 
void SetXR (const FParticlePositionRotation &XR)
 
void SetNonFrequentData (const FParticleNonFrequentData &InData)
 
bool HasCollision () const
 
void SetHasCollision (const bool bHasCollision)
 
ESyncState SyncState () const
 
void SetSyncState (ESyncState State)
 
const FImplicitObjectRef GetGeometry () const
 
void SetGeometry (const FImplicitObjectPtr &InGeometry)
 
void MergeGeometry (TArray< Chaos::FImplicitObjectPtr > &&Objects)
 
void LockGeometry ()
 
TSerializablePtr< FImplicitObjectGeometry () const
 
void SetGeometry (TSerializablePtr< FImplicitObject > InGeometry)
 
TSharedPtr< const FImplicitObject, ESPMode::ThreadSafeSharedGeometry () const
 
void SetSharedGeometry (TSharedPtr< const FImplicitObject, ESPMode::ThreadSafe > InGeometry)
 
const TSharedPtr< const FImplicitObject, ESPMode::ThreadSafe > & SharedGeometryLowLevel () const
 
const TUniquePtr< FImplicitObject > & DynamicGeometry () const
 
void SetDynamicGeometry (TUniquePtr< FImplicitObject > &&Unique)
 
const FShapesArrayShapesArray () const
 
const FShapeInstanceArrayShapeInstances () const
 
void RemoveShape (FPerShapeData *InShape)
 
void RemoveShapesAtSortedIndices (const TArrayView< const int32 > &InIndices)
 
const TAABB< T, d > & LocalBounds () const
 
void SetLocalBounds (const TAABB< T, d > &NewBounds)
 
const TVector< T, d > & CCDAxisThreshold () const
 
const TAABB< T, d > & WorldSpaceInflatedBounds () const
 
void UpdateWorldSpaceState (const FRigidTransform3 &WorldTransform, const FVec3 &BoundsExpansion)
 Update any cached state that depends on world-space transform This includes the world space bounds for the particle and all its shapes.
 
void UpdateWorldSpaceStateSwept (const FRigidTransform3 &WorldTransform, const FVec3 &BoundsExpansion, const FVec3 &DeltaX)
 Update any cached state that depends on world-space transform for a sweep between WorldTransform and WorldTransform + DeltaX.
 
bool HasBounds () const
 
void SetHasBounds (bool bHasBounds)
 
FSpatialAccelerationIdx SpatialIdx () const
 
void SetSpatialIdx (FSpatialAccelerationIdx Idx)
 
const FString & GetDebugName () const
 
EObjectStateType ObjectState () const
 
TGeometryParticle< T, d > * GTGeometryParticle () const
 
TGeometryParticle< T, d > *& GTGeometryParticle ()
 
const IPhysicsProxyBasePhysicsProxy () const
 
IPhysicsProxyBasePhysicsProxy ()
 
void SetPhysicsProxy (IPhysicsProxyBase *PhysicsProxy)
 
const TKinematicGeometryParticleHandleImp< T, d, bPersistent > * CastToKinematicParticle () const
 
TKinematicGeometryParticleHandleImp< T, d, bPersistent > * CastToKinematicParticle ()
 
const TPBDRigidParticleHandleImp< T, d, bPersistent > * CastToRigidParticle () const
 
TPBDRigidParticleHandleImp< T, d, bPersistent > * CastToRigidParticle ()
 
const TPBDRigidClusteredParticleHandleImp< T, d, bPersistent > * CastToClustered () const
 
TPBDRigidClusteredParticleHandleImp< T, d, bPersistent > * CastToClustered ()
 
const TPBDGeometryCollectionParticleHandleImp< T, d, bPersistent > * CastToGeometryCollection () const
 
TPBDGeometryCollectionParticleHandleImp< T, d, bPersistent > * CastToGeometryCollection ()
 
const TGeometryParticleHandle< T, d > * Handle () const
 
TGeometryParticleHandle< T, d > * Handle ()
 
int32 GetHandleIdx () const
 
bool Sleeping () const
 
template<typename Container >
const autoAuxilaryValue (const Container &AuxContainer) const
 
template<typename Container >
autoAuxilaryValue (Container &AuxContainer)
 
EResimType ResimType () const
 
void SetResimType (EResimType ResimType)
 
bool EnabledDuringResim () const
 
void SetEnabledDuringResim (bool bEnabledDuringResim)
 
bool LightWeightDisabled () const
 
void SetLightWeightDisabled (bool bLightWeightDisabled)
 
EGeometryParticleListMask ListMask () const
 
bool IsInAnyList (const EGeometryParticleListMask ListMask) const
 
bool IsInAllLists (const EGeometryParticleListMask ListMask) const
 
void AddToLists (const EGeometryParticleListMask ListMask)
 
void RemoveFromLists (const EGeometryParticleListMask ListMask)
 
void MoveToSOA (TGeometryParticles< T, d > &ToSOA)
 
FString ToString () const
 
void Serialize (FChaosArchive &Ar)
 
FWeakParticleHandleWeakParticleHandle ()
 
FConstraintHandleArrayParticleConstraints ()
 
const FConstraintHandleArrayParticleConstraints () const
 
void AddConstraintHandle (FConstraintHandle *InConstraintHandle)
 
void RemoveConstraintHandle (FConstraintHandle *InConstraintHandle)
 
FParticleCollisionsParticleCollisions ()
 
const FParticleCollisionsParticleCollisions () const
 
bool IsInConstraintGraph () const
 
Private::FPBDIslandParticleGetConstraintGraphNode () const
 
void SetConstraintGraphNode (Private::FPBDIslandParticle *InNode)
 
 UE_DEPRECATED (5.3, "Use GetConstraintGraphNode()") int32 ConstraintGraphIndex() const
 
 UE_DEPRECATED (5.3, "Use GetConstraintGraphNode()") void SetConstraintGraphIndex(const int32 InGraphIndex)
 
int32 GetPayload (int32 Idx)
 
int32 GetPayload (int32 Idx)
 
int32 GetPayload (int32 Idx)
 
int32 GetPayload (int32 Idx)
 
- Public Member Functions inherited from Chaos::TParticleHandleBase< T, d >
 TParticleHandleBase ()
 
template<typename TParticlesType >
 TParticleHandleBase (TSerializablePtr< TParticlesType > InParticles, int32 InParticleIdx)
 
 TParticleHandleBase (TGeometryParticles< T, d > *InParticles, int32 InParticleIdx)
 
 ~TParticleHandleBase ()
 
void Serialize (FChaosArchive &Ar)
 
void SetSOALowLevel (TGeometryParticles< T, d > *InParticles)
 
EParticleType GetParticleType () const
 

Static Public Member Functions

static TGeometryParticleHandleImp< T, d, bPersistent > * SerializationFactory (FChaosArchive &Ar, TGeometryParticleHandleImp< T, d, bPersistent > *Handle)
 
static TUniquePtr< TGeometryParticleHandleImp< T, d, bPersistent > > CreateParticleHandle (TSerializablePtr< TGeometryParticles< T, d > > InParticles, int32 InParticleIdx, int32 InHandleIdx, const FGeometryParticleParameters &Params=FGeometryParticleParameters())
 
static constexpr EParticleType StaticType ()
 

Public Attributes

TGeometryParticles< T, d > * GeometryParticles
 
int32 ParticleIdx
 
EParticleType Type
 

Static Public Attributes

static constexpr bool AlwaysSerializable = bPersistent
 
- Static Public Attributes inherited from Chaos::TParticleHandleBase< T, d >
static constexpr int D = d
 

Protected Member Functions

 TGeometryParticleHandleImp ()
 
 TGeometryParticleHandleImp (TSerializablePtr< TGeometryParticles< T, d > > InParticles, int32 InParticleIdx, int32 InHandleIdx, const FGeometryParticleParameters &Params)
 
 TGeometryParticleHandleImp (TGeometryParticles< T, d > *InParticles, const int32 InParticleIdx)
 

Static Protected Member Functions

template<typename TParticlesType , typename TParams >
static TUniquePtr< typename TParticlesType::THandleType > CreateParticleHandleHelper (TSerializablePtr< TParticlesType > InParticles, int32 InParticleIdx, int32 InHandleIdx, const TParams &Params)
 

Protected Attributes

friend TGeometryParticleHandles< T, d >
 
std::conditional_t< bPersistent, int32, FInvalidFromTransientHandleIdx
 
- Protected Attributes inherited from Chaos::TParticleHandleBase< T, d >
union { 
 
   TSerializablePtr< TGeometryParticles< T, d > >   SerializableGeometryParticles 
 
   TGeometryParticles< T, d > *   GeometryParticles 
 
   TKinematicGeometryParticles< T, d > *   KinematicGeometryParticles 
 
   TPBDRigidParticles< T, d > *   PBDRigidParticles 
 
   TPBDRigidClusteredParticles< T, d > *   PBDRigidClusteredParticles 
 
};  
 
int32 ParticleIdx
 
EParticleType Type
 

Friends

class TGeometryParticleHandleImp< T, d, false >
 
class TGeometryParticleHandleImp< T, d, true >
 
template<typename T2 , int d2>
TGeometryParticleHandle< T2, d2 > * GetHandleHelper (TTransientGeometryParticleHandle< T2, d2 > *Handle)
 
template<typename T2 , int d2>
const TGeometryParticleHandle< T2, d2 > * GetHandleHelper (const TTransientGeometryParticleHandle< T2, d2 > *Handle)
 

Member Typedef Documentation

◆ FDynamicParticleHandleType

template<typename T , int d, bool bPersistent>
using Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::FDynamicParticleHandleType = TPBDRigidParticleHandleImp<T, d, bPersistent>

◆ FKinematicParticleHandleType

template<typename T , int d, bool bPersistent>
using Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::FKinematicParticleHandleType = TKinematicGeometryParticleHandleImp<T, d, bPersistent>

◆ THandleBase

template<typename T , int d, bool bPersistent>
using Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::THandleBase = TParticleHandleBase<T, d>

◆ TSOAType

template<typename T , int d, bool bPersistent>
using Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::TSOAType = TGeometryParticles<T,d>

◆ TTransientHandle

template<typename T , int d, bool bPersistent>
using Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::TTransientHandle = TTransientGeometryParticleHandle<T, d>

Constructor & Destructor Documentation

◆ TGeometryParticleHandleImp() [1/4]

template<typename T , int d, bool bPersistent>
Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::TGeometryParticleHandleImp ( )
inlineprotected

◆ TGeometryParticleHandleImp() [2/4]

template<typename T , int d, bool bPersistent>
Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::TGeometryParticleHandleImp ( TSerializablePtr< TGeometryParticles< T, d > >  InParticles,
int32  InParticleIdx,
int32  InHandleIdx,
const FGeometryParticleParameters Params 
)
inlineprotected

◆ TGeometryParticleHandleImp() [3/4]

template<typename T , int d, bool bPersistent>
Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::TGeometryParticleHandleImp ( TGeometryParticles< T, d > *  InParticles,
const int32  InParticleIdx 
)
inlineprotected

◆ ~TGeometryParticleHandleImp()

template<typename T , int d, bool bPersistent>
Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::~TGeometryParticleHandleImp ( )
inline

◆ TGeometryParticleHandleImp() [4/4]

template<typename T , int d, bool bPersistent>
Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::TGeometryParticleHandleImp ( const TGeometryParticleHandleImp< T, d, bPersistent > &  )
delete

Member Function Documentation

◆ AddConstraintHandle()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::AddConstraintHandle ( FConstraintHandle InConstraintHandle)
inline

◆ AddToLists()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::AddToLists ( const EGeometryParticleListMask  ListMask)
inline

◆ AsTransient()

template<typename T , int d, bool bPersistent>
TGeometryParticleHandleImp< T, d, false > Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::AsTransient ( )
inline

◆ AuxilaryValue() [1/2]

template<typename T , int d, bool bPersistent>
template<typename Container >
const auto & Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::AuxilaryValue ( const Container AuxContainer) const
inline

◆ AuxilaryValue() [2/2]

template<typename T , int d, bool bPersistent>
template<typename Container >
auto & Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::AuxilaryValue ( Container AuxContainer)
inline

◆ CastToClustered() [1/2]

template<typename T , int d, bool bPersistent>
TPBDRigidClusteredParticleHandleImp< T, d, bPersistent > * Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::CastToClustered ( )

◆ CastToClustered() [2/2]

template<typename T , int d, bool bPersistent>
const TPBDRigidClusteredParticleHandleImp< T, d, bPersistent > * Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::CastToClustered ( ) const

◆ CastToGeometryCollection() [1/2]

template<typename T , int d, bool bPersistent>
TPBDGeometryCollectionParticleHandleImp< T, d, bPersistent > * Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::CastToGeometryCollection ( )

◆ CastToGeometryCollection() [2/2]

template<typename T , int d, bool bPersistent>
const TPBDGeometryCollectionParticleHandleImp< T, d, bPersistent > * Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::CastToGeometryCollection ( ) const

◆ CastToKinematicParticle() [1/2]

template<typename T , int d, bool bPersistent>
TKinematicGeometryParticleHandleImp< T, d, bPersistent > * Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::CastToKinematicParticle ( )

◆ CastToKinematicParticle() [2/2]

template<typename T , int d, bool bPersistent>
const TKinematicGeometryParticleHandleImp< T, d, bPersistent > * Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::CastToKinematicParticle ( ) const

◆ CastToRigidParticle() [1/2]

template<typename T , int d, bool bPersistent>
TPBDRigidParticleHandleImp< T, d, bPersistent > * Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::CastToRigidParticle ( )

◆ CastToRigidParticle() [2/2]

template<typename T , int d, bool bPersistent>
const TPBDRigidParticleHandleImp< T, d, bPersistent > * Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::CastToRigidParticle ( ) const

◆ CCDAxisThreshold()

template<typename T , int d, bool bPersistent>
const TVector< T, d > & Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::CCDAxisThreshold ( ) const
inline

◆ CreateParticleHandle()

template<typename T , int d, bool bPersistent>
static TUniquePtr< TGeometryParticleHandleImp< T, d, bPersistent > > Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::CreateParticleHandle ( TSerializablePtr< TGeometryParticles< T, d > >  InParticles,
int32  InParticleIdx,
int32  InHandleIdx,
const FGeometryParticleParameters Params = FGeometryParticleParameters() 
)
inlinestatic

◆ CreateParticleHandleHelper()

template<typename T , int d, bool bPersistent>
template<typename TParticlesType , typename TParams >
static TUniquePtr< typename TParticlesType::THandleType > Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::CreateParticleHandleHelper ( TSerializablePtr< TParticlesType InParticles,
int32  InParticleIdx,
int32  InHandleIdx,
const TParams &  Params 
)
inlinestaticprotected

◆ DynamicGeometry()

template<typename T , int d, bool bPersistent>
const TUniquePtr< FImplicitObject > & Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::DynamicGeometry ( ) const
inline

◆ EnabledDuringResim()

template<typename T , int d, bool bPersistent>
bool Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::EnabledDuringResim ( ) const
inline

◆ Geometry()

template<typename T , int d, bool bPersistent>
TSerializablePtr< FImplicitObject > Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::Geometry ( ) const
inline

◆ GetConstraintGraphNode()

template<typename T , int d, bool bPersistent>
Private::FPBDIslandParticle * Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::GetConstraintGraphNode ( ) const
inline

◆ GetDebugName()

template<typename T , int d, bool bPersistent>
const FString & Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::GetDebugName ( ) const
inline

◆ GetGeometry()

template<typename T , int d, bool bPersistent>
const FImplicitObjectRef Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::GetGeometry ( ) const
inline

◆ GetHandleIdx()

template<typename T , int d, bool bPersistent>
int32 Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::GetHandleIdx ( ) const
inline

◆ GetPayload() [1/5]

int32 Chaos::TGeometryParticleHandleImp< FReal, 3, true >::GetPayload< int32 > ( int32  Idx)

◆ GetPayload() [2/5]

◆ GetPayload() [3/5]

template<typename T , int d, bool bPersistent>
template<typename TPayloadType >
TPayloadType Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::GetPayload ( int32  Idx)
inline

◆ GetPayload() [4/5]

int32 Chaos::TGeometryParticleHandleImp< FReal, 3, true >::GetPayload< int32 > ( int32  Idx)

◆ GetPayload() [5/5]

◆ GetR()

template<typename T , int d, bool bPersistent>
const TRotation< T, d > Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::GetR ( ) const
inline

◆ GetRf()

template<typename T , int d, bool bPersistent>
const TRotation< FRealSingle, d > Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::GetRf ( ) const
inline

◆ GetTransformXR()

template<typename T , int d, bool bPersistent>
FRigidTransform3 Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::GetTransformXR ( ) const
inline

◆ GetX()

template<typename T , int d, bool bPersistent>
const TVector< T, d > & Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::GetX ( ) const
inline

◆ GTGeometryParticle() [1/2]

template<typename T , int d, bool bPersistent>
TGeometryParticle< T, d > *& Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::GTGeometryParticle ( )
inline

◆ GTGeometryParticle() [2/2]

template<typename T , int d, bool bPersistent>
TGeometryParticle< T, d > * Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::GTGeometryParticle ( ) const
inline

◆ Handle() [1/2]

template<typename T , int d, bool bPersistent>
TGeometryParticleHandle< T, d > * Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::Handle ( )
inline

◆ Handle() [2/2]

template<typename T , int d, bool bPersistent>
const TGeometryParticleHandle< T, d > * Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::Handle ( ) const
inline

◆ HasBounds()

template<typename T , int d, bool bPersistent>
bool Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::HasBounds ( ) const
inline

◆ HasCollision()

template<typename T , int d, bool bPersistent>
bool Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::HasCollision ( ) const
inline

◆ InitTransform()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::InitTransform ( const FVec3 InP,
const FRotation3 InQ 
)
inline

◆ IsInAllLists()

template<typename T , int d, bool bPersistent>
bool Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::IsInAllLists ( const EGeometryParticleListMask  ListMask) const
inline

◆ IsInAnyList()

template<typename T , int d, bool bPersistent>
bool Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::IsInAnyList ( const EGeometryParticleListMask  ListMask) const
inline

◆ IsInConstraintGraph()

template<typename T , int d, bool bPersistent>
bool Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::IsInConstraintGraph ( ) const
inline

◆ LightWeightDisabled()

template<typename T , int d, bool bPersistent>
bool Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::LightWeightDisabled ( ) const
inline

◆ ListMask()

template<typename T , int d, bool bPersistent>
EGeometryParticleListMask Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::ListMask ( ) const
inline

◆ LocalBounds()

template<typename T , int d, bool bPersistent>
const TAABB< T, d > & Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::LocalBounds ( ) const
inline

◆ LockGeometry()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::LockGeometry ( )

◆ MergeGeometry()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::MergeGeometry ( TArray< Chaos::FImplicitObjectPtr > &&  Objects)

◆ MoveToSOA()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::MoveToSOA ( TGeometryParticles< T, d > &  ToSOA)
inline

◆ ObjectState()

template<typename T , int d, bool bPersistent>
EObjectStateType Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::ObjectState ( ) const

◆ ParticleCollisions() [1/2]

template<typename T , int d, bool bPersistent>
FParticleCollisions & Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::ParticleCollisions ( )
inline

◆ ParticleCollisions() [2/2]

template<typename T , int d, bool bPersistent>
const FParticleCollisions & Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::ParticleCollisions ( ) const
inline

◆ ParticleConstraints() [1/2]

template<typename T , int d, bool bPersistent>
FConstraintHandleArray & Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::ParticleConstraints ( )
inline

◆ ParticleConstraints() [2/2]

template<typename T , int d, bool bPersistent>
const FConstraintHandleArray & Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::ParticleConstraints ( ) const
inline

◆ PhysicsProxy() [1/2]

template<typename T , int d, bool bPersistent>
IPhysicsProxyBase * Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::PhysicsProxy ( )
inline

◆ PhysicsProxy() [2/2]

template<typename T , int d, bool bPersistent>
const IPhysicsProxyBase * Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::PhysicsProxy ( ) const
inline

◆ R() [1/2]

template<typename T , int d, bool bPersistent>
TRotation< T, d > Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::R ( )
inline

◆ R() [2/2]

template<typename T , int d, bool bPersistent>
const TRotation< T, d > Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::R ( ) const
inline

◆ RemoveConstraintHandle()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::RemoveConstraintHandle ( FConstraintHandle InConstraintHandle)
inline

◆ RemoveFromLists()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::RemoveFromLists ( const EGeometryParticleListMask  ListMask)
inline

◆ RemoveShape()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::RemoveShape ( FPerShapeData InShape)

◆ RemoveShapesAtSortedIndices()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::RemoveShapesAtSortedIndices ( const TArrayView< const int32 > &  InIndices)

◆ ResimType()

template<typename T , int d, bool bPersistent>
EResimType Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::ResimType ( ) const
inline

◆ SerializationFactory()

template<typename T , int d, bool bPersistent>
TGeometryParticleHandleImp< T, d, bPersistent > * Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SerializationFactory ( FChaosArchive Ar,
TGeometryParticleHandleImp< T, d, bPersistent > *  Handle 
)
static

◆ Serialize()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::Serialize ( FChaosArchive Ar)
inline

◆ SetConstraintGraphNode()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SetConstraintGraphNode ( Private::FPBDIslandParticle InNode)
inline

◆ SetDynamicGeometry()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SetDynamicGeometry ( TUniquePtr< FImplicitObject > &&  Unique)
inline

◆ SetEnabledDuringResim()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SetEnabledDuringResim ( bool  bEnabledDuringResim)
inline

◆ SetGeometry() [1/2]

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SetGeometry ( const FImplicitObjectPtr InGeometry)
inline

◆ SetGeometry() [2/2]

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SetGeometry ( TSerializablePtr< FImplicitObject InGeometry)
inline

◆ SetHasBounds()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SetHasBounds ( bool  bHasBounds)
inline

◆ SetHasCollision()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SetHasCollision ( const bool  bHasCollision)
inline

◆ SetLightWeightDisabled()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SetLightWeightDisabled ( bool  bLightWeightDisabled)
inline

◆ SetLocalBounds()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SetLocalBounds ( const TAABB< T, d > &  NewBounds)
inline

◆ SetNonFrequentData()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SetNonFrequentData ( const FParticleNonFrequentData InData)
inline

◆ SetPhysicsProxy()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SetPhysicsProxy ( IPhysicsProxyBase PhysicsProxy)
inline

◆ SetR()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SetR ( const TRotation< T, d > &  InR,
bool  bInvalidate = false 
)
inline

◆ SetResimType()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SetResimType ( EResimType  ResimType)
inline

◆ SetRf()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SetRf ( const TRotation< FRealSingle, d > &  InR,
bool  bInvalidate = false 
)
inline

◆ SetSharedGeometry()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SetSharedGeometry ( TSharedPtr< const FImplicitObject, ESPMode::ThreadSafe InGeometry)
inline

◆ SetSpatialIdx()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SetSpatialIdx ( FSpatialAccelerationIdx  Idx)
inline

◆ SetSyncState()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SetSyncState ( ESyncState  State)
inline

◆ SetUniqueIdx()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SetUniqueIdx ( const FUniqueIdx  UniqueIdx,
bool  bInvalidate = false 
) const
inline

◆ SetX()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SetX ( const TVector< T, d > &  InX,
bool  bInvalidate = false 
)
inline

◆ SetXR()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SetXR ( const FParticlePositionRotation XR)

◆ ShapeInstances()

template<typename T , int d, bool bPersistent>
const FShapeInstanceArray & Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::ShapeInstances ( ) const
inline

◆ ShapesArray()

template<typename T , int d, bool bPersistent>
const FShapesArray & Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::ShapesArray ( ) const
inline

◆ SharedGeometry()

template<typename T , int d, bool bPersistent>
TSharedPtr< const FImplicitObject, ESPMode::ThreadSafe > Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SharedGeometry ( ) const
inline

◆ SharedGeometryLowLevel()

template<typename T , int d, bool bPersistent>
const TSharedPtr< const FImplicitObject, ESPMode::ThreadSafe > & Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SharedGeometryLowLevel ( ) const
inline

◆ Sleeping()

template<typename T , int d, bool bPersistent>
bool Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::Sleeping ( ) const
inline

◆ SpatialIdx()

template<typename T , int d, bool bPersistent>
FSpatialAccelerationIdx Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SpatialIdx ( ) const
inline

◆ StaticType()

template<typename T , int d, bool bPersistent>
static constexpr EParticleType Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::StaticType ( )
inlinestaticconstexpr

◆ SyncState()

template<typename T , int d, bool bPersistent>
ESyncState Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::SyncState ( ) const
inline

◆ ToString()

template<typename T , int d, bool bPersistent>
FString Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::ToString ( ) const

◆ UE_DEPRECATED() [1/2]

template<typename T , int d, bool bPersistent>
Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::UE_DEPRECATED ( 5.  3,
"Use GetConstraintGraphNode()"   
) const
inline

◆ UE_DEPRECATED() [2/2]

template<typename T , int d, bool bPersistent>
Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::UE_DEPRECATED ( 5.  3,
"Use GetConstraintGraphNode()"   
) const
inline

◆ UniqueIdx()

template<typename T , int d, bool bPersistent>
FUniqueIdx Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::UniqueIdx ( ) const
inline

◆ UpdateWorldSpaceState()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::UpdateWorldSpaceState ( const FRigidTransform3 WorldTransform,
const FVec3 BoundsExpansion 
)
inline

Update any cached state that depends on world-space transform This includes the world space bounds for the particle and all its shapes.

◆ UpdateWorldSpaceStateSwept()

template<typename T , int d, bool bPersistent>
void Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::UpdateWorldSpaceStateSwept ( const FRigidTransform3 WorldTransform,
const FVec3 BoundsExpansion,
const FVec3 DeltaX 
)
inline

Update any cached state that depends on world-space transform for a sweep between WorldTransform and WorldTransform + DeltaX.

Parameters
WorldTransformThe transform at the end of the sweep
BoundsExpansionA uniform expansion applied to the bounds of the particle, but not the individual shapes
DeltaXA directional expansion applied to the bounds of the particle, but not the individual shapes This includes the world space bounds for the particle and all its shapes. If DeltaX is not zero, the bounds will be equivalent to a union of the bounds at WorldTransform and WorldTransform + DeltaX.

◆ WeakParticleHandle()

template<typename T , int d, bool bPersistent>
FWeakParticleHandle & Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::WeakParticleHandle ( )
inline

◆ WorldSpaceInflatedBounds()

template<typename T , int d, bool bPersistent>
const TAABB< T, d > & Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::WorldSpaceInflatedBounds ( ) const
inline

◆ X() [1/2]

template<typename T , int d, bool bPersistent>
TVector< T, d > & Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::X ( )
inline

◆ X() [2/2]

template<typename T , int d, bool bPersistent>
const TVector< T, d > & Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::X ( ) const
inline

Friends And Related Symbol Documentation

◆ GetHandleHelper [1/2]

template<typename T , int d, bool bPersistent>
template<typename T2 , int d2>
const TGeometryParticleHandle< T2, d2 > * GetHandleHelper ( const TTransientGeometryParticleHandle< T2, d2 > *  Handle)
friend

◆ GetHandleHelper [2/2]

template<typename T , int d, bool bPersistent>
template<typename T2 , int d2>
TGeometryParticleHandle< T2, d2 > * GetHandleHelper ( TTransientGeometryParticleHandle< T2, d2 > *  Handle)
friend

◆ TGeometryParticleHandleImp< T, d, false >

template<typename T , int d, bool bPersistent>
friend class TGeometryParticleHandleImp< T, d, false >
friend

◆ TGeometryParticleHandleImp< T, d, true >

template<typename T , int d, bool bPersistent>
friend class TGeometryParticleHandleImp< T, d, true >
friend

Member Data Documentation

◆ AlwaysSerializable

template<typename T , int d, bool bPersistent>
constexpr bool Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::AlwaysSerializable = bPersistent
staticconstexpr

◆ GeometryParticles

template<typename T , int d, bool bPersistent>
TGeometryParticles<T, d>* Chaos::TParticleHandleBase< T, d >::GeometryParticles

◆ HandleIdx

template<typename T , int d, bool bPersistent>
std::conditional_t<bPersistent, int32, FInvalidFromTransient> Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::HandleIdx
protected

◆ ParticleIdx

template<typename T , int d, bool bPersistent>
int32 Chaos::TParticleHandleBase< T, d >::ParticleIdx

◆ TGeometryParticleHandles< T, d >

template<typename T , int d, bool bPersistent>
friend Chaos::TGeometryParticleHandleImp< T, d, bPersistent >::TGeometryParticleHandles< T, d >
protected

◆ Type

template<typename T , int d, bool bPersistent>
EParticleType Chaos::TParticleHandleBase< T, d >::Type

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