Advertisement
Guest User

Untitled

a guest
May 24th, 2019
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.70 KB | None | 0 0
  1. Shader "DissolverShader/DissolveShader" {
  2. Properties {
  3. _Color ("Color", Color) = (1,1,1,1)
  4. _MainTex ("Albedo (RGB)", 2D) = "white" {}
  5. _NormalMap ("Normal Map", 2D) = "bump" {}
  6. _NormalStrenght ("Normal Strength", Range(0, 1.5)) = 0.5
  7. _DissolveMap ("Dissolve Map", 2D) = "white" {}
  8. _DissolveAmount ("DissolveAmount", Range(0,1)) = 0
  9. _DissolveColor ("DissolveColor", Color) = (1,1,1,1)
  10. _DissolveEmission ("DissolveEmission", Range(0,1)) = 1
  11. _DissolveWidth ("DissolveWidth", Range(0,0.1)) = 0.05
  12. _Glossiness ("Smoothness", Range(0,1)) = 0.5
  13. _Metallic ("Metallic", Range(0,1)) = 0.0
  14. }
  15. SubShader {
  16. Tags { "RenderType"="Opaque" }
  17. LOD 200
  18.  
  19. CGPROGRAM
  20. #pragma surface surf Standard fullforwardshadows
  21. #pragma target 3.0
  22.  
  23. sampler2D _MainTex;
  24. sampler2D _NormalMap;
  25. sampler2D _DissolveMap;
  26.  
  27. struct Input {
  28. float2 uv_MainTex;
  29. float2 uv_NormalMap;
  30. float2 uv_DissolveMap;
  31. };
  32.  
  33. half _DissolveAmount;
  34. half _NormalStrenght;
  35. half _Glossiness;
  36. half _Metallic;
  37. half _DissolveEmission;
  38. half _DissolveWidth;
  39. fixed4 _Color;
  40. fixed4 _DissolveColor;
  41.  
  42. void surf (Input IN, inout SurfaceOutputStandard o) {
  43.  
  44. fixed4 c = tex2D (_MainTex, IN.uv_MainTex) * _Color;
  45. fixed4 mask = tex2D (_DissolveMap, IN.uv_DissolveMap);
  46.  
  47. if(mask.r < _DissolveAmount)
  48. discard;
  49.  
  50. o.Albedo = c.rgb;
  51.  
  52. if(mask.r < _DissolveAmount + _DissolveWidth) {
  53. o.Albedo = _DissolveColor;
  54. o.Emission = _DissolveColor * _DissolveEmission;
  55. }
  56.  
  57. o.Metallic = _Metallic;
  58. o.Smoothness = _Glossiness;
  59. o.Alpha = c.a;
  60. o.Normal = UnpackScaleNormal(tex2D(_NormalMap, IN.uv_NormalMap), _NormalStrenght);
  61. }
  62. ENDCG
  63. }
  64. FallBack "Diffuse"
  65. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement