Unity Shader Graph 上的颜色错误

Wrong color on Unity Shader Graph

我的游戏有汽车网格。我需要更改没有车轮和前灯颜色的基本汽车颜色。为此,我创建了带有白色和黑色地方的纹理,需要更改的地方和颜色遮罩。然后我用 Shader Graph

创建了着色器

但是我得到的颜色是错误的。它更亮。 我想要的和我拥有的颜色:

我做错了什么?

除非您使用负输入,否则 Add 不会减少蓝色、红色或绿色的数量。由于您将红光添加到灰色中,因此您会得到粉红色。相反,您应该使用乘法。

将基础纹理与基于白色的颜色贴图相乘,其中颜色贴图为白色,不应影响基础纹理。要制作基于白色的颜色贴图,您可以反转颜色蒙版的结果并将其添加到您已有的相乘结果中。