在 Shader Graph 工作区点击右键,在右键菜单中选择 Custom Function 。
在自定义函数节点的 Graph Inspector 面板中设置函数输入(Inputs)/输出(Outputs)参数,Type选择String,Name设置函数名,Body中写函数体代码。
1、创建 CustomFunction.hlsl 文件。
//添加预处理指令防止重复包含
#ifndef MY_CUSTOM_FUNCTION
#define MY_CUSTOM_FUNCTION
//自定义函数,_float为精度后缀
void Blend_float(float4 rgba, float4 col, out float4 Out)
{
Out = rgba * col;
}
#endif
2、在自定义函数节点的 Graph Inspector 面板中设置函数输入(Inputs)/输出(Outputs)参数,Type选择File,Name设置函数名(不带精度后缀),将文件拖到 Source 属性上。
点击Blackboard面板右上角的加号(+)分别创建纹理节点(Texture 2D)和颜色节点(Color)。并设置上测试用的纹理和颜色值。
将Texture2D节点和Color节点的输出连接到自定义函数的两个输入参数,再将自定义函数的输出连接到着色器的 Base Color 属性上。
在 Main Preview 窗口可以实时预览材质效果。