2019-12-26 14:45:42 -05:00
// Copyright Epic Games, Inc. All Rights Reserved.
2018-12-12 11:25:29 -05:00
# pragma once
# include "Components/MeshComponent.h"
2021-04-29 19:32:06 -04:00
# include "GeometryCollection/GeometryCollectionParticlesData.h"
2018-12-12 11:25:29 -05:00
# include "GeometryCollectionDebugDrawComponent.generated.h"
2019-06-08 17:15:34 -04:00
2018-12-12 11:25:29 -05:00
class AGeometryCollectionRenderLevelSetActor ;
class UGeometryCollectionComponent ;
class AGeometryCollectionDebugDrawActor ;
2019-06-26 13:41:32 -04:00
class AChaosSolverActor ;
2018-12-12 11:25:29 -05:00
2019-10-02 17:27:26 -04:00
# if GEOMETRYCOLLECTION_DEBUG_DRAW
2019-10-31 17:28:08 -04:00
namespace Chaos { class FImplicitObject ; }
2019-06-08 17:15:34 -04:00
namespace Chaos { template < class T , int d > class TPBDRigidParticles ; }
2019-10-02 17:27:26 -04:00
# endif // #if GEOMETRYCOLLECTION_DEBUG_DRAW
2019-06-08 17:15:34 -04:00
2019-07-22 08:16:50 -04:00
/**
* UGeometryCollectionDebugDrawComponent
* Component adding debug drawing functionality to a GeometryCollectionActor .
* This component is automatically added to every GeometryCollectionActor .
*/
2022-02-02 02:20:31 -05:00
class UE_DEPRECATED ( 5.0 , " Deprecated. Use normal debug draw Chaos Physics commands " ) UGeometryCollectionDebugDrawComponent ;
2023-06-17 18:14:12 -04:00
UCLASS ( meta = ( BlueprintSpawnableComponent ) , HideCategories = ( " Tags " , " Activation " , " Cooking " , " AssetUserData " , " Collision " ) , MinimalAPI )
class UGeometryCollectionDebugDrawComponent : public UActorComponent
2018-12-12 11:25:29 -05:00
{
GENERATED_UCLASS_BODY ( )
public :
2022-02-02 02:20:31 -05:00
PRAGMA_DISABLE_DEPRECATION_WARNINGS
2019-08-07 14:56:14 -04:00
/** Singleton actor, containing the debug draw properties. Automatically populated at play time unless explicitly set. */
2022-02-02 02:20:31 -05:00
UPROPERTY ( )
TObjectPtr < AGeometryCollectionDebugDrawActor > GeometryCollectionDebugDrawActor_DEPRECATED ;
PRAGMA_ENABLE_DEPRECATION_WARNINGS
2019-08-07 14:56:14 -04:00
/** Level Set singleton actor, containing the Render properties. Automatically populated at play time unless explicitly set. */
2019-06-08 17:15:34 -04:00
UPROPERTY ( EditAnywhere , Category = " Debug Draw " , AdvancedDisplay )
2021-01-27 17:40:25 -04:00
TObjectPtr < AGeometryCollectionRenderLevelSetActor > GeometryCollectionRenderLevelSetActor ;
2018-12-12 11:25:29 -05:00
UGeometryCollectionComponent * GeometryCollectionComponent ; // the component we are debug rendering for, set by the GeometryCollectionActor after creation
} ;