Navigation
API > API/Runtime > API/Runtime/Chaos
FShapeInstanceProxy NOTE: FShapeInstanceProxy is a Game-Thread object. See FShapeInstance for the physics-thread equivalent
FShapeInstanceProxy contains the per-shape data associated with a single shape on a particle. This contains data like the collision / query filters, material properties etc.
Every particle holds one FShapeInstanceProxy object for each geometry they use. If the particle has a Union of geometries there will be one FShapeInstanceProxy for each geometry in the union. (Except ClusteredUnions - these are not flattened because they contain their own query acceleration structure.)
NOTE: keep size to a minimum. There can be millions of these in s scene.
| Name | FShapeInstanceProxy |
| Type | class |
| Header File | /Engine/Source/Runtime/Experimental/Chaos/Public/Chaos/ShapeInstance.h |
| Include Path | #include "Chaos/ShapeInstance.h" |
Syntax
class FShapeInstanceProxy : public Chaos::FPerShapeData
Inheritance Hierarchy
- FPerShapeData → FShapeInstanceProxy
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FShapeInstanceProxy
(
int32 InShapeIdx |
Chaos/ShapeInstance.h | ||
FShapeInstanceProxy
(
int32 InShapeIdx, |
Chaos/ShapeInstance.h | ||
FShapeInstanceProxy
(
int32 InShapeIdx, |
Chaos/ShapeInstance.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
const FCollisionData & GetCollisionData() |
Chaos/ShapeInstance.h | ||
EChaosCollisionTraceFlag GetCollisionTraceType() |
Chaos/ShapeInstance.h | ||
const Filter::FCombinedShapeFilterData GetCombinedShapeFilterData() |
Chaos/ShapeInstance.h | ||
const FShapeDirtyFlags GetDirtyFlags() |
Chaos/ShapeInstance.h | ||
const Filter::FInstanceData GetFilterInstanceData() |
Chaos/ShapeInstance.h | ||
bool GetIsProbe() |
Chaos/ShapeInstance.h | ||
const FImplicitObject * GetLeafGeometry() |
The leaf shape (with transformed and implicit wrapper removed). | Chaos/ShapeInstance.h | |
FRigidTransform3 GetLeafRelativeTransform() |
The actor-relative transform of the leaf geometry. | Chaos/ShapeInstance.h | |
FRigidTransform3 GetLeafWorldTransform
(
const FGeometryParticleHandle* Particle |
The world-space transform of the leaf geometry. | Chaos/ShapeInstance.h | |
const FMaterialHandle & GetMaterial
(
const int32 Index |
Chaos/ShapeInstance.h | ||
const FMaterialData & GetMaterialData() |
Chaos/ShapeInstance.h | ||
const TArray< FMaterialHandle > & GetMaterialMaskMapMaterials() |
Chaos/ShapeInstance.h | ||
const TArray< uint32 > & GetMaterialMaskMaps() |
Chaos/ShapeInstance.h | ||
const TArray< FMaterialMaskHandle > & GetMaterialMasks() |
Chaos/ShapeInstance.h | ||
const TArray< FMaterialHandle > & GetMaterials() |
Chaos/ShapeInstance.h | ||
const FCollisionFilterData & GetQueryData() |
Chaos/ShapeInstance.h | ||
bool GetQueryEnabled() |
Chaos/ShapeInstance.h | ||
const Filter::FShapeFilterData GetShapeFilterData() |
Chaos/ShapeInstance.h | ||
const FCollisionFilterData & GetSimData() |
Chaos/ShapeInstance.h | ||
bool GetSimEnabled() |
Chaos/ShapeInstance.h | ||
void * GetUserData() |
Chaos/ShapeInstance.h | ||
void ModifyMaterialMaskMapMaterials
(
const Lambda& LambdaFunc |
Chaos/ShapeInstance.h | ||
void ModifyMaterialMaskMaps
(
const Lambda& LambdaFunc |
Chaos/ShapeInstance.h | ||
void ModifyMaterialMasks
(
const Lambda& LambdaFunc |
Chaos/ShapeInstance.h | ||
void ModifyMaterials
(
const Lambda& LambdaFunc |
Chaos/ShapeInstance.h | ||
void ModifySimData
(
const Lambda& LambdaFunc |
Chaos/ShapeInstance.h | ||
int32 NumMaterials() |
Chaos/ShapeInstance.h | ||
void SetCollisionData
(
const FCollisionData& Data |
Chaos/ShapeInstance.h | ||
void SetCollisionTraceType
(
const EChaosCollisionTraceFlag InTraceFlag |
Chaos/ShapeInstance.h | ||
void SetCombinedShapeFilterData
(
const Filter::FCombinedShapeFilterData& InCombinedShapeFilter |
Chaos/ShapeInstance.h | ||
void SetFilterInstanceData
(
const Filter::FInstanceData& InInstanceData |
Chaos/ShapeInstance.h | ||
void SetIsProbe
(
const bool bIsProbe |
Chaos/ShapeInstance.h | ||
void SetMaterial
(
FMaterialHandle InMaterial |
Chaos/ShapeInstance.h | ||
void SetMaterialData
(
const FMaterialData& Data |
Chaos/ShapeInstance.h | ||
void SetMaterialMaskMapMaterials
(
const TArray< FMaterialHandle >& InMaterialMaskMapMaterials |
Chaos/ShapeInstance.h | ||
void SetMaterialMaskMaps
(
const TArray< uint32 >& InMaterialMaskMaps |
Chaos/ShapeInstance.h | ||
void SetMaterialMasks
(
const TArray< FMaterialMaskHandle >& InMaterialMasks |
Chaos/ShapeInstance.h | ||
void SetMaterials
(
TArray< FMaterialHandle >&& InMaterials |
Chaos/ShapeInstance.h | ||
void SetMaterials
(
const TArray< FMaterialHandle >& InMaterials |
Chaos/ShapeInstance.h | ||
void SetProxy
(
IPhysicsProxyBase* InProxy |
Chaos/ShapeInstance.h | ||
void SetQueryData
(
const FCollisionFilterData& InQueryData |
Chaos/ShapeInstance.h | ||
void SetQueryEnabled
(
const bool bEnable |
Chaos/ShapeInstance.h | ||
void SetShapeFilterData
(
const Filter::FShapeFilterData& InShapeFilter |
Chaos/ShapeInstance.h | ||
void SetSimData
(
const FCollisionFilterData& InSimData |
Chaos/ShapeInstance.h | ||
void SetSimEnabled
(
const bool bEnable |
Chaos/ShapeInstance.h | ||
void SetUserData
(
void* InUserData |
Chaos/ShapeInstance.h | ||
void SyncRemoteData
(
FDirtyPropertiesManager& Manager, |
Chaos/ShapeInstance.h | ||
void UpdateLeafWorldTransform
(
FGeometryParticleHandle* Particle |
Chaos/ShapeInstance.h | ||
void UpdateShapeBounds
(
const FRigidTransform3& WorldTM |
Chaos/ShapeInstance.h | ||
void UpdateWorldSpaceState
(
const FRigidTransform3& WorldTransform |
Chaos/ShapeInstance.h |
Protected
Overridden from FPerShapeData
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void SerializeMaterials
(
FChaosArchive& Ar |
Chaos/ShapeInstance.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static TUniquePtr< FShapeInstanceProxy > Make
(
int32 InShapeIdx, |
Chaos/ShapeInstance.h | ||
static TUniquePtr< FShapeInstanceProxy > Make
(
int32 InShapeIdx, |
Chaos/ShapeInstance.h | ||
static FShapeInstanceProxy * SerializationFactory
(
FChaosArchive& Ar, |
Chaos/ShapeInstance.h | ||
static void UpdateGeometry
(
TUniquePtr< FShapeInstanceProxy >& InOutShapePtr, |
Chaos/ShapeInstance.h | ||
static void UpdateGeometry
(
TUniquePtr< FShapeInstanceProxy >& InOutShapePtr, |
Chaos/ShapeInstance.h |