Navigation
API > API/Runtime > API/Runtime/Chaos
Base class for containers of constraints. A Constraint Container holds an array of constraints and provides methods to allocate and deallocate constraints as well as the API required to plug into Constraint Rules.
| Name | FPBDConstraintContainer |
| Type | class |
| Header File | /Engine/Source/Runtime/Experimental/Chaos/Public/Chaos/PBDConstraintContainer.h |
| Include Path | #include "Chaos/PBDConstraintContainer.h" |
Syntax
class FPBDConstraintContainer
Derived Classes
- FCharacterGroundConstraintContainer
- FPBDIndexedConstraintContainer
- FPBDCollisionConstraints
- FPBDJointConstraints
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FPBDConstraintContainer
(
FConstraintHandleTypeID InConstraintHandleType |
Chaos/PBDConstraintContainer.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~FPBDConstraintContainer() |
Chaos/PBDConstraintContainer.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AddConstraintsToGraph
(
Private::FPBDIslandManager& IslandManager |
Add all the constraints in the container to the graph | Chaos/PBDConstraintContainer.h | |
TUniquePtr< FConstraintContainerSolver > CreateGroupSolver
(
const int32 Priority |
Create a constraint solver for an Evolution with Graph support (World evolution). | Chaos/PBDConstraintContainer.h | |
TUniquePtr< FConstraintContainerSolver > CreateSceneSolver
(
const int32 Priority |
Create a constraint solver for an Evolution without Graph support (RBAN evolution). | Chaos/PBDConstraintContainer.h | |
virtual void DisconnectConstraints
(
const TSet< TGeometryParticleHandle< FReal, 3 >* >& |
This is called when a particle is destroyed. | Chaos/PBDConstraintContainer.h | |
const FConstraintHandleTypeID & GetConstraintHandleType () |
The TypeID of the constraints in this container. Used to safely downcast constraint handles. | Chaos/PBDConstraintContainer.h | |
int32 GetContainerId () |
The ContainerId is used to map constraint handles back to their constraint container. | Chaos/PBDConstraintContainer.h | |
int32 GetNumConstraints() |
Get the number of constraints in this container (includes inactive and disabled) | Chaos/PBDConstraintContainer.h | |
virtual void OnDisableParticle
(
FGeometryParticleHandle* DisabledParticle |
This is called to notify the constraint container that a particle has been disabled. | Chaos/PBDConstraintContainer.h | |
virtual void OnEnableParticle
(
FGeometryParticleHandle* EnabledParticle |
This is called to notify the constraint container that a particle has been disabled. | Chaos/PBDConstraintContainer.h | |
void PrepareTick() |
Called oncer per tick to initialize buffers required for the rest of the tick | Chaos/PBDConstraintContainer.h | |
void ResetConstraints() |
Empty the constraints (must be removed from the graph first, if required) | Chaos/PBDConstraintContainer.h | |
void SetContainerId
(
int32 InContainerId |
Chaos/PBDConstraintContainer.h | ||
void UnprepareTick() |
Should undo any allocations in PrepareTick | Chaos/PBDConstraintContainer.h | |
virtual void UpdatePositionBasedState
(
const FReal Dt |
An opportunity to create/destroy constraints based on particle state. | Chaos/PBDConstraintContainer.h |