CelticCraft/Plugins/VoxelFree/Source/Voxel/Public/VoxelTools/VoxelPhysicsPartSpawnerInterface.h

56 lines
1.1 KiB
C++

// Copyright 2020 Phyronnaz
#pragma once
#include "CoreMinimal.h"
#include "VoxelMaterial.h"
#include "VoxelMinimal.h"
#include "UObject/Interface.h"
#include "VoxelPhysicsPartSpawnerInterface.generated.h"
class AStaticMeshActor;
class UStaticMesh;
class UMaterialInterface;
class FVoxelData;
class AVoxelWorld;
USTRUCT(BlueprintType)
struct FVoxelPositionValueMaterial
{
GENERATED_BODY()
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Voxel")
FIntVector Position = FIntVector(ForceInit);
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Voxel")
float Value = 0;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Voxel")
FVoxelMaterial Material = FVoxelMaterial(ForceInit);
};
// Represents the result for a single part
UINTERFACE(BlueprintType)
class VOXEL_API UVoxelPhysicsPartSpawnerResult : public UInterface
{
GENERATED_BODY()
};
class VOXEL_API IVoxelPhysicsPartSpawnerResult : public IInterface
{
GENERATED_BODY()
};
UINTERFACE(BlueprintType)
class VOXEL_API UVoxelPhysicsPartSpawner : public UInterface
{
GENERATED_BODY()
};
class VOXEL_API IVoxelPhysicsPartSpawner : public IInterface
{
GENERATED_BODY()
public:
};