Navigation
Unreal Engine C++ API Reference > Runtime > Chaos > Chaos
Inheritance Hierarchy
- FImplicitObject
- FImplicitObjectUnion
- FImplicitObjectUnionClustered
References
Module | Chaos |
Header | /Engine/Source/Runtime/Experimental/Chaos/Public/Chaos/ImplicitObjectUnion.h |
Include | #include "Chaos/ImplicitObjectUnion.h" |
Syntax
class FImplicitObjectUnion : public Chaos::FImplicitObject
Variables
Type | Name | Description | |
---|---|---|---|
![]() |
TUniquePtr< Private::FImplicitBVH > | BVH | BVH is only created when there are many objects. |
![]() |
friend | FImplicitObject | |
![]() |
FFLags | Flags | |
![]() |
FAABB3 | MLocalBoundingBox | |
![]() |
TArray< TUniquePtr< FImplicitObject > > | MObjects | |
![]() |
uint16 | NumLeafObjects |
Constructors
Type | Name | Description | |
---|---|---|---|
![]() |
Needed for serialization. | ||
![]() |
FImplicitObjectUnion
(
TArray< TUniquePtr< FImplicitObject >>&& Objects |
||
![]() |
FImplicitObjectUnion
(
const FImplicitObjectUnion& Other |
||
![]() |
FImplicitObjectUnion
(
FImplicitObjectUnion&& Other |
Destructors
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
Functions
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
void | AccumulateAllSerializableImplicitObjectsHelper
(
TArray< Pair< TSerializablePtr< FImplicitObject >, FRigidTransform3 >>& Out, |
|
![]() ![]() |
void | ||
![]() |
void | Combine
(
TArray< TUniquePtr< FImplicitObject >>& Objects |
|
![]() |
void | CreateBVH () |
|
![]() |
void | DestroyBVH () |
|
![]() ![]() |
void | ForEachObject
(
TFunctionRef< bool(const FImplicitObject&, const FRigidTransform3&)> Lambda |
The lambda returns TRUE if an object was found and iteration should stop. |
![]() ![]() |
const Private::FImplicitBVH * | GetBVH () |
|
![]() ![]() |
int32 | The total number of leaf objects in the hierarchy. | |
![]() ![]() |
int32 | The total number of root objects in the hierarchy (same as GetObjects().Num()) | |
![]() |
TArray< TUniquePtr< FImplicitObject > > & | GetObjects () |
|
![]() ![]() |
const TArray< TUniquePtr< FImplicitObject > > & | GetObjects () |
|
![]() |
void | LegacySerializeBVH
(
FChaosArchive& Ar |
|
![]() |
void | RebuildBVH () |
|
![]() |
void | RemoveAt
(
int32 RemoveIndex |
|
![]() |
void | SetAllowBVH
(
const bool bInAllowBVH |
Enable BVH suport for this Union. This should only be done for the root Union in a hierarchy. |
![]() |
void | SetNumLeafObjects
(
const int32 InNumLeafObjects |
|
![]() ![]() |
constexpr EImplicitObjectType | StaticType () |
Overridden from FImplicitObject
Type | Name | Description | |
---|---|---|---|
![]() ![]() ![]() |
void | AccumulateAllImplicitObjects
(
TArray< Pair< const FImplicitObject*, FRigidTransform3 >>& Out, |
|
![]() ![]() ![]() |
void | AccumulateAllSerializableImplicitObjects
(
TArray< Pair< TSerializablePtr< FImplicitObject >, FRigidTransform3 >>& Out, |
|
![]() ![]() ![]() |
const FAABB3 | BoundingBox () |
|
![]() ![]() ![]() |
TUniquePtr< FImplicitObject > | Copy () |
|
![]() ![]() ![]() |
TUniquePtr< FImplicitObject > | CopyWithScale
(
const FVec3& Scale |
|
![]() ![]() ![]() |
TUniquePtr< FImplicitObject > | DeepCopy () |
|
![]() ![]() ![]() |
TUniquePtr< FImplicitObject > | DeepCopyWithScale
(
const FVec3& Scale |
|
![]() ![]() ![]() |
FImplicitObject * | Duplicate () |
Not all implicit objects can be duplicated, up to user code to use this in cases that make sense. |
![]() ![]() ![]() |
void | FindAllIntersectingObjects
(
TArray< Pair< const FImplicitObject*, FRigidTransform3 >>& Out, |
|
![]() ![]() ![]() |
Pair< FVec3, bool > | FindClosestIntersectionImp
(
const FVec3& StartPoint, |
|
![]() ![]() ![]() |
uint32 | GetTypeHash () |
|
![]() ![]() ![]() |
bool | IsOverlappingBoundsImpl
(
const FAABB3& LocalBounds |
This should not be public, but it needs to be callable by derived classes on another instance. |
![]() ![]() ![]() |
bool | ||
![]() ![]() ![]() |
bool | This gives derived types a way to do an overlap check without calling PhiWithNormal todo: this api is confusing. | |
![]() ![]() ![]() |
FReal | PhiWithNormal
(
const FVec3& x, |
Find the closest point on the surface, and return the separating distance and axis. |
![]() ![]() ![]() |
bool | This gives derived types a way to avoid calling PhiWithNormal todo: this api is confusing. | |
![]() ![]() |
void | Serialize
(
FChaosArchive& Ar |
|
![]() ![]() ![]() |
void | VisitLeafObjectsImpl
(
const FRigidTransform3& ObjectTransform, |
This should not be public, but it needs to be callable by derived classes on another instance. |
![]() ![]() ![]() |
bool | VisitObjectsImpl
(
const FRigidTransform3& ObjectTransform, |
This should not be public, but it needs to be callable by derived classes on another instance. |
![]() ![]() ![]() |
void | VisitOverlappingLeafObjectsImpl
(
const FAABB3& LocalBounds, |
This should not be public, but it needs to be callable by derived classes on another instance. |
Classes
Type | Name | Description | |
---|---|---|---|
![]() |
FFLags |