- Home /
transparent shader
I need custom shader for control all map tile. i do this:
Shader "Base" {
Properties {
_Color ("Color", Color) = (1,1,1,1)
_MainTex ("Albedo (RGB)", 2D) = "white" {}
_Glossiness("Smoothness", Range(0.0, 1.0)) = 0.5
_GlossinessTex("Glossiness Tex", 2D) = "white" {}
_Metallic("Metallic", Range(0.0, 1.0)) = 0.0
_MetallicTex("Metallic Tex", 2D) = "white" {}
_NormalMap ("Normalmap", 2D) = "bump" {}
_NormalMapScale ("NormalMap Scale" , Range(0.0, 2.0)) = 1.0
_Emission ("Emission", Color) = (1,1,1,1)
_EmissionScale ("Emission Scale", Range (0.0, 1.0)) = 0.0
}
SubShader {
Tags {"Queue" = "Transparent" "RenderType"="Transparent" }
LOD 200
CGPROGRAM
#pragma surface surf Standard fullforwardshadows alpha:fade
#pragma target 3.0
sampler2D _MainTex;
sampler2D _NormalMap;
sampler2D _GlossinessTex;
sampler2D _MetallicTex;
struct Input {
float2 uv_MainTex;
float2 uv_NormalMap;
float2 uv_GlossinessTex;
float2 uv_MetallicTex;
float3 viewDir;
};
half _Glossiness;
half _Metallic;
fixed4 _Color;
float _NormalMapScale;
fixed4 _Emission;
float _EmissionScale;
void surf (Input IN, inout SurfaceOutputStandard o) {
fixed4 c = tex2D (_MainTex, IN.uv_MainTex) * _Color ;
o.Albedo = c.rgb;
o.Metallic = _Metallic * (tex2D (_MetallicTex, IN.uv_MetallicTex));
o.Smoothness = _Glossiness *(tex2D (_GlossinessTex, IN.uv_GlossinessTex));
o.Normal = UnpackScaleNormal (tex2D (_NormalMap, IN.uv_NormalMap), _NormalMapScale);
half rim = 1.0 - saturate(dot (normalize(IN.viewDir), o.Normal));
o.Emission = _Emission.rgb * pow (rim, 1/_EmissionScale);
o.Alpha = c.a;
}
ENDCG
}
FallBack "Standard"
}
It doesn't work. Seem there is problem like normal is inverted and face make strange blend. Also if color alpha is 255 model seem to be transparent. Somebody can have transparent standard mod shader working?
I don't have any experience writing shaders, but if you browse the unify community, this link : http://wiki.unity3d.com/index.php/Shaders , you can see the transparent shader that unity uses, and get help from that? sorry I cant be much help, good luck and hopefully someone has something more useful for you :)
Your answer
Follow this Question
Related Questions
Transparent Shader Render Order Issue 0 Answers
Can i force a renderer with standard shader material to crossfade? 0 Answers
How to adjust the transparency of the shader? 0 Answers
Transparent/Diffuse shader which uses UV2 0 Answers
Cutout & reflective shader 0 Answers