Assignment for RMIT Mixed Reality in 2020
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.

273 lines
18 KiB

  1. // Made with Amplify Shader Editor
  2. // Available at the Unity Asset Store - http://u3d.as/y3X
  3. Shader "ASESampleShaders/Water/SimpleWater"
  4. {
  5. Properties
  6. {
  7. _TessValue( "Max Tessellation", Range( 1, 32 ) ) = 16
  8. _WaterNormal("Water Normal", 2D) = "bump" {}
  9. _NormalScale("Normal Scale", Float) = 0
  10. _DeepColor("Deep Color", Color) = (0,0,0,0)
  11. _ShalowColor("Shalow Color", Color) = (1,1,1,0)
  12. _WaterDepth("Water Depth", Float) = 0
  13. _WaterFalloff("Water Falloff", Float) = 0
  14. _WaterSpecular("Water Specular", Float) = 0
  15. _WaterSmoothness("Water Smoothness", Float) = 0
  16. _Distortion("Distortion", Float) = 0.5
  17. _Foam("Foam", 2D) = "white" {}
  18. _FoamDepth("Foam Depth", Float) = 0
  19. _FoamFalloff("Foam Falloff", Float) = 0
  20. _FoamSpecular("Foam Specular", Float) = 0
  21. _FoamSmoothness("Foam Smoothness", Float) = 0
  22. _WavesAmplitude("WavesAmplitude", Float) = 0.1
  23. _WavesAmount("WavesAmount", Float) = 8.87
  24. [HideInInspector] _texcoord( "", 2D ) = "white" {}
  25. [HideInInspector] __dirty( "", Int ) = 1
  26. }
  27. SubShader
  28. {
  29. Tags{ "RenderType" = "Opaque" "Queue" = "Transparent+0" }
  30. Cull Back
  31. GrabPass{ }
  32. CGPROGRAM
  33. #include "UnityShaderVariables.cginc"
  34. #include "UnityStandardUtils.cginc"
  35. #include "UnityCG.cginc"
  36. #pragma target 4.6
  37. #pragma surface surf StandardSpecular keepalpha vertex:vertexDataFunc tessellate:tessFunction
  38. struct Input
  39. {
  40. float2 uv_texcoord;
  41. float4 screenPos;
  42. };
  43. uniform float _WavesAmplitude;
  44. uniform float _WavesAmount;
  45. uniform sampler2D _WaterNormal;
  46. uniform float _NormalScale;
  47. uniform float4 _WaterNormal_ST;
  48. uniform float4 _DeepColor;
  49. uniform float4 _ShalowColor;
  50. uniform sampler2D _CameraDepthTexture;
  51. uniform float4 _CameraDepthTexture_TexelSize;
  52. uniform float _WaterDepth;
  53. uniform float _WaterFalloff;
  54. uniform float _FoamDepth;
  55. uniform float _FoamFalloff;
  56. uniform sampler2D _Foam;
  57. uniform float4 _Foam_ST;
  58. uniform sampler2D _GrabTexture;
  59. uniform float _Distortion;
  60. uniform float _WaterSpecular;
  61. uniform float _FoamSpecular;
  62. uniform float _WaterSmoothness;
  63. uniform float _FoamSmoothness;
  64. uniform float _TessValue;
  65. inline float4 ASE_ComputeGrabScreenPos( float4 pos )
  66. {
  67. #if UNITY_UV_STARTS_AT_TOP
  68. float scale = -1.0;
  69. #else
  70. float scale = 1.0;
  71. #endif
  72. float4 o = pos;
  73. o.y = pos.w * 0.5f;
  74. o.y = ( pos.y - o.y ) * _ProjectionParams.x * scale + o.y;
  75. return o;
  76. }
  77. float4 tessFunction( )
  78. {
  79. return _TessValue;
  80. }
  81. void vertexDataFunc( inout appdata_full v )
  82. {
  83. float3 ase_vertex3Pos = v.vertex.xyz;
  84. float3 ase_vertexNormal = v.normal.xyz;
  85. v.vertex.xyz += ( _WavesAmplitude * ( sin( ( ( _WavesAmount * ase_vertex3Pos.z ) + _Time.y ) ) * ase_vertexNormal ) );
  86. }
  87. void surf( Input i , inout SurfaceOutputStandardSpecular o )
  88. {
  89. float2 uv0_WaterNormal = i.uv_texcoord * _WaterNormal_ST.xy + _WaterNormal_ST.zw;
  90. float2 panner22 = ( 1.0 * _Time.y * float2( -0.03,0 ) + uv0_WaterNormal);
  91. float2 panner19 = ( 1.0 * _Time.y * float2( 0.04,0.04 ) + uv0_WaterNormal);
  92. float3 temp_output_24_0 = BlendNormals( UnpackScaleNormal( tex2D( _WaterNormal, panner22 ), _NormalScale ) , UnpackScaleNormal( tex2D( _WaterNormal, panner19 ), _NormalScale ) );
  93. o.Normal = temp_output_24_0;
  94. float4 ase_screenPos = float4( i.screenPos.xyz , i.screenPos.w + 0.00000000001 );
  95. float4 ase_screenPosNorm = ase_screenPos / ase_screenPos.w;
  96. ase_screenPosNorm.z = ( UNITY_NEAR_CLIP_VALUE >= 0 ) ? ase_screenPosNorm.z : ase_screenPosNorm.z * 0.5 + 0.5;
  97. float eyeDepth1 = LinearEyeDepth(SAMPLE_DEPTH_TEXTURE( _CameraDepthTexture, ase_screenPosNorm.xy ));
  98. float temp_output_89_0 = abs( ( eyeDepth1 - ase_screenPos.w ) );
  99. float temp_output_94_0 = saturate( pow( ( temp_output_89_0 + _WaterDepth ) , _WaterFalloff ) );
  100. float4 lerpResult13 = lerp( _DeepColor , _ShalowColor , temp_output_94_0);
  101. float2 uv0_Foam = i.uv_texcoord * _Foam_ST.xy + _Foam_ST.zw;
  102. float2 panner116 = ( 1.0 * _Time.y * float2( -0.01,0.01 ) + uv0_Foam);
  103. float temp_output_114_0 = ( saturate( pow( ( temp_output_89_0 + _FoamDepth ) , _FoamFalloff ) ) * tex2D( _Foam, panner116 ).r );
  104. float4 lerpResult117 = lerp( lerpResult13 , float4(1,1,1,0) , temp_output_114_0);
  105. float4 ase_grabScreenPos = ASE_ComputeGrabScreenPos( ase_screenPos );
  106. float4 ase_grabScreenPosNorm = ase_grabScreenPos / ase_grabScreenPos.w;
  107. float4 screenColor65 = tex2D( _GrabTexture, ( float3( (ase_grabScreenPosNorm).xy , 0.0 ) + ( temp_output_24_0 * _Distortion ) ).xy );
  108. float4 lerpResult93 = lerp( lerpResult117 , screenColor65 , temp_output_94_0);
  109. o.Albedo = lerpResult93.rgb;
  110. float lerpResult130 = lerp( _WaterSpecular , _FoamSpecular , temp_output_114_0);
  111. float3 temp_cast_3 = (lerpResult130).xxx;
  112. o.Specular = temp_cast_3;
  113. float lerpResult133 = lerp( _WaterSmoothness , _FoamSmoothness , temp_output_114_0);
  114. o.Smoothness = lerpResult133;
  115. o.Alpha = 1;
  116. }
  117. ENDCG
  118. }
  119. Fallback "Diffuse"
  120. CustomEditor "ASEMaterialInspector"
  121. }
  122. /*ASEBEGIN
  123. Version=17006
  124. -1732;-360;1439;793;2136.894;1665.156;3.258802;False;False
  125. Node;AmplifyShaderEditor.CommentaryNode;152;-2053.601,-256.6997;Inherit;False;828.5967;327.1648;Screen depth difference to get intersection and fading effect with terrain and objects;5;2;1;176;89;3;;1,1,1,1;0;0
  126. Node;AmplifyShaderEditor.ScreenPosInputsNode;176;-2016,-192;Float;False;0;False;0;5;FLOAT4;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  127. Node;AmplifyShaderEditor.ScreenDepthNode;1;-1792,-192;Inherit;False;0;True;1;0;FLOAT4;0,0,0,0;False;1;FLOAT;0
  128. Node;AmplifyShaderEditor.ScreenPosInputsNode;2;-1792,-112;Float;False;1;False;0;5;FLOAT4;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  129. Node;AmplifyShaderEditor.SimpleSubtractOpNode;3;-1574.201,-110.3994;Inherit;False;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
  130. Node;AmplifyShaderEditor.AbsOpNode;89;-1389.004,-112.5834;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
  131. Node;AmplifyShaderEditor.CommentaryNode;151;-935.9057,-1082.484;Inherit;False;1281.603;457.1994;Blend panning normals to fake noving ripples;7;19;23;24;21;22;17;48;;1,1,1,1;0;0
  132. Node;AmplifyShaderEditor.WireNode;155;-1106.507,7.515848;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
  133. Node;AmplifyShaderEditor.CommentaryNode;153;-843.9032,402.718;Inherit;False;1083.102;484.2006;Foam controls and texture;9;116;105;106;115;111;110;112;113;114;;1,1,1,1;0;0
  134. Node;AmplifyShaderEditor.TextureCoordinatesNode;21;-885.9058,-1005.185;Inherit;False;0;17;2;3;2;SAMPLER2D;;False;0;FLOAT2;1,1;False;1;FLOAT2;0,0;False;5;FLOAT2;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  135. Node;AmplifyShaderEditor.CommentaryNode;159;-863.7005,-467.5007;Inherit;False;1113.201;508.3005;Depths controls and colors;11;87;94;12;13;156;157;11;88;10;6;143;;1,1,1,1;0;0
  136. Node;AmplifyShaderEditor.PannerNode;19;-610.9061,-919.9849;Inherit;False;3;0;FLOAT2;0,0;False;2;FLOAT2;0.04,0.04;False;1;FLOAT;1;False;1;FLOAT2;0
  137. Node;AmplifyShaderEditor.RangedFloatNode;111;-722.2024,526.6185;Float;False;Property;_FoamDepth;Foam Depth;15;0;Create;True;0;0;False;0;0;0;0;0;0;1;FLOAT;0
  138. Node;AmplifyShaderEditor.WireNode;158;-1075.608,-163.0834;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
  139. Node;AmplifyShaderEditor.PannerNode;22;-613.2062,-1032.484;Inherit;False;3;0;FLOAT2;0,0;False;2;FLOAT2;-0.03,0;False;1;FLOAT;1;False;1;FLOAT2;0
  140. Node;AmplifyShaderEditor.RangedFloatNode;48;-557.3063,-795.3858;Float;False;Property;_NormalScale;Normal Scale;6;0;Create;True;0;0;False;0;0;0.1;0;0;0;1;FLOAT;0
  141. Node;AmplifyShaderEditor.WireNode;154;-922.7065,390.316;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
  142. Node;AmplifyShaderEditor.RangedFloatNode;6;-813.7005,-128.1996;Float;False;Property;_WaterDepth;Water Depth;9;0;Create;True;0;0;False;0;0;1;0;0;0;1;FLOAT;0
  143. Node;AmplifyShaderEditor.RangedFloatNode;10;-636.2005,-79.20019;Float;False;Property;_WaterFalloff;Water Falloff;10;0;Create;True;0;0;False;0;0;-7.65;0;0;0;1;FLOAT;0
  144. Node;AmplifyShaderEditor.SamplerNode;23;-269.2061,-1024.185;Inherit;True;Property;_Normal2;Normal2;5;0;Create;True;0;0;False;0;None;None;True;0;True;bump;Auto;True;Instance;17;Auto;Texture2D;6;0;SAMPLER2D;0,0;False;1;FLOAT2;0,0;False;2;FLOAT;1;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;5;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  145. Node;AmplifyShaderEditor.SimpleAddOpNode;115;-542.0016,452.718;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
  146. Node;AmplifyShaderEditor.TextureCoordinatesNode;106;-793.9032,700.119;Inherit;False;0;105;2;3;2;SAMPLER2D;;False;0;FLOAT2;1,1;False;1;FLOAT2;0,0;False;5;FLOAT2;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  147. Node;AmplifyShaderEditor.RangedFloatNode;112;-531.4025,588.5187;Float;False;Property;_FoamFalloff;Foam Falloff;16;0;Create;True;0;0;False;0;0;51.5;0;0;0;1;FLOAT;0
  148. Node;AmplifyShaderEditor.SamplerNode;17;-256.3054,-814.2847;Inherit;True;Property;_WaterNormal;Water Normal;5;0;Create;True;0;0;False;0;None;dd2fd2df93418444c8e280f1d34deeb5;True;0;True;bump;Auto;True;Object;-1;Auto;Texture2D;6;0;SAMPLER2D;0,0;False;1;FLOAT2;0,0;False;2;FLOAT;1;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;5;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  149. Node;AmplifyShaderEditor.SimpleAddOpNode;88;-632.0056,-204.5827;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
  150. Node;AmplifyShaderEditor.PowerNode;110;-357.2024,461.6185;Inherit;False;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
  151. Node;AmplifyShaderEditor.PannerNode;116;-573.2014,720.3181;Inherit;False;3;0;FLOAT2;0,0;False;2;FLOAT2;-0.01,0.01;False;1;FLOAT;1;False;1;FLOAT2;0
  152. Node;AmplifyShaderEditor.RangedFloatNode;175;1168,-160;Float;False;Property;_WavesAmount;WavesAmount;20;0;Create;True;0;0;False;0;8.87;25;0;0;0;1;FLOAT;0
  153. Node;AmplifyShaderEditor.PosVertexDataNode;168;1104,-64;Inherit;False;0;0;5;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  154. Node;AmplifyShaderEditor.ColorNode;12;-697.5002,-417.5007;Float;False;Property;_DeepColor;Deep Color;7;0;Create;True;0;0;False;0;0,0,0,0;0,0.04310157,0.2499981,0;False;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  155. Node;AmplifyShaderEditor.BlendNormalsNode;24;170.697,-879.6849;Inherit;False;0;3;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;2;FLOAT3;0,0,0;False;1;FLOAT3;0
  156. Node;AmplifyShaderEditor.CommentaryNode;150;467.1957,-1501.783;Inherit;False;985.6011;418.6005;Get screen color for refraction and disturbe it with normals;7;96;97;98;65;149;164;165;;1,1,1,1;0;0
  157. Node;AmplifyShaderEditor.ColorNode;11;-455.0999,-328.3;Float;False;Property;_ShalowColor;Shalow Color;8;0;Create;True;0;0;False;0;1,1,1,0;0,0.8088232,0.8088235,0;False;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  158. Node;AmplifyShaderEditor.PowerNode;87;-455.8059,-118.1832;Inherit;False;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
  159. Node;AmplifyShaderEditor.WireNode;149;487.4943,-1188.882;Inherit;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0
  160. Node;AmplifyShaderEditor.SaturateNode;113;-136.0011,509.618;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
  161. Node;AmplifyShaderEditor.SimpleTimeNode;170;1344,-64;Inherit;False;1;0;FLOAT;1;False;1;FLOAT;0
  162. Node;AmplifyShaderEditor.SimpleMultiplyOpNode;174;1360,-160;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
  163. Node;AmplifyShaderEditor.RangedFloatNode;97;710.096,-1203.183;Float;False;Property;_Distortion;Distortion;13;0;Create;True;0;0;False;0;0.5;0.25;0;0;0;1;FLOAT;0
  164. Node;AmplifyShaderEditor.SamplerNode;105;-304.4021,674.9185;Inherit;True;Property;_Foam;Foam;14;0;Create;True;0;0;False;0;None;d01457b88b1c5174ea4235d140b5fab8;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;6;0;SAMPLER2D;0,0;False;1;FLOAT2;0,0;False;2;FLOAT;1;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
  165. Node;AmplifyShaderEditor.SaturateNode;94;-249.5044,-96.98394;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
  166. Node;AmplifyShaderEditor.WireNode;157;-149.1077,-261.9834;Inherit;False;1;0;COLOR;0,0,0,0;False;1;COLOR;0
  167. Node;AmplifyShaderEditor.GrabScreenPosition;164;511.3026,-1442.425;Inherit;False;0;0;5;FLOAT4;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  168. Node;AmplifyShaderEditor.WireNode;156;-151.0076,-354.5834;Inherit;False;1;0;COLOR;0,0,0,0;False;1;COLOR;0
  169. Node;AmplifyShaderEditor.SimpleAddOpNode;171;1536,-160;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
  170. Node;AmplifyShaderEditor.ComponentMaskNode;165;814.6503,-1385.291;Inherit;False;True;True;False;False;1;0;FLOAT4;0,0,0,0;False;1;FLOAT2;0
  171. Node;AmplifyShaderEditor.SimpleMultiplyOpNode;114;80.19891,604.0181;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
  172. Node;AmplifyShaderEditor.LerpOp;13;60.50008,-220.6998;Inherit;False;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;FLOAT;0;False;1;COLOR;0
  173. Node;AmplifyShaderEditor.SimpleMultiplyOpNode;98;888.1974,-1279.783;Inherit;False;2;2;0;FLOAT3;0,0,0;False;1;FLOAT;0;False;1;FLOAT3;0
  174. Node;AmplifyShaderEditor.ColorNode;108;58.99682,146.0182;Float;False;Constant;_Color0;Color 0;-1;0;Create;True;0;0;False;0;1,1,1,0;0,0,0,0;False;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  175. Node;AmplifyShaderEditor.NormalVertexDataNode;167;1664,-48;Inherit;False;0;5;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  176. Node;AmplifyShaderEditor.SinOpNode;166;1680,-160;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
  177. Node;AmplifyShaderEditor.WireNode;143;95.69542,-321.0839;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
  178. Node;AmplifyShaderEditor.LerpOp;117;323.797,77.91843;Inherit;False;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;FLOAT;0;False;1;COLOR;0
  179. Node;AmplifyShaderEditor.SimpleAddOpNode;96;1041.296,-1346.683;Inherit;False;2;2;0;FLOAT2;0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT3;0
  180. Node;AmplifyShaderEditor.RangedFloatNode;26;672,-272;Float;False;Property;_WaterSmoothness;Water Smoothness;12;0;Create;True;0;0;False;0;0;1;0;0;0;1;FLOAT;0
  181. Node;AmplifyShaderEditor.SimpleMultiplyOpNode;169;1872,-176;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT3;0,0,0;False;1;FLOAT3;0
  182. Node;AmplifyShaderEditor.WireNode;162;1312.293,-894.3823;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0
  183. Node;AmplifyShaderEditor.WireNode;161;660.4934,-750.6837;Inherit;False;1;0;COLOR;0,0,0,0;False;1;COLOR;0
  184. Node;AmplifyShaderEditor.ScreenColorNode;65;1232.797,-1350.483;Float;False;Global;_WaterGrab;WaterGrab;-1;0;Create;True;0;0;False;0;Object;-1;False;False;1;0;FLOAT2;0,0;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
  185. Node;AmplifyShaderEditor.RangedFloatNode;132;672,-192;Float;False;Property;_FoamSmoothness;Foam Smoothness;18;0;Create;True;0;0;False;0;0;0;0;0;0;1;FLOAT;0
  186. Node;AmplifyShaderEditor.RangedFloatNode;173;1744,-304;Float;False;Property;_WavesAmplitude;WavesAmplitude;19;0;Create;True;0;0;False;0;0.1;0.05;0;0;0;1;FLOAT;0
  187. Node;AmplifyShaderEditor.RangedFloatNode;131;720,-480;Float;False;Property;_FoamSpecular;Foam Specular;17;0;Create;True;0;0;False;0;0;0;0;0;0;1;FLOAT;0
  188. Node;AmplifyShaderEditor.RangedFloatNode;104;720,-576;Float;False;Property;_WaterSpecular;Water Specular;11;0;Create;True;0;0;False;0;0;0.1;0;0;0;1;FLOAT;0
  189. Node;AmplifyShaderEditor.LerpOp;130;928,-480;Inherit;False;3;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;0;False;1;FLOAT;0
  190. Node;AmplifyShaderEditor.LerpOp;133;944,-256;Inherit;False;3;0;FLOAT;0;False;1;FLOAT;0;False;2;FLOAT;0;False;1;FLOAT;0
  191. Node;AmplifyShaderEditor.LerpOp;93;1559.196,-1006.285;Inherit;False;3;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;2;FLOAT;0;False;1;COLOR;0
  192. Node;AmplifyShaderEditor.SimpleMultiplyOpNode;172;2048,-432;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT3;0,0,0;False;1;FLOAT3;0
  193. Node;AmplifyShaderEditor.StandardSurfaceOutputNode;0;2256,-720;Float;False;True;6;ASEMaterialInspector;0;0;StandardSpecular;ASESampleShaders/Water/SimpleWater;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;Back;0;False;-1;3;False;-1;False;0;False;-1;0;False;-1;False;0;Translucent;0.5;True;False;0;False;Opaque;;Transparent;All;14;all;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;True;1;16;10;25;False;0.5;True;0;0;False;-1;0;False;-1;0;0;False;-1;0;False;-1;1;False;-1;1;False;-1;0;False;0;0,0,0,0;VertexOffset;True;False;Cylindrical;False;Relative;0;;-1;-1;-1;0;0;False;0;0;False;-1;-1;0;False;-1;0;0;0;False;0.1;False;-1;0;False;-1;16;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;2;FLOAT3;0,0,0;False;3;FLOAT3;0,0,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
  194. WireConnection;1;0;176;0
  195. WireConnection;3;0;1;0
  196. WireConnection;3;1;2;4
  197. WireConnection;89;0;3;0
  198. WireConnection;155;0;89;0
  199. WireConnection;19;0;21;0
  200. WireConnection;158;0;89;0
  201. WireConnection;22;0;21;0
  202. WireConnection;154;0;155;0
  203. WireConnection;23;1;22;0
  204. WireConnection;23;5;48;0
  205. WireConnection;115;0;154;0
  206. WireConnection;115;1;111;0
  207. WireConnection;17;1;19;0
  208. WireConnection;17;5;48;0
  209. WireConnection;88;0;158;0
  210. WireConnection;88;1;6;0
  211. WireConnection;110;0;115;0
  212. WireConnection;110;1;112;0
  213. WireConnection;116;0;106;0
  214. WireConnection;24;0;23;0
  215. WireConnection;24;1;17;0
  216. WireConnection;87;0;88;0
  217. WireConnection;87;1;10;0
  218. WireConnection;149;0;24;0
  219. WireConnection;113;0;110;0
  220. WireConnection;174;0;175;0
  221. WireConnection;174;1;168;3
  222. WireConnection;105;1;116;0
  223. WireConnection;94;0;87;0
  224. WireConnection;157;0;11;0
  225. WireConnection;156;0;12;0
  226. WireConnection;171;0;174;0
  227. WireConnection;171;1;170;0
  228. WireConnection;165;0;164;0
  229. WireConnection;114;0;113;0
  230. WireConnection;114;1;105;1
  231. WireConnection;13;0;156;0
  232. WireConnection;13;1;157;0
  233. WireConnection;13;2;94;0
  234. WireConnection;98;0;149;0
  235. WireConnection;98;1;97;0
  236. WireConnection;166;0;171;0
  237. WireConnection;143;0;94;0
  238. WireConnection;117;0;13;0
  239. WireConnection;117;1;108;0
  240. WireConnection;117;2;114;0
  241. WireConnection;96;0;165;0
  242. WireConnection;96;1;98;0
  243. WireConnection;169;0;166;0
  244. WireConnection;169;1;167;0
  245. WireConnection;162;0;143;0
  246. WireConnection;161;0;117;0
  247. WireConnection;65;0;96;0
  248. WireConnection;130;0;104;0
  249. WireConnection;130;1;131;0
  250. WireConnection;130;2;114;0
  251. WireConnection;133;0;26;0
  252. WireConnection;133;1;132;0
  253. WireConnection;133;2;114;0
  254. WireConnection;93;0;161;0
  255. WireConnection;93;1;65;0
  256. WireConnection;93;2;162;0
  257. WireConnection;172;0;173;0
  258. WireConnection;172;1;169;0
  259. WireConnection;0;0;93;0
  260. WireConnection;0;1;24;0
  261. WireConnection;0;3;130;0
  262. WireConnection;0;4;133;0
  263. WireConnection;0;11;172;0
  264. ASEEND*/
  265. //CHKSM=DDC1E6DF1C4FD719A76ECAD9AA2403045217817C