Unity Shader Graph、UV Map 分解用作不透明度渐变
Unity Shader Graph, UV Map decomposition to use as opacity gradient
我仍在尝试了解 Unity Shader 图形的工作原理,但我碰壁了。
我正在获取 UV 贴图,我知道它在红色通道中的范围从 0 到 1,在绿色通道中的范围从 0 到 1。
我正在提取红色通道以将两个纹理混合在一起,但红色通道看起来很奇怪。
如您所见,如果我应用对比节点,黑白分界线在左侧。我希望它就在中间。我认为这可能是一个对比陷阱,但正如您在混合节点中看到的那样,它显示的第二个纹理比第一个纹理更多。
在预览节点中,您可以看到它的白色值比黑色值多得多
我想要的是从每一侧均匀混合两个纹理并用数字控制混合(不透明度对比度),“0”完全混合,“1”根本不混合(左侧 = tex1 和右侧 = tex2)
我设法让它工作。红色通道不是罪魁祸首,而是对比节点。
我使用 REMAP 节点解决了这个问题。
当对比度为 0 时
重新映射
在 MinMax = 0..1
输出 MinMax = 0..1
当对比度为 1 时
重新映射
在 MinMax = 0.4999..0.5
输出 MinMax = 0..1
所以它生成了一个黑白纹理,分割线就在中间
我仍在尝试了解 Unity Shader 图形的工作原理,但我碰壁了。
我正在获取 UV 贴图,我知道它在红色通道中的范围从 0 到 1,在绿色通道中的范围从 0 到 1。
我正在提取红色通道以将两个纹理混合在一起,但红色通道看起来很奇怪。
如您所见,如果我应用对比节点,黑白分界线在左侧。我希望它就在中间。我认为这可能是一个对比陷阱,但正如您在混合节点中看到的那样,它显示的第二个纹理比第一个纹理更多。
在预览节点中,您可以看到它的白色值比黑色值多得多
我想要的是从每一侧均匀混合两个纹理并用数字控制混合(不透明度对比度),“0”完全混合,“1”根本不混合(左侧 = tex1 和右侧 = tex2)
我设法让它工作。红色通道不是罪魁祸首,而是对比节点。
我使用 REMAP 节点解决了这个问题。
当对比度为 0 时 重新映射 在 MinMax = 0..1 输出 MinMax = 0..1
当对比度为 1 时 重新映射 在 MinMax = 0.4999..0.5 输出 MinMax = 0..1
所以它生成了一个黑白纹理,分割线就在中间