UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
Declares.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
7
8namespace Chaos
9{
11
12 class FImplicitObject;
13 class FPerShapeData;
14 template <typename TSOA> class TParticleView;
15 template<class T, int d> class TPBDRigidParticles;
16}
17
18#ifndef CHAOS_DEBUG_DRAW
19// this matches UE_ENABLE_DEBUG_DRAWING, but that's in Engine, which this code can't see
20#define CHAOS_DEBUG_DRAW (!(UE_BUILD_SHIPPING || UE_BUILD_TEST) || WITH_EDITOR)
21#endif
22
23#define TODO_REIMPLEMENT_EVENTS_DATA_ARRAYS (CHAOS_PARTICLEHANDLE_TODO && 1)
24#define TODO_REIMPLEMENT_REMOVED_PROXY_STORAGE (CHAOS_PARTICLEHANDLE_TODO && 1)
25#define TODO_REIMPLEMENT_SPATIAL_ACCELERATION_ACCESS (CHAOS_PARTICLEHANDLE_TODO && 1)
26#define TODO_REIMPLEMENT_DEBUG_SUBSTEP (CHAOS_PARTICLEHANDLE_TODO && 1)
27#define TODO_REIMPLEMENT_TIMESTEP_MULTIPLIER (CHAOS_PARTICLEHANDLE_TODO && 1)
28#define TODO_REIMPLEMENT_SOLVER_SETTINGS_ACCESSORS (CHAOS_PARTICLEHANDLE_TODO && 1)
29#define TODO_REIMPLEMENT_SOLVER_PAUSING (CHAOS_PARTICLEHANDLE_TODO && 1)
30#define TODO_REIMPLEMENT_SOLVER_ENABLING (CHAOS_PARTICLEHANDLE_TODO && 1)
31#define TODO_REIMPLEMENT_SERIALIZATION_FOR_PERF_TEST (CHAOS_PARTICLEHANDLE_TODO && 1)
32#define TODO_REIMPLMEENT_EVOLUTION_ACCESSORS (CHAOS_PARTICLEHANDLE_TODO && 1)
33#define TODO_REIMPLEMENT_DYNAMIC_CONSTRAINT_ACCESSORS (CHAOS_PARTICLEHANDLE_TODO && 1)
34#define TODO_REIMPLEMENT_FIELDS_TO_USE_PARTICLEHANDLES (CHAOS_PARTICLEHANDLE_TODO && 1)
35#define TODO_REIMPLEMENT_GEOMETRY_COLLECTION_PHYSICS (CHAOS_PARTICLEHANDLE_TODO && 1)
36#define TODO_REIMPLEMENT_RIGID_CLUSTERING (CHAOS_PARTICLEHANDLE_TODO && 1)
37#define TODO_REIMPLEMENT_GETFLOORINDEX (CHAOS_PARTICLEHANDLE_TODO && 1)
38#define TODO_REIMPLEMENT_PHYSICS_PROXY_REVERSE_MAPPING (CHAOS_PARTICLEHANDLE_TODO && 1)
39#define TODO_REIMPLEMENT_KINEMATIC_PROXY (CHAOS_PARTICLEHANDLE_TODO && 1)
40#define TODO_REIMPLEMENT_WAKE_ISLANDS (CHAOS_PARTICLEHANDLE_TODO && 1)
41#define TODO_REIMPLEMENT_GET_RIGID_PARTICLES (CHAOS_PARTICLEHANDLE_TODO && 1)
42#define TODO_REIMPLEMENT_SET_PHYSICS_MATERIAL (CHAOS_PARTICLEHANDLE_TODO && 1)
43#define TODO_REWRITE_ALL_CONSTRAINT_ADDS_TO_USE_HANDLES (CHAOS_PARTICLEHANDLE_TODO && 1)
44#define TODO_REIMPLEMENT_GETALLCLUSTERBREAKINGS (CHAOS_PARTICLEHANDLE_TODO && 1)
45#define TODO_FIX_REFERENCES_TO_ADDARRAY (CHAOS_PARTICLEHANDLE_TODO && 1)
46#define TODO_REMOVE_ALL_SOLVER_CREATIONS_WHICH_OCCUR_OUTSIDE_THE_SOLVERS_MODULE (CHAOS_PARTICLEHANDLE_TODO && 1)
47#define TODO_MAKE_A_BLUEPRINT_WAY_TO_ACCESS_PARTICLES (CHAOS_PARTICLEHANDLE_TODO && 1)
48#define TODO_REPLACE_SOLVER_LOCK (CHAOS_PARTICLEHANDLE_TODO && 1)
49#define TODO_REIMPLEMENT_INITIALIZE_EVOLUTION_FROM_PARTICLE_DATA (CHAOS_PARTICLEHANDLE_TODO && 1)
50#define TODO_REIMPLEMENT_SKELETAL_TESTS (CHAOS_PARTICLEHANDLE_TODO && 1)
51#define TODO_REIMPLEMENT_SCENEQUERY_CROSSENGINE (0) // ISQAccelerator must be re-implemented for Chaos/PhysX SQ interop. Without this, GDC 2019 demos will not work as designed.
52
53#define CHAOS_CONSTRAINTHANDLE_TODO 0
Definition ImplicitObject.h:111
Definition PBDRigidsSolver.h:84
Definition ShapeInstance.h:36
Definition PBDRigidParticles.h:22
Definition ParticleIterator.h:639
Definition SkeletalMeshComponent.h:307
FPBDRigidsSolver FPhysicsSolver
Definition Declares.h:10