Block 节点
描述
Block 是主栈的一种特定类型的节点。一个 Block 代表一项表面(或顶点)描述数据,供 Shader Graph 在最终的着色器输出中使用。内置 Block 节点始终可用,但特定于某个渲染管线的节点仅可用于该管线。例如,Universal Block 节点仅适用于通用渲染管线 (URP),而 High Definition Block 节点仅适用于高清渲染管线 (HDRP)。
有些 Block 只与特定的 Graph Settings 兼容,并且可能会根据所选择的图形设置变为活动状态或非活动状态。Block 不能剪切、复制或粘贴。
添加和删除 Block 节点
要将新的 Block 节点添加到主栈中的上下文,请将光标放在上下文中的空白区域,然后按空格键或右键单击并选择 Create Node。
这将打开 Create Node 菜单,其中仅显示对该上下文有效的 Block 节点。例如,Vertex Block 不会出现在 Fragment 上下文的 Create Node 菜单中。
从菜单中选择一个 Block 节点将其添加到上下文中。要从上下文中删除一个 Block,请在上下文中选择该 Block 节点,然后按 Delete 键或右键单击并选择 Delete。
自动添加或删除 Block
通过在 Shader Graph Preferences 中启用或禁用选项,可以自动从上下文中添加和删除 Block。
如果启用 Automatically Add or Remove Blocks,Shader Graph 会为该特定资源的目标或材质类型自动添加所需的 Block 节点。它会自动去除任何没有连接和默认值的不兼容 Block 节点。
如果禁用 Automatically Add or Remove Blocks,Shader Graph 不会自动添加和删除 Block 节点。必须手动添加和删除所有 Block 节点。
活动和非活动 Block
活动 Block 节点是参与最终着色器的 Block。非活动 Block 节点存在于 Shader Graph 中,但不参与最终着色器。
更改图形设置时,某些 Block 可能会变为活动状态或非活动状态。非活动 Block 节点和仅连接到非活动 Block 节点的任何节点流将显示为灰色。