Files
FLESH/Source/FLESHEditor/Public/DismembermentGraph/DismembermentGraphNodeCut.h
2025-04-17 23:59:17 +08:00

41 lines
1.2 KiB
C++

#pragma once
#include "CoreMinimal.h"
#include "DismembermentGraphNode.h"
#include "DismembermentGraphNodeCut.generated.h"
/**
* Node for performing a cut operation in the dismemberment graph
*/
UCLASS()
class FLESHEDITOR_API UDismembermentGraphNodeCut : public UDismembermentGraphNode
{
GENERATED_BODY()
public:
UDismembermentGraphNodeCut();
// Cut parameters
UPROPERTY(EditAnywhere, Category = "Cut Parameters")
float CutWidth;
UPROPERTY(EditAnywhere, Category = "Cut Parameters")
float CutDepth;
UPROPERTY(EditAnywhere, Category = "Cut Parameters")
bool bUseCustomMaterial;
UPROPERTY(EditAnywhere, Category = "Cut Parameters", meta = (EditCondition = "bUseCustomMaterial"))
TObjectPtr<UMaterialInterface> CustomCutMaterial;
// UEdGraphNode interface
virtual void AllocateDefaultPins() override;
virtual FText GetNodeTitle(ENodeTitleType::Type TitleType) const override;
// End of UEdGraphNode interface
// UDismembermentGraphNode interface
virtual void CompileNode(class FDismembermentCompiler* Compiler) override;
virtual void ExecuteNode(class FDismembermentExecutor* Executor) override;
// End of UDismembermentGraphNode interface
};