34 lines
1.1 KiB
C
34 lines
1.1 KiB
C
|
// Copyright 2020 Phyronnaz
|
||
|
|
||
|
#pragma once
|
||
|
|
||
|
#include "CoreMinimal.h"
|
||
|
#include "VoxelNodeHelper.h"
|
||
|
#include "VoxelNodes/VoxelNodeHelperMacros.h"
|
||
|
#include "VoxelHeightSplitterNode.generated.h"
|
||
|
|
||
|
// Splits a float input based on different layers, and outputs the strength of each layer
|
||
|
// Input heights must be ordered!
|
||
|
UCLASS(DisplayName = "Height Splitter", Category = "Math|Float")
|
||
|
class VOXELGRAPH_API UVoxelNode_HeightSplitter : public UVoxelNodeHelper
|
||
|
{
|
||
|
GENERATED_BODY()
|
||
|
GENERATED_VOXELNODE_BODY()
|
||
|
|
||
|
public:
|
||
|
UPROPERTY(EditAnywhere, Category = "Config", meta = (ReconstructNode), meta = (ClampMin = 1, ClampMax = 30))
|
||
|
int32 NumSplits = 4;
|
||
|
|
||
|
UVoxelNode_HeightSplitter();
|
||
|
|
||
|
//~ Begin UVoxelNode Interface
|
||
|
virtual int32 GetMinInputPins() const override;
|
||
|
virtual int32 GetMaxInputPins() const override;
|
||
|
virtual int32 GetOutputPinsCount() const override;
|
||
|
|
||
|
virtual FName GetInputPinName(int32 PinIndex) const override;
|
||
|
virtual FName GetOutputPinName(int32 PinIndex) const override;
|
||
|
|
||
|
virtual FString GetInputPinDefaultValue(int32 PinIndex) const override;
|
||
|
//~ End UVoxelNode Interface
|
||
|
};
|