Files
UnrealEngineUWP/Engine/Source/Programs/HeadlessChaos/Public/GeometryCollection/GeometryCollectionTestUtility.h
ori cohen 0b3a46d950 Merge geometry collection into headless chaos.
#ROBOMERGE-SOURCE: CL 13181058 via CL 13181060 via CL 13181063
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v688-13145358)

[CL 13181068 by ori cohen in Main branch]
2020-05-05 11:41:40 -04:00

41 lines
1.8 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "ChaosSolversModule.h"
#include "Chaos/Serializable.h"
#include "GeometryCollection/GeometryCollectionSimulationTypes.h"
//#include "GeometryCollection/GeometryCollection.h"
#include "PhysicsProxy/GeometryCollectionPhysicsProxy.h"
#include "Templates/SharedPointer.h"
#include "Chaos/PBDRigidsEvolutionFwd.h"
class FGeometryCollection;
class FGeometryDynamicCollection;
struct FSimulationParameters;
namespace GeometryCollectionTest {
TSharedPtr<FGeometryDynamicCollection> GeometryCollectionToGeometryDynamicCollection(const FGeometryCollection* InputCollection, EObjectStateTypeEnum DynamicStateDefault = EObjectStateTypeEnum::Chaos_Object_Dynamic);
TSharedPtr<FGeometryCollection> CreateClusteredBody(FVector Position);
TSharedPtr<FGeometryCollection> CreateClusteredBody_OnePartent_FourBodies(FVector Position);
TSharedPtr<FGeometryCollection> CreateClusteredBody_TwoParents_TwoBodies(FVector Position);
TSharedPtr<FGeometryCollection> CreateClusteredBody_TwoParents_TwoBodiesB(FVector Position);
TSharedPtr<FGeometryCollection> CreateClusteredBody_FourParents_OneBody(FVector Position);
TSharedPtr<FGeometryCollection> CreateClusteredBody_TwoByTwo_ThreeTransform(FVector Position);
TSharedPtr<FGeometryCollection> CreateClusteredBody_ThreeByTwo_ThreeTransform(FVector Position);
TSharedPtr<FGeometryCollection> CreateClusteredBody_FracturedGeometry(FVector Position = FVector(0));
void InitMaterialToZero(Chaos::FChaosPhysicsMaterial * PhysicalMaterial);
/*
using FInitFunc = TFunction<void(FSimulationParameters&)>;
FGeometryCollectionPhysicsProxy* RigidBodySetup(
TUniquePtr<Chaos::FChaosPhysicsMaterial> &PhysicalMaterial,
TSharedPtr<FGeometryCollection> &RestCollection,
TSharedPtr<FGeometryDynamicCollection> &DynamicCollection,
FInitFunc CustomFunc = nullptr
);
*/
}