Navigation
Unreal Engine C++ API Reference > Runtime > Chaos > Chaos
Inheritance Hierarchy
- ISpatialAcceleration
- TBoundingVolumeHierarchy
References
Module | Chaos |
Header | /Engine/Source/Runtime/Experimental/Chaos/Public/Chaos/BoundingVolumeHierarchy.h |
Include | #include "Chaos/BoundingVolumeHierarchy.h" |
Source | /Engine/Source/Runtime/Experimental/Chaos/Public/Chaos/BVHParticles.h |
Syntax
template<class OBJECT_ARRAY, class LEAF_TYPE, class T, int d>
class TBoundingVolumeHierarchy : public Chaos::ISpatialAcceleration< int32, T, d >
Constructors
Type | Name | Description | |
---|---|---|---|
![]() |
|||
![]() |
TBoundingVolumeHierarchy
(
const TBoundingVolumeHierarchy< OBJECT_ARRAY, LEAF_TYPE, T, d >& Other |
||
![]() |
TBoundingVolumeHierarchy
(
TBoundingVolumeHierarchy< OBJECT_ARRAY, LEAF_TYPE, T, d >&& Other |
||
![]() |
TBoundingVolumeHierarchy
(
const OBJECT_ARRAY& Objects, |
||
![]() |
TBoundingVolumeHierarchy
(
const OBJECT_ARRAY& Objects, |
Functions
Type | Name | Description | |
---|---|---|---|
![]() ![]() ![]() |
void | DebugDraw
(
ISpacialDebugDrawInterface< T >* InInterface |
|
![]() ![]() |
void | DeepAssign
(
const ISpatialAcceleration< int32, T, d >& Other |
|
![]() ![]() ![]() |
TArray< int32 > | FindAllIntersections
(
const FAABB3& Box |
IMPORTANT : (LWC) this API should be typed on Freal not T, as we want the query API to be using the highest precision while maintaining arbitrary internal precision for the acceleration structure ( based on T ) |
![]() ![]() |
TArray< int32 > | FindAllIntersections
(
const TSpatialRay< T, d >& Ray |
|
![]() ![]() |
TArray< int32 > | FindAllIntersections
(
const TVector< T, d >& Point |
|
![]() ![]() |
TArray< int32 > | FindAllIntersections
(
const TGeometryParticles< T, d >& InParticles, |
|
![]() ![]() |
TArray< int32 > | FindAllIntersectionsImp
(
const T_INTERSECTION& Intersection |
|
![]() |
const TAABB< T, d > & | GetWorldSpaceBoundingBox
(
const TGeometryParticles< T, d >& InParticles, |
TODO(mlentine): Need to move this elsewhere; probably on CollisionConstraint. |
![]() ![]() |
const TArray< int32 > & | ||
![]() |
void | Reinitialize
(
bool bUseVelocity, |
|
![]() |
void | Reinitialize
(
const TArray< uint32 >& ActiveIndices, |
|
![]() |
void | ||
![]() ![]() |
void | Serialize
(
FChaosArchive& Ar |
|
![]() |
void | UpdateHierarchy
(
const bool AllowMultipleSplitting, |
|
![]() |
void | UpdateHierarchy
(
const TArray< uint32 >& ActiveIndices, |
|
![]() ![]() |
void | VisitAllIntersections
(
const FAABB3& LocalBounds, |
Calls the visitor for every overlapping leaf. |
Operators
Type | Name | Description | |
---|---|---|---|
![]() |
TBoundingVolumeHierarchy & | operator=
(
const TBoundingVolumeHierarchy< OBJECT_ARRAY, LEAF_TYPE, T, d >& Other |
|
![]() |
TBoundingVolumeHierarchy & | operator=
(
TBoundingVolumeHierarchy< OBJECT_ARRAY, LEAF_TYPE, T, d >&& Other |
Typedefs
Name | Description |
---|---|
TPayloadType |
Constants
Name | Description |
---|---|
DefaultAllowMultipleSplitting | |
DefaultDt | |
DefaultMaxLevels | |
DefaultUseVelocity |