我正在尝试在Unity中制作一个简单的漫反射着色器,但具有全局alpha值。所以你添加一个纹理(没有alpha),然后在着色器中定义一个alpha值(在0和1之间浮动)。然后整个纹理是透明的。
这是我已经拥有的,它只是你可以成像的最基本的漫反射着色器,虽然我坚持添加alpha。
Properties
{
_Alpha ("Alpha", Range (0.0,1.0)) = 0.0
_MainTex ("Base (RGB) Transparency (A)", 2D) = "" { }
}
SubShader
{
Pass
{
SetTexture [_MainTex] { combine texture }
}
}
谢谢,
答案 0 :(得分:1)
我已经做了一段时间了,但我觉得你想要这样的东西:
SubShader
{
Tags { "Queue" = "Transparent" }
Pass
{
Blend SrcAlpha OneMinusSrcAlpha
SetTexture [_MainTex] {
constantColor (1, 1, 1, [_Alpha])
combine texture * constant
}
}
}
请注意,您可以从here下载内置着色器以实现统一,它们非常有用。