1
0
KF2-Dev-Scripts/Engine/Classes/MaterialExpressionCustom.uc

49 lines
1.2 KiB
Ucode
Raw Normal View History

2020-12-13 15:01:13 +00:00
/**
* Copyright 1998-2013 Epic Games, Inc. All Rights Reserved.
*/
class MaterialExpressionCustom extends MaterialExpression
native(Material)
collapsecategories
hidecategories(Object);
enum ECustomMaterialOutputType
{
CMOT_Float1,
CMOT_Float2,
CMOT_Float3,
CMOT_Float4,
};
struct native CustomInput
{
var() string InputName;
var edithide ExpressionInput Input;
};
var() edittextbox string Code;
var() ECustomMaterialOutputType OutputType;
var() string Description;
var() array<CustomInput> Inputs;
cpptext
{
// UObject interface
virtual void PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent);
// UMaterialExpression interface
virtual INT Compile(FMaterialCompiler* Compiler, INT OutputIndex);
virtual FString GetCaption() const;
void SwapReferenceTo( UMaterialExpression* OldExpression, UMaterialExpression* NewExpression );
virtual const TArray<FExpressionInput*> GetInputs();
virtual FExpressionInput* GetInput(INT InputIndex);
virtual FString GetInputName(INT InputIndex) const;
}
defaultproperties
{
Description="Custom"
MenuCategories(0)="Custom"
OutputType=CMOT_Float3
Inputs(0)=(InputName="")
}