UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
GeometryCollectionCollisionStructureManager.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
10
11namespace Chaos { class FErrorReporter; }
12
13namespace Chaos
14{
15 class FTriangleMesh;
16 class FLevelSet;
17
18 template <typename T, int d>
19 class TParticles;
21}
22
23
24
26{
27public:
30
34
42 const Chaos::FParticles& Vertices,
43 const Chaos::FTriangleMesh& TriMesh,
44 const Chaos::FImplicitObject* Implicit,
46
53 const TManagedArray<int32>& BoneMap,
54 const ECollisionTypeEnum CollisionType,
55 Chaos::FTriangleMesh& TriMesh,
56 const float CollisionParticlesFraction);
57
63 FImplicit* Implicit,
64 const ECollisionTypeEnum CollisionType);
65
84 const Chaos::FTriangleMesh& TriMesh,
85 const FBox& CollisionBounds,
86 const Chaos::FReal Radius,
87 const int32 MinRes,
88 const int32 MaxRes,
89 const float CollisionObjectReduction,
90 const ECollisionTypeEnum CollisionType,
91 const EImplicitTypeEnum ImplicitType);
92
94 const FBox& CollisionBounds,
95 const float CollisionObjectReduction,
96 const ECollisionTypeEnum CollisionType);
97
99 const Chaos::FReal Radius,
100 const float CollisionObjectReduction,
101 const ECollisionTypeEnum CollisionType);
102
104 const Chaos::FReal Radius,
105 const Chaos::FReal Length,
106 const float CollisionObjectReduction,
107 const ECollisionTypeEnum CollisionType);
108
110 const FBox& CollisionBounds,
111 const float CollisionObjectReduction,
112 const ECollisionTypeEnum CollisionType);
113
117 const ECollisionTypeEnum CollisionType,
119 const Chaos::FReal CollisionMarginFraction,
120 const float CollisionObjectReduction);
121
125 const Chaos::FTriangleMesh& TriMesh,
126 const FBox& CollisionBounds,
127 const int32 MinRes,
128 const int32 MaxRes,
129 const float CollisionObjectReduction,
130 const ECollisionTypeEnum CollisionType);
131
135 const Chaos::FTriangleMesh& TriMesh,
136 const FBox& CollisionBounds,
137 const int32 MinRes,
138 const int32 MaxRes,
139 const ECollisionTypeEnum CollisionType);
140
142 const FBox& BoundingBox,
143 const Chaos::FReal Radius,
144 const EImplicitTypeEnum ImplicitType);
145
147 const FBox& BoundingBox,
148 const Chaos::FReal Radius,
149 const EImplicitTypeEnum ImplicitType);
150};
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
ECollisionTypeEnum
Definition GeometryCollectionSimulationTypes.h:12
EImplicitTypeEnum
Definition GeometryCollectionSimulationTypes.h:21
Definition BVHParticles.h:24
Definition ErrorReporter.h:9
Definition ImplicitObject.h:111
Definition Levelset.h:30
Definition TriangleMesh.h:24
Definition Particles.h:32
Definition GeometryCollectionCollisionStructureManager.h:26
Chaos::FBVHParticles FSimplicial
Definition GeometryCollectionCollisionStructureManager.h:32
TArray< Chaos::FVec3 > FPoints
Definition GeometryCollectionCollisionStructureManager.h:31
static CHAOS_API Chaos::FImplicitObjectRef NewImplicitLevelset(Chaos::FErrorReporter ErrorReporter, const Chaos::FParticles &MeshParticles, const Chaos::FTriangleMesh &TriMesh, const FBox &CollisionBounds, const int32 MinRes, const int32 MaxRes, const float CollisionObjectReduction, const ECollisionTypeEnum CollisionType)
Definition GeometryCollectionCollisionStructureManager.cpp:376
static CHAOS_API Chaos::FImplicitObjectRef NewImplicit(Chaos::FErrorReporter ErrorReporter, const Chaos::FParticles &MeshParticles, const Chaos::FTriangleMesh &TriMesh, const FBox &CollisionBounds, const Chaos::FReal Radius, const int32 MinRes, const int32 MaxRes, const float CollisionObjectReduction, const ECollisionTypeEnum CollisionType, const EImplicitTypeEnum ImplicitType)
Definition GeometryCollectionCollisionStructureManager.cpp:190
static CHAOS_API FVector CalculateUnitMassInertiaTensor(const FBox &BoundingBox, const Chaos::FReal Radius, const EImplicitTypeEnum ImplicitType)
Definition GeometryCollectionCollisionStructureManager.cpp:482
CHAOS_API FCollisionStructureManager()
Definition GeometryCollectionCollisionStructureManager.cpp:20
static CHAOS_API Chaos::FReal CalculateVolume(const FBox &BoundingBox, const Chaos::FReal Radius, const EImplicitTypeEnum ImplicitType)
Definition GeometryCollectionCollisionStructureManager.cpp:504
static CHAOS_API Chaos::FImplicitObjectRef NewImplicitCapsule(const Chaos::FReal Radius, const Chaos::FReal Length, const float CollisionObjectReduction, const ECollisionTypeEnum CollisionType)
Definition GeometryCollectionCollisionStructureManager.cpp:313
static CHAOS_API void UpdateImplicitFlags(FImplicit *Implicit, const ECollisionTypeEnum CollisionType)
Definition GeometryCollectionCollisionStructureManager.cpp:174
static CHAOS_API FSimplicial * NewSimplicial(const Chaos::FParticles &Vertices, const Chaos::FTriangleMesh &TriMesh, const Chaos::FImplicitObject *Implicit, const int32 CollisionParticlesMaxInput)
Definition GeometryCollectionCollisionStructureManager.cpp:37
virtual ~FCollisionStructureManager()
Definition GeometryCollectionCollisionStructureManager.h:29
static CHAOS_API Chaos::FImplicitObjectRef NewImplicitConvex(const TArray< int32 > &ConvexIndices, const TManagedArray< Chaos::FConvexPtr > *ConvexGeometry, const ECollisionTypeEnum CollisionType, const FTransform &MassTransform, const Chaos::FReal CollisionMarginFraction, const float CollisionObjectReduction)
Definition GeometryCollectionCollisionStructureManager.cpp:250
static CHAOS_API Chaos::FLevelSetRef NewLevelset(Chaos::FErrorReporter ErrorReporter, const Chaos::FParticles &MeshParticles, const Chaos::FTriangleMesh &TriMesh, const FBox &CollisionBounds, const int32 MinRes, const int32 MaxRes, const ECollisionTypeEnum CollisionType)
Definition GeometryCollectionCollisionStructureManager.cpp:422
Chaos::FImplicitObject FImplicit
Definition GeometryCollectionCollisionStructureManager.h:33
static CHAOS_API Chaos::FImplicitObjectRef NewImplicitSphere(const Chaos::FReal Radius, const float CollisionObjectReduction, const ECollisionTypeEnum CollisionType)
Definition GeometryCollectionCollisionStructureManager.cpp:239
static CHAOS_API Chaos::FImplicitObjectRef NewImplicitBox(const FBox &CollisionBounds, const float CollisionObjectReduction, const ECollisionTypeEnum CollisionType)
Definition GeometryCollectionCollisionStructureManager.cpp:219
Definition Array.h:670
Definition ManagedArray.h:1099
Definition SkeletalMeshComponent.h:307
FRealDouble FReal
Definition Real.h:22
TParticles< FReal, 3 > FParticles
Definition ImplicitObject.h:35