参考链接:https://discussions.unity.com/t/shader-graph-custom-function-...

我找到了一种在 CustomNode 中使用 SubGraph 的方法:

  1. 首先,需要找到子图函数的名称

您需要创建一个单独的子图节点,右键单击它并选择“显示生成的代码”。在这段代码中,你需要找到名为 SG_[name of SubGraph][a lot of random symbols] 的函数。该函数的正上方应该是一个结构体 struct Bindings[name of SubGraph]_[a lot of random symbols] {};

  1. 子图初始化

为了在 CustomNode 函数之前创建 SubGraph 函数,CustomNode 节点必须严格位于 SubGraph 节点之后。执行此操作的最佳方法是将未使用的变量添加到输入自定义节点并将其连接到子图的输出。

  1. 使用CustomNode中的SubGraph函数

SubGraph 函数的参数由三部分组成: void func([Inputs], Binding, [out Outputs]) 。 SubGraph 函数不返回任何内容,它将结果写入给定的输出变量。因此,该函数的使用如下所示:

输出初始化;

Outputs initialization;
[name of Binding struct] Binding;
[name of SubGraph function](Input1, Input2, … , InputN, Binding, Output1, … , OutputN);

51b18451a6f3776be6700db3b12fa8d1d78263ae.png

c5a9add8716241040620ce6a157c29be7551fc32.png

52fd50b061e63c0e120604cad0d24049115fccd1.png

关键词:
Unity、自定义函数节点、循环、ForEach、Loop


RDDcoding
151 声望17 粉丝

一心一行