You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

137 lines
11 KiB

  1. // Made with Amplify Shader Editor
  2. // Available at the Unity Asset Store - http://u3d.as/y3X
  3. Shader "ASESampleShaders/Community/SingleChannelMasking"
  4. {
  5. Properties
  6. {
  7. _Mask("Mask", 2D) = "white" {}
  8. _Color01("Color 01", Color) = (1,0,0,0)
  9. _Color02("Color 02", Color) = (0,0.04827571,1,0)
  10. _Color03("Color 03", Color) = (1,0.6827588,0,0)
  11. _Color04("Color 04", Color) = (0.1376267,0.8676471,0,0)
  12. _Color05("Color 05", Color) = (0.8620691,0,1,0)
  13. [HideInInspector] _texcoord( "", 2D ) = "white" {}
  14. [HideInInspector] __dirty( "", Int ) = 1
  15. }
  16. SubShader
  17. {
  18. Tags{ "RenderType" = "Opaque" "Queue" = "Geometry+0" }
  19. Cull Back
  20. CGPROGRAM
  21. #pragma target 3.0
  22. #pragma surface surf Standard keepalpha addshadow fullforwardshadows
  23. struct Input
  24. {
  25. float2 uv_texcoord;
  26. };
  27. uniform sampler2D _Mask;
  28. uniform float4 _Mask_ST;
  29. uniform float4 _Color01;
  30. uniform float4 _Color02;
  31. uniform float4 _Color03;
  32. uniform float4 _Color04;
  33. uniform float4 _Color05;
  34. void surf( Input i , inout SurfaceOutputStandard o )
  35. {
  36. float2 uv_Mask = i.uv_texcoord * _Mask_ST.xy + _Mask_ST.zw;
  37. float temp_output_25_0_g118 = 0.0;
  38. float temp_output_22_0_g118 = step( tex2D( _Mask, uv_Mask ).r , temp_output_25_0_g118 );
  39. float temp_output_25_0_g119 = ( temp_output_25_0_g118 + 0.2 );
  40. float temp_output_22_0_g119 = step( tex2D( _Mask, uv_Mask ).r , temp_output_25_0_g119 );
  41. float temp_output_25_0_g120 = ( temp_output_25_0_g119 + 0.2 );
  42. float temp_output_22_0_g120 = step( tex2D( _Mask, uv_Mask ).r , temp_output_25_0_g120 );
  43. float temp_output_25_0_g121 = ( temp_output_25_0_g120 + 0.2 );
  44. float temp_output_22_0_g121 = step( tex2D( _Mask, uv_Mask ).r , temp_output_25_0_g121 );
  45. float temp_output_25_0_g122 = ( temp_output_25_0_g121 + 0.2 );
  46. float temp_output_22_0_g122 = step( tex2D( _Mask, uv_Mask ).r , temp_output_25_0_g122 );
  47. o.Albedo = ( ( ( temp_output_22_0_g118 - 0 ) * _Color01 ) + ( ( temp_output_22_0_g119 - temp_output_22_0_g118 ) * _Color02 ) + ( _Color03 * ( temp_output_22_0_g120 - temp_output_22_0_g119 ) ) + ( _Color04 * ( temp_output_22_0_g121 - temp_output_22_0_g120 ) ) + ( _Color05 * ( temp_output_22_0_g122 - temp_output_22_0_g121 ) ) ).rgb;
  48. o.Alpha = 1;
  49. }
  50. ENDCG
  51. }
  52. Fallback "Diffuse"
  53. CustomEditor "ASEMaterialInspector"
  54. }
  55. /*ASEBEGIN
  56. Version=15204
  57. 1927;29;1906;1044;405.0664;1373.938;1;True;False
  58. Node;AmplifyShaderEditor.CommentaryNode;274;-358.7705,-1347.318;Float;False;3616.619;1259.05;Convert a single greyscale mask into 5 different B/W masks;12;241;235;204;205;253;268;99;312;311;310;309;313;Create colour masks;1,1,1,1;0;0
  59. Node;AmplifyShaderEditor.CommentaryNode;99;-337.2622,-1147.597;Float;False;415.1407;302.3209;Must be linear (untick sRGB in import settings);1;65;Main texture sample;1,1,1,1;0;0
  60. Node;AmplifyShaderEditor.SamplerNode;65;-262.2622,-1083.597;Float;True;Property;_Mask;Mask;0;0;Create;True;0;0;False;0;ae0e8ec300b8a7c478936b1b33b60a38;ae0e8ec300b8a7c478936b1b33b60a38;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;6;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  61. Node;AmplifyShaderEditor.RangedFloatNode;253;-84.31908,-824.1495;Float;False;Constant;_Startclipvalue;Start clip value;8;0;Create;True;0;0;False;0;0;0;0;0;0;1;FLOAT;0
  62. Node;AmplifyShaderEditor.FunctionNode;313;164.6682,-1053.064;Float;True;MaskingFunction;-1;;118;571aab6f8c08f1c4d9bd4012d2958d88;0;3;21;FLOAT;0;False;30;FLOAT;0;False;25;FLOAT;0;False;3;FLOAT;0;FLOAT;32;FLOAT;28
  63. Node;AmplifyShaderEditor.SamplerNode;205;297.7372,-1259.597;Float;True;Property;_Mask01Instance;Mask 01 (Instance);0;0;Create;True;0;0;False;0;None;None;True;0;False;white;Auto;False;Instance;65;Auto;Texture2D;6;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  64. Node;AmplifyShaderEditor.FunctionNode;309;681.7371,-1051.597;Float;True;MaskingFunction;-1;;119;571aab6f8c08f1c4d9bd4012d2958d88;0;3;21;FLOAT;0;False;30;FLOAT;0;False;25;FLOAT;0;False;3;FLOAT;0;FLOAT;32;FLOAT;28
  65. Node;AmplifyShaderEditor.SamplerNode;204;809.7372,-1259.597;Float;True;Property;_Mask02Instance;Mask 02 (Instance);0;0;Create;True;0;0;False;0;None;None;True;0;False;white;Auto;False;Instance;65;Auto;Texture2D;6;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  66. Node;AmplifyShaderEditor.SamplerNode;235;1321.737,-1259.597;Float;True;Property;_Mask03Instance;Mask 03 (Instance);0;0;Create;True;0;0;False;0;None;None;True;0;False;white;Auto;False;Instance;65;Auto;Texture2D;6;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  67. Node;AmplifyShaderEditor.CommentaryNode;268;183.7372,-637.5975;Float;False;2942;468;;20;87;88;90;86;85;83;84;96;89;264;267;259;262;97;266;265;260;263;261;82;Colour all the masks;1,1,1,1;0;0
  68. Node;AmplifyShaderEditor.FunctionNode;310;1193.738,-1051.597;Float;True;MaskingFunction;-1;;120;571aab6f8c08f1c4d9bd4012d2958d88;0;3;21;FLOAT;0;False;30;FLOAT;0;False;25;FLOAT;0;False;3;FLOAT;0;FLOAT;32;FLOAT;28
  69. Node;AmplifyShaderEditor.ColorNode;90;1753.738,-587.5977;Float;False;Property;_Color04;Color 04;4;0;Create;True;0;0;False;0;0.1376267,0.8676471,0,0;0.1376266,0.8676471,0,0;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  70. Node;AmplifyShaderEditor.ColorNode;88;1257.738,-587.5977;Float;False;Property;_Color03;Color 03;3;0;Create;True;0;0;False;0;1,0.6827588,0,0;0.03448248,0,1,0;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  71. Node;AmplifyShaderEditor.ColorNode;87;745.7371,-587.5977;Float;False;Property;_Color02;Color 02;2;0;Create;True;0;0;False;0;0,0.04827571,1,0;1,1,1,0;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  72. Node;AmplifyShaderEditor.FunctionNode;311;1705.738,-1051.597;Float;True;MaskingFunction;-1;;121;571aab6f8c08f1c4d9bd4012d2958d88;0;3;21;FLOAT;0;False;30;FLOAT;0;False;25;FLOAT;0;False;3;FLOAT;0;FLOAT;32;FLOAT;28
  73. Node;AmplifyShaderEditor.ColorNode;86;233.7372,-587.5977;Float;False;Property;_Color01;Color 01;1;0;Create;True;0;0;False;0;1,0,0,0;1,0,0,0;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  74. Node;AmplifyShaderEditor.SamplerNode;241;1833.738,-1259.597;Float;True;Property;_Mask04Instance;Mask 04 (Instance);0;0;Create;True;0;0;False;0;None;None;True;0;False;white;Auto;False;Instance;65;Auto;Texture2D;6;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  75. Node;AmplifyShaderEditor.SimpleMultiplyOpNode;89;2043.551,-555.5977;Float;True;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0
  76. Node;AmplifyShaderEditor.ColorNode;96;2281.738,-571.5977;Float;False;Property;_Color05;Color 05;5;0;Create;True;0;0;False;0;0.8620691,0,1,0;1,0.5586207,0,0;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  77. Node;AmplifyShaderEditor.SimpleMultiplyOpNode;85;1493.465,-562.8522;Float;True;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0
  78. Node;AmplifyShaderEditor.SimpleMultiplyOpNode;84;1012.296,-569.7841;Float;True;2;2;0;FLOAT;0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
  79. Node;AmplifyShaderEditor.SimpleMultiplyOpNode;83;487.6007,-573.4113;Float;True;2;2;0;FLOAT;0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
  80. Node;AmplifyShaderEditor.FunctionNode;312;2217.738,-1051.597;Float;True;MaskingFunction;-1;;122;571aab6f8c08f1c4d9bd4012d2958d88;0;3;21;FLOAT;0;False;30;FLOAT;0;False;25;FLOAT;0;False;3;FLOAT;0;FLOAT;32;FLOAT;28
  81. Node;AmplifyShaderEditor.WireNode;259;751.1093,-323.1091;Float;False;1;0;COLOR;0,0,0,0;False;1;COLOR;0
  82. Node;AmplifyShaderEditor.WireNode;267;2258.375,-352.9496;Float;False;1;0;COLOR;0,0,0,0;False;1;COLOR;0
  83. Node;AmplifyShaderEditor.SimpleMultiplyOpNode;97;2517.466,-570.4297;Float;True;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0
  84. Node;AmplifyShaderEditor.WireNode;264;1722.706,-333.5305;Float;False;1;0;COLOR;0,0,0,0;False;1;COLOR;0
  85. Node;AmplifyShaderEditor.WireNode;262;1257.334,-308.3474;Float;False;1;0;COLOR;0,0,0,0;False;1;COLOR;0
  86. Node;AmplifyShaderEditor.WireNode;265;2727.947,-414.9245;Float;False;1;0;COLOR;0,0,0,0;False;1;COLOR;0
  87. Node;AmplifyShaderEditor.WireNode;263;2701.777,-314.1035;Float;False;1;0;COLOR;0,0,0,0;False;1;COLOR;0
  88. Node;AmplifyShaderEditor.WireNode;261;2733.203,-292.5507;Float;False;1;0;COLOR;0,0,0,0;False;1;COLOR;0
  89. Node;AmplifyShaderEditor.WireNode;266;2704.783,-365.5042;Float;False;1;0;COLOR;0,0,0,0;False;1;COLOR;0
  90. Node;AmplifyShaderEditor.WireNode;260;2743.831,-255.1785;Float;False;1;0;COLOR;0,0,0,0;False;1;COLOR;0
  91. Node;AmplifyShaderEditor.SimpleAddOpNode;82;2889.738,-555.5977;Float;True;5;5;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;COLOR;0,0,0,0;False;3;COLOR;0,0,0,0;False;4;COLOR;0,0,0,0;False;1;COLOR;0
  92. Node;AmplifyShaderEditor.StandardSurfaceOutputNode;0;3335.267,-584.343;Float;False;True;2;Float;ASEMaterialInspector;0;0;Standard;ASESampleShaders/Community/SingleChannelMasking;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;Back;0;False;-1;0;False;-1;False;0;0;False;0;Opaque;0.5;True;True;0;False;Opaque;;Geometry;All;True;True;True;True;True;True;True;True;True;True;True;True;True;True;True;True;True;0;False;-1;False;0;False;-1;255;False;-1;255;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;-1;False;0;4;10;25;False;0.5;True;0;0;False;-1;0;False;-1;0;0;False;-1;0;False;-1;0;False;-1;0;False;-1;0;False;0;0,0,0,0;VertexOffset;True;False;Cylindrical;False;Relative;0;;-1;-1;-1;-1;0;0;0;False;0;0;0;False;-1;-1;16;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;2;FLOAT3;0,0,0;False;3;FLOAT;0;False;4;FLOAT;0;False;5;FLOAT;0;False;6;FLOAT3;0,0,0;False;7;FLOAT3;0,0,0;False;8;FLOAT;0;False;9;FLOAT;0;False;10;FLOAT;0;False;13;FLOAT3;0,0,0;False;11;FLOAT3;0,0,0;False;12;FLOAT3;0,0,0;False;14;FLOAT4;0,0,0,0;False;15;FLOAT3;0,0,0;False;0
  93. WireConnection;313;21;65;1
  94. WireConnection;313;25;253;0
  95. WireConnection;309;21;205;1
  96. WireConnection;309;30;313;32
  97. WireConnection;309;25;313;28
  98. WireConnection;310;21;204;1
  99. WireConnection;310;30;309;32
  100. WireConnection;310;25;309;28
  101. WireConnection;311;21;235;1
  102. WireConnection;311;30;310;32
  103. WireConnection;311;25;310;28
  104. WireConnection;89;0;90;0
  105. WireConnection;89;1;311;0
  106. WireConnection;85;0;88;0
  107. WireConnection;85;1;310;0
  108. WireConnection;84;0;309;0
  109. WireConnection;84;1;87;0
  110. WireConnection;83;0;313;0
  111. WireConnection;83;1;86;0
  112. WireConnection;312;21;241;1
  113. WireConnection;312;30;311;32
  114. WireConnection;312;25;311;28
  115. WireConnection;259;0;83;0
  116. WireConnection;267;0;89;0
  117. WireConnection;97;0;96;0
  118. WireConnection;97;1;312;0
  119. WireConnection;264;0;85;0
  120. WireConnection;262;0;84;0
  121. WireConnection;265;0;97;0
  122. WireConnection;263;0;264;0
  123. WireConnection;261;0;262;0
  124. WireConnection;266;0;267;0
  125. WireConnection;260;0;259;0
  126. WireConnection;82;0;260;0
  127. WireConnection;82;1;261;0
  128. WireConnection;82;2;263;0
  129. WireConnection;82;3;266;0
  130. WireConnection;82;4;265;0
  131. WireConnection;0;0;82;0
  132. ASEEND*/
  133. //CHKSM=47EE34B6E1AFDF53CCDAFEC74E54B2C71F44FE94