Shader "Custom/Transparent" {
Properties {
_Color ("Main Color", Color) = (1,1,1,0.6)
_MainTex ("Base (RGB)", 2D) = "white" {}
}
SubShader {
Tags { "Queue"="Transparent" }
Pass{
Blend SrcAlpha OneMinusSrcAlpha
Color[_Color]
SetTexture[_MainTex]{
combine previous * texture
}
}
}
SubShader {
Tags { "Queue"="Transparent" }
CGPROGRAM
#pragma surface surf Lambert alpha
fixed4 _Color;
sampler2D _MainTex;
struct Input {
float2 uv_MainTex;
};
void surf (Input IN, inout SurfaceOutput o) {
fixed4 c = tex2D(_MainTex, IN.uv_MainTex) * _Color;
o.Albedo = c.rgb;
o.Alpha = c.a;
}
ENDCG
}
SubShader {
Tags { "Queue"="Transparent" }
Blend SrcAlpha OneMinusSrcAlpha
Pass{
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
fixed4 _Color;
s
【Unity Shader】简单Transparent shader的三种实现
最新推荐文章于 2023-07-30 17:00:38 发布