diff options
Diffstat (limited to 'Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews')
380 files changed, 13550 insertions, 0 deletions
diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/IndirectSpecularPreview.exr b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/IndirectSpecularPreview.exr Binary files differnew file mode 100644 index 00000000..90154e84 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/IndirectSpecularPreview.exr diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/IndirectSpecularPreview.exr.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/IndirectSpecularPreview.exr.meta new file mode 100644 index 00000000..fd585500 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/IndirectSpecularPreview.exr.meta @@ -0,0 +1,69 @@ +fileFormatVersion: 2 +guid: ef7513b54a0670140b9b967af7620563 +timeCreated: 1512052044 +licenseType: Store +TextureImporter: + fileIDToRecycleName: + 8900000: generatedCubemap + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 1 + seamlessCubemap: 1 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + filterMode: 2 + aniso: 0 + mipBias: 0 + wrapMode: 1 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 2 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 100 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/LinearPreviews.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/LinearPreviews.shader new file mode 100644 index 00000000..077ef3a9 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/LinearPreviews.shader @@ -0,0 +1,232 @@ +Shader "Hidden/LinearMaterial" +{ + Properties + { + _MainTex( "Texture", any ) = "" {} + _BackGround( "Back", 2D) = "white" {} + } + + SubShader + { + Lighting Off + Blend SrcAlpha OneMinusSrcAlpha + Cull Off + ZWrite Off + ZTest Always + + + Pass { + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #pragma target 2.0 + + #include "UnityCG.cginc" + + sampler2D _MainTex; + uniform float4 _MainTex_ST; + float4 _Mask; + + uniform float4x4 unity_GUIClipTextureMatrix; + sampler2D _GUIClipTexture; + + struct appdata_t { + float4 vertex : POSITION; + float2 texcoord : TEXCOORD0; + }; + + struct v2f { + float4 vertex : SV_POSITION; + float2 texcoord : TEXCOORD0; + float2 clipUV : TEXCOORD1; + }; + + v2f vert( appdata_t v ) + { + v2f o; + o.vertex = UnityObjectToClipPos( v.vertex ); + o.texcoord = TRANSFORM_TEX( v.texcoord.xy, _MainTex ); + float3 eyePos = UnityObjectToViewPos( v.vertex ); + o.clipUV = mul( unity_GUIClipTextureMatrix, float4( eyePos.xy, 0, 1.0 ) ); + return o; + } + + fixed4 frag( v2f i ) : SV_Target + { + float4 c = tex2D( _MainTex, i.texcoord ); + c.rgb *= _Mask.rgb; + + c.a = tex2D( _GUIClipTexture, i.clipUV ).a; + return c; + } + ENDCG + } + + Pass { // sphere preview = true, alpha mask = false + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #pragma target 2.0 + + #include "UnityCG.cginc" + + sampler2D _MainTex; + uniform float4 _MainTex_ST; + float _InvertedZoom; + float4 _Mask; + + uniform float4x4 unity_GUIClipTextureMatrix; + sampler2D _GUIClipTexture; + + struct appdata_t { + float4 vertex : POSITION; + float2 texcoord : TEXCOORD0; + }; + + struct v2f { + float4 vertex : SV_POSITION; + float2 texcoord : TEXCOORD0; + float2 clipUV : TEXCOORD1; + }; + + v2f vert( appdata_t v ) + { + v2f o; + o.vertex = UnityObjectToClipPos( v.vertex ); + o.texcoord = TRANSFORM_TEX( v.texcoord.xy, _MainTex ); + float3 eyePos = UnityObjectToViewPos( v.vertex ); + o.clipUV = mul( unity_GUIClipTextureMatrix, float4( eyePos.xy, 0, 1.0 ) ); + return o; + } + + fixed4 frag( v2f i ) : SV_Target + { + float2 p = 2 * i.texcoord - 1; + float r = sqrt( dot( p,p ) ); + + float alpha = saturate( ( 1 - r )*( 45 * _InvertedZoom + 5 ) ); + + float4 c = tex2D( _MainTex, i.texcoord ); + c.rgb *= _Mask.rgb; + + c.rgb *= alpha; + + c.a = tex2D( _GUIClipTexture, i.clipUV ).a; + return c; + } + ENDCG + } + + Pass { + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #pragma target 2.0 + + #include "UnityCG.cginc" + + sampler2D _MainTex; + sampler2D _BackGround; + uniform float4 _MainTex_ST; + uniform float4 _BackGround_ST; + float _InvertedZoom; + float4 _Mask; + + uniform float4x4 unity_GUIClipTextureMatrix; + sampler2D _GUIClipTexture; + + struct appdata_t { + float4 vertex : POSITION; + float2 texcoord : TEXCOORD0; + }; + + struct v2f { + float4 vertex : SV_POSITION; + float2 texcoord : TEXCOORD0; + float2 clipUV : TEXCOORD1; + }; + + v2f vert( appdata_t v ) + { + v2f o; + o.vertex = UnityObjectToClipPos( v.vertex ); + o.texcoord = TRANSFORM_TEX( v.texcoord.xy, _MainTex ); + float3 eyePos = UnityObjectToViewPos( v.vertex ); + o.clipUV = mul( unity_GUIClipTextureMatrix, float4( eyePos.xy, 0, 1.0 ) ); + return o; + } + + fixed4 frag( v2f i ) : SV_Target + { + float3 back = tex2D( _BackGround, ( i.texcoord * 2 - 1 ) * _InvertedZoom).b; + + float4 c = tex2D( _MainTex, i.texcoord ); + c.rgb *= _Mask.rgb; + c.rgb = lerp( back, c.rgb, c.a ); + + c.a = tex2D( _GUIClipTexture, i.clipUV ).a; + return c; + } + ENDCG + } + + Pass { + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #pragma target 2.0 + + #include "UnityCG.cginc" + + sampler2D _MainTex; + sampler2D _BackGround; + uniform float4 _MainTex_ST; + uniform float4 _BackGround_ST; + float _InvertedZoom; + float4 _Mask; + + uniform float4x4 unity_GUIClipTextureMatrix; + sampler2D _GUIClipTexture; + + struct appdata_t { + float4 vertex : POSITION; + float2 texcoord : TEXCOORD0; + }; + + struct v2f { + float4 vertex : SV_POSITION; + float2 texcoord : TEXCOORD0; + float2 clipUV : TEXCOORD1; + }; + + v2f vert( appdata_t v ) + { + v2f o; + o.vertex = UnityObjectToClipPos( v.vertex ); + o.texcoord = TRANSFORM_TEX( v.texcoord.xy, _MainTex ); + float3 eyePos = UnityObjectToViewPos( v.vertex ); + o.clipUV = mul( unity_GUIClipTextureMatrix, float4( eyePos.xy, 0, 1.0 ) ); + return o; + } + + fixed4 frag( v2f i ) : SV_Target + { + float2 p = 2 * i.texcoord - 1; + float3 back = tex2D( _BackGround, p * _InvertedZoom).b; + float r = sqrt( dot( p,p ) ); + + float alpha = saturate( ( 1 - r )*( 45 * _InvertedZoom + 5 ) ); + + float4 c = 0; + c = tex2D( _MainTex, i.texcoord ); + c.rgb *= _Mask.rgb; + c.rgb = lerp( back, c.rgb, c.a * alpha); + + c.a = tex2D( _GUIClipTexture, i.clipUV ).a; + return c; + } + ENDCG + } + } + Fallback Off +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/LinearPreviews.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/LinearPreviews.shader.meta new file mode 100644 index 00000000..03bf6e56 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/LinearPreviews.shader.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e90ef6ea05743b84baf9549874c52e47 +timeCreated: 1489078120 +licenseType: Store +ShaderImporter: + defaultTextures: + - _MainTex: {instanceID: 0} + - _BackGround: {fileID: 2800000, guid: 750b1bd7ba8bd28489650de6d0a95cc5, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ACosOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ACosOpNode.shader new file mode 100644 index 00000000..a06859d0 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ACosOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/ACosOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return acos(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ACosOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ACosOpNode.shader.meta new file mode 100644 index 00000000..8cb6d6a6 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ACosOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 710f3c0bbd7ba0c4aada6d7dfadd49c2 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ASinOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ASinOpNode.shader new file mode 100644 index 00000000..8273b040 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ASinOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/ASinOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return asin(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ASinOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ASinOpNode.shader.meta new file mode 100644 index 00000000..69d34bac --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ASinOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 2b016c135284add4cb3364d4a0bd0638 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ATan2OpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ATan2OpNode.shader new file mode 100644 index 00000000..f15dbcd1 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ATan2OpNode.shader @@ -0,0 +1,29 @@ +Shader "Hidden/ATan2OpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + return atan2(a, b); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ATan2OpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ATan2OpNode.shader.meta new file mode 100644 index 00000000..fc57c1ad --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ATan2OpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 02e3ff61784e38840af6313936b6a730 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ATanOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ATanOpNode.shader new file mode 100644 index 00000000..acc5cdba --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ATanOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/ATanOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return atan(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ATanOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ATanOpNode.shader.meta new file mode 100644 index 00000000..178006ab --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ATanOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 7d7f3331a98831241b017364e80625ea +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_AbsOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_AbsOpNode.shader new file mode 100644 index 00000000..ecff53d0 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_AbsOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/AbsOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return abs(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_AbsOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_AbsOpNode.shader.meta new file mode 100644 index 00000000..43b75957 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_AbsOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: cd6d6dfa3df214a479f68a490e177db6 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_AppendNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_AppendNode.shader new file mode 100644 index 00000000..f91228b2 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_AppendNode.shader @@ -0,0 +1,36 @@ +Shader "Hidden/AppendNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + _C ("_C", 2D) = "white" {} + _D ("_D", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + + float4 frag(v2f_img i) : SV_Target + { + float x = tex2D(_A, i.uv).x; + float y = tex2D(_B, i.uv).y; + float z = tex2D(_C, i.uv).z; + float w = tex2D(_D, i.uv).w; + + return float4(x,y,z,w); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_AppendNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_AppendNode.shader.meta new file mode 100644 index 00000000..fc3d21e6 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_AppendNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: d80ac81aabf643848a4eaa76f2f88d65 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_BlendNormalsNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_BlendNormalsNode.shader new file mode 100644 index 00000000..0d1c0182 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_BlendNormalsNode.shader @@ -0,0 +1,31 @@ +Shader "Hidden/BlendNormalsNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #pragma target 3.0 + #include "UnityCG.cginc" + #include "UnityStandardUtils.cginc" + + sampler2D _A; + sampler2D _B; + + float4 frag(v2f_img i) : SV_Target + { + float3 a = tex2D( _A, i.uv ).rgb; + float3 b = tex2D( _B, i.uv ).rgb; + return float4(BlendNormals(a, b), 0); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_BlendNormalsNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_BlendNormalsNode.shader.meta new file mode 100644 index 00000000..fac57de2 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_BlendNormalsNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: bcdf750ff5f70444f98b8a3efa50dc6f +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_BlendOpsNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_BlendOpsNode.shader new file mode 100644 index 00000000..80665118 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_BlendOpsNode.shader @@ -0,0 +1,601 @@ +Shader "Hidden/BlendOpsNode" +{ + Properties + { + _A ("_Source", 2D) = "white" {} + _B ("_Destiny", 2D) = "white" {} + _C ("_Alpha", 2D) = "white" {} + } + SubShader + { + Pass //colorburn + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + int _Sat; + int _Lerp; + + float4 frag(v2f_img i) : SV_Target + { + float4 src = tex2D( _A, i.uv ); + float4 des = tex2D( _B, i.uv ); + + float4 c = ( ( 1.0 - ( ( 1.0 - des) / max( src,0.00001)) ) ); + if (_Lerp == 1) + { + float alpha = tex2D (_C, i.uv).r; + c = lerp(des, c, alpha); + } + + if( _Sat == 1 ) + c = saturate( c ); + return c; + } + ENDCG + } + + Pass //colordodge + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + int _Sat; + int _Lerp; + + float4 frag(v2f_img i) : SV_Target + { + float4 src = tex2D( _A, i.uv ); + float4 des = tex2D( _B, i.uv ); + + float4 c = ( ( des/ max( 1.0 - src,0.00001 ) ) ); + if (_Lerp == 1) + { + float alpha = tex2D (_C, i.uv).r; + c = lerp (des, c, alpha); + } + if( _Sat == 1 ) + c = saturate( c ); + return c; + } + ENDCG + } + + Pass //darken + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + int _Sat; + int _Lerp; + + float4 frag(v2f_img i) : SV_Target + { + float4 src = tex2D( _A, i.uv ); + float4 des = tex2D( _B, i.uv ); + + float4 c = ( min( src , des ) ); + if (_Lerp == 1) + { + float alpha = tex2D (_C, i.uv).r; + c = lerp (des, c, alpha); + } + if( _Sat == 1 ) + c = saturate( c ); + return c; + } + ENDCG + } + + Pass //divide + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + int _Sat; + int _Lerp; + + float4 frag(v2f_img i) : SV_Target + { + float4 src = tex2D( _A, i.uv ); + float4 des = tex2D( _B, i.uv ); + + float4 c = ( ( des / max( src,0.00001) ) ); + if (_Lerp == 1) + { + float alpha = tex2D (_C, i.uv).r; + c = lerp (des, c, alpha); + } + if( _Sat == 1 ) + c = saturate( c ); + return c; + } + ENDCG + } + + Pass //difference + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + int _Sat; + int _Lerp; + + float4 frag(v2f_img i) : SV_Target + { + float4 src = tex2D( _A, i.uv ); + float4 des = tex2D( _B, i.uv ); + + float4 c = ( abs( src - des ) ); + if (_Lerp == 1) + { + float alpha = tex2D (_C, i.uv).r; + c = lerp (des, c, alpha); + } + if( _Sat == 1 ) + c = saturate( c ); + return c; + } + ENDCG + } + + Pass //exclusion + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + int _Sat; + int _Lerp; + + float4 frag(v2f_img i) : SV_Target + { + float4 src = tex2D( _A, i.uv ); + float4 des = tex2D( _B, i.uv ); + + float4 c = ( ( 0.5 - 2.0 * ( src - 0.5 ) * ( des - 0.5 ) ) ); + if (_Lerp == 1) + { + float alpha = tex2D (_C, i.uv).r; + c = lerp (des, c, alpha); + } + if( _Sat == 1 ) + c = saturate( c ); + return c; + } + ENDCG + } + + Pass //softlight + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + int _Sat; + int _Lerp; + + float4 frag(v2f_img i) : SV_Target + { + float4 src = tex2D( _A, i.uv ); + float4 des = tex2D( _B, i.uv ); + + float4 c = ( 2.0f*src*des + des*des*(1.0f - 2.0f*src) ); + if (_Lerp == 1) + { + float alpha = tex2D (_C, i.uv).r; + c = lerp (des, c, alpha); + } + if( _Sat == 1 ) + c = saturate( c ); + return c; + } + ENDCG + } + + Pass //hardlight + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + int _Sat; + int _Lerp; + + float4 frag(v2f_img i) : SV_Target + { + float4 src = tex2D( _A, i.uv ); + float4 des = tex2D( _B, i.uv ); + + float4 c = ( ( src > 0.5 ? ( 1.0 - ( 1.0 - 2.0 * ( src - 0.5 ) ) * ( 1.0 - des ) ) : ( 2.0 * src * des ) ) ); + if (_Lerp == 1) + { + float alpha = tex2D (_C, i.uv).r; + c = lerp (des, c, alpha); + } + if( _Sat == 1 ) + c = saturate( c ); + return c; + } + ENDCG + } + + Pass //hardmix + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + int _Sat; + int _Lerp; + + float4 frag(v2f_img i) : SV_Target + { + float4 src = tex2D( _A, i.uv ); + float4 des = tex2D( _B, i.uv ); + + float4 c = ( round( 0.5 * ( src + des ) ) ); + if (_Lerp == 1) + { + float alpha = tex2D (_C, i.uv).r; + c = lerp (des, c, alpha); + } + if( _Sat == 1 ) + c = saturate( c ); + return c; + } + ENDCG + } + + Pass //lighten + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + int _Sat; + int _Lerp; + + float4 frag(v2f_img i) : SV_Target + { + float4 src = tex2D( _A, i.uv ); + float4 des = tex2D( _B, i.uv ); + + float4 c = ( max( src, des ) ); + if (_Lerp == 1) + { + float alpha = tex2D (_C, i.uv).r; + c = lerp (des, c, alpha); + } + if( _Sat == 1 ) + c = saturate( c ); + return c; + } + ENDCG + } + + Pass //linearburn + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + int _Sat; + int _Lerp; + + float4 frag(v2f_img i) : SV_Target + { + float4 src = tex2D( _A, i.uv ); + float4 des = tex2D( _B, i.uv ); + + float4 c = ( ( src + des - 1.0 ) ); + if (_Lerp == 1) + { + float alpha = tex2D (_C, i.uv).r; + c = lerp (des, c, alpha); + } + if( _Sat == 1 ) + c = saturate( c ); + return c; + } + ENDCG + } + + Pass //lineardodge + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + int _Sat; + int _Lerp; + + float4 frag(v2f_img i) : SV_Target + { + float4 src = tex2D( _A, i.uv ); + float4 des = tex2D( _B, i.uv ); + + float4 c = ( ( src + des ) ); + if (_Lerp == 1) + { + float alpha = tex2D (_C, i.uv).r; + c = lerp (des, c, alpha); + } + if( _Sat == 1 ) + c = saturate( c ); + return c; + } + ENDCG + } + + Pass //linearlight + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + int _Sat; + int _Lerp; + + float4 frag(v2f_img i) : SV_Target + { + float4 src = tex2D( _A, i.uv ); + float4 des = tex2D( _B, i.uv ); + + float4 c = ( ( src > 0.5 ? ( des + 2.0 * src - 1.0 ) : ( des + 2.0 * ( src - 0.5 ) ) ) ); + if (_Lerp == 1) + { + float alpha = tex2D (_C, i.uv).r; + c = lerp (des, c, alpha); + } + if( _Sat == 1 ) + c = saturate( c ); + return c; + } + ENDCG + } + + Pass //multiply + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + int _Sat; + int _Lerp; + + float4 frag(v2f_img i) : SV_Target + { + float4 src = tex2D( _A, i.uv ); + float4 des = tex2D( _B, i.uv ); + + float4 c = ( ( src * des ) ); + if (_Lerp == 1) + { + float alpha = tex2D (_C, i.uv).r; + c = lerp (des, c, alpha); + } + if( _Sat == 1 ) + c = saturate( c ); + return c; + } + ENDCG + } + + Pass //overlay + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + int _Sat; + int _Lerp; + + float4 frag(v2f_img i) : SV_Target + { + float4 src = tex2D( _A, i.uv ); + float4 des = tex2D( _B, i.uv ); + + float4 c = ( ( des > 0.5 ? ( 1.0 - 2.0 * ( 1.0 - des ) * ( 1.0 - src ) ) : ( 2.0 * des * src ) ) ); + if (_Lerp == 1) + { + float alpha = tex2D (_C, i.uv).r; + c = lerp (des, c, alpha); + } + if( _Sat == 1 ) + c = saturate( c ); + return c; + } + ENDCG + } + + Pass //pinlight + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + int _Sat; + int _Lerp; + + float4 frag(v2f_img i) : SV_Target + { + float4 src = tex2D( _A, i.uv ); + float4 des = tex2D( _B, i.uv ); + + float4 c = ( ( src > 0.5 ? max( des, 2.0 * ( src - 0.5 ) ) : min( des, 2.0 * src ) ) ); + if (_Lerp == 1) + { + float alpha = tex2D (_C, i.uv).r; + c = lerp (des, c, alpha); + } + if( _Sat == 1 ) + c = saturate( c ); + return c; + } + ENDCG + } + + Pass //subtract + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + int _Sat; + int _Lerp; + + float4 frag(v2f_img i) : SV_Target + { + float4 src = tex2D( _A, i.uv ); + float4 des = tex2D( _B, i.uv ); + + float4 c = ( ( des - src ) ); + if (_Lerp == 1) + { + float alpha = tex2D (_C, i.uv).r; + c = lerp (des, c, alpha); + } + if( _Sat == 1 ) + c = saturate( c ); + return c; + } + ENDCG + } + + Pass //screen + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + int _Sat; + int _Lerp; + + float4 frag(v2f_img i) : SV_Target + { + float4 src = tex2D( _A, i.uv ); + float4 des = tex2D( _B, i.uv ); + + float4 c = ( ( 1.0 - ( 1.0 - src ) * ( 1.0 - des ) ) ); + if (_Lerp == 1) + { + float alpha = tex2D (_C, i.uv).r; + c = lerp (des, c, alpha); + } + if( _Sat == 1 ) + c = saturate( c ); + return c; + } + ENDCG + } + + Pass //vividlight + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + int _Sat; + int _Lerp; + + float4 frag(v2f_img i) : SV_Target + { + float4 src = tex2D( _A, i.uv ); + float4 des = tex2D( _B, i.uv ); + + float4 c = ( ( src > 0.5 ? ( des / max( ( 1.0 - src ) * 2.0 ,0.00001) ) : ( 1.0 - ( ( ( 1.0 - des ) * 0.5 ) / max(src,0.00001) ) ) ) ); + if (_Lerp == 1) + { + float alpha = tex2D (_C, i.uv).r; + c = lerp (des, c, alpha); + } + if( _Sat == 1 ) + c = saturate( c ); + return c; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_BlendOpsNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_BlendOpsNode.shader.meta new file mode 100644 index 00000000..37d0722b --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_BlendOpsNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 6d6b3518705b3ba49acdc6e18e480257 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_BreakToComponentsNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_BreakToComponentsNode.shader new file mode 100644 index 00000000..e6306b59 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_BreakToComponentsNode.shader @@ -0,0 +1,73 @@ +Shader "Hidden/BreakToComponentsNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return tex2D( _A, i.uv ).x; + } + ENDCG + } + + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return tex2D( _A, i.uv ).y; + } + ENDCG + } + + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return tex2D( _A, i.uv ).z; + } + ENDCG + } + + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return tex2D( _A, i.uv ).w; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_BreakToComponentsNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_BreakToComponentsNode.shader.meta new file mode 100644 index 00000000..05a23744 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_BreakToComponentsNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 5f58f74a202ba804daddec838b75207d +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CeilOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CeilOpNode.shader new file mode 100644 index 00000000..7065d1e4 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CeilOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/CeilOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return ceil(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CeilOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CeilOpNode.shader.meta new file mode 100644 index 00000000..e278da28 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CeilOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: ce0588227a766a245a85291977c1f222 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ClampOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ClampOpNode.shader new file mode 100644 index 00000000..df9318ec --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ClampOpNode.shader @@ -0,0 +1,33 @@ +Shader "Hidden/ClampOpNode" +{ + Properties + { + _A ("_Value", 2D) = "white" {} + _B ("_Min", 2D) = "white" {} + _C ("_Max", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + + float4 frag(v2f_img i) : SV_Target + { + float4 value = tex2D( _A, i.uv ); + float4 min = tex2D( _B, i.uv ); + float4 max = tex2D( _C, i.uv ); + + return clamp(value, min, max); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ClampOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ClampOpNode.shader.meta new file mode 100644 index 00000000..aedd754d --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ClampOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: ab6163c4b10bfc84da8e3c486520490a +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Clip.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Clip.shader new file mode 100644 index 00000000..47bd6e09 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Clip.shader @@ -0,0 +1,35 @@ +Shader "Hidden/Clip" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + _C ("_C", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + float4 c = tex2D( _C, i.uv ); + + clip(b - c); + + return a; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Clip.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Clip.shader.meta new file mode 100644 index 00000000..637c32a4 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Clip.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 1fca7774f364aee4d8c64e8634ef4be4 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ClipPlanes.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ClipPlanes.shader new file mode 100644 index 00000000..59f55435 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ClipPlanes.shader @@ -0,0 +1,25 @@ +Shader "Hidden/ClipPlanes" +{ + Properties + { + _PlaneId ("_PlaneId", Int) = 0 + } + + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + int _PlaneId; + float4 frag( v2f_img i ) : SV_Target + { + return unity_CameraWorldClipPlanes[_PlaneId]; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ClipPlanes.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ClipPlanes.shader.meta new file mode 100644 index 00000000..7de7975e --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ClipPlanes.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 6afe5a4ad7bbd0e4ab352c758f543a09 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ColorNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ColorNode.shader new file mode 100644 index 00000000..4663c496 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ColorNode.shader @@ -0,0 +1,24 @@ +Shader "Hidden/ColorNode" +{ + Properties { + _InputColor ("_InputColor", Color) = (0,0,0,0) + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + float4 _InputColor; + + float4 frag( v2f_img i ) : SV_Target + { + return _InputColor; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ColorNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ColorNode.shader.meta new file mode 100644 index 00000000..27cfeaf0 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ColorNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 6cf365ccc7ae776488ae8960d6d134c3 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ColorSpaceDouble.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ColorSpaceDouble.shader new file mode 100644 index 00000000..c27833a2 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ColorSpaceDouble.shader @@ -0,0 +1,19 @@ +Shader "Hidden/ColorSpaceDouble" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag( v2f_img i ) : SV_Target + { + return unity_ColorSpaceDouble; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ColorSpaceDouble.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ColorSpaceDouble.shader.meta new file mode 100644 index 00000000..66ba194e --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ColorSpaceDouble.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: ac680a8772bb97c46851a7f075fd04e3 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Compare.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Compare.shader new file mode 100644 index 00000000..7a3009bb --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Compare.shader @@ -0,0 +1,48 @@ +Shader "Hidden/TFHCCompareEqual" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + _C ("_True", 2D) = "white" {} + _D ( "_False", 2D ) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + int _Operator; + + float4 frag(v2f_img i) : SV_Target + { + float A = tex2D( _A, i.uv ).x; + float B = tex2D( _B, i.uv ).x; + float4 True = tex2D( _C, i.uv ); + float4 False = tex2D ( _D, i.uv ); + + if( _Operator == 0 ) + return ( ( A == B ) ? True : False ); + else if( _Operator == 1 ) + return ( ( A != B ) ? True : False ); + else if( _Operator == 2 ) + return ( ( A > B ) ? True : False ); + else if( _Operator == 3 ) + return ( ( A >= B ) ? True : False ); + else if( _Operator == 4 ) + return ( ( A < B ) ? True : False ); + else + return ( ( A <= B ) ? True : False ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Compare.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Compare.shader.meta new file mode 100644 index 00000000..9e2ee0ea --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Compare.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 381937898f0c15747af1da09a751890c +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ComponentMaskNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ComponentMaskNode.shader new file mode 100644 index 00000000..b607639b --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ComponentMaskNode.shader @@ -0,0 +1,62 @@ +Shader "Hidden/ComponentMaskNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + float _Singular; + float4 _Order; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 r = 0; + if(_Singular == 0) + r = a.x; + else if(_Singular == 1) + r = a.y; + else if(_Singular == 2) + r = a.z; + else if(_Singular == 3) + r = a.w; + + if ( _Order.x == 0 ) + r.x = a.x; + else if(_Order.y == 0) + r.x = a.y; + else if(_Order.z == 0) + r.x = a.z; + else if(_Order.w == 0) + r.x = a.w; + + if(_Order.y == 1) + r.y = a.y; + else if(_Order.z == 1) + r.y = a.z; + else if(_Order.w == 1) + r.y = a.w; + + if(_Order.z == 2) + r.z = a.z; + else if(_Order.w == 2) + r.z = a.w; + + if(_Order.w == 3) + r.w = a.w; + + return r; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ComponentMaskNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ComponentMaskNode.shader.meta new file mode 100644 index 00000000..a019f585 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ComponentMaskNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: b78e2b295c265cd439c80d218fb3e88e +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ComputeScreenPos.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ComputeScreenPos.shader new file mode 100644 index 00000000..175ae3ba --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ComputeScreenPos.shader @@ -0,0 +1,47 @@ +Shader "Hidden/ComputeScreenPos" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 screenPos = ComputeScreenPos(a); + return screenPos; + } + ENDCG + } + + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag (v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + float4 screenPos = ComputeScreenPos(a); + screenPos = screenPos / screenPos.w; + screenPos.z = (UNITY_NEAR_CLIP_VALUE >= 0) ? screenPos.z : screenPos.z* 0.5 + 0.5; + return screenPos; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ComputeScreenPos.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ComputeScreenPos.shader.meta new file mode 100644 index 00000000..983e7e46 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ComputeScreenPos.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 97bd4895d847d764eb21d2bf7aa13671 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ConditionalIfNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ConditionalIfNode.shader new file mode 100644 index 00000000..1121f0d0 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ConditionalIfNode.shader @@ -0,0 +1,47 @@ +Shader "Hidden/Preview_ConditionalIfNode" +{ + Properties + { + _A ( "_A", 2D) = "white" {} + _B ( "_B", 2D ) = "white" {} + _C ( "_AGreaterThanB", 2D ) = "white" {} + _D ( "_AEqualToB", 2D ) = "white" {} + _E ( "_ALessThanB", 2D ) = "white" {} + } + + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + uniform sampler2D _A; + uniform sampler2D _B; + uniform sampler2D _C; + uniform sampler2D _D; + uniform sampler2D _E; + + float4 frag ( v2f_img i ) : SV_Target + { + float aVal = tex2D ( _A, i.uv ).r; + float bVal = tex2D ( _B, i.uv ).r; + float4 aGreaterbVal = tex2D ( _C, i.uv ); + float4 aEqualbVal = tex2D ( _D, i.uv ); + float4 aLessbVal = tex2D ( _E, i.uv ); + + if ( aVal > bVal ) + return aGreaterbVal; + + if ( aVal == bVal ) + return aEqualbVal; + + return aLessbVal; + + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ConditionalIfNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ConditionalIfNode.shader.meta new file mode 100644 index 00000000..2a79ade7 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ConditionalIfNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: f6fb4d46bddf29e45a8a3ddfed75d0c0 +timeCreated: 1515424552 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CosOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CosOpNode.shader new file mode 100644 index 00000000..7db02403 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CosOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/CosOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return cos(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CosOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CosOpNode.shader.meta new file mode 100644 index 00000000..85cde2f1 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CosOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 3dde9e80389196f459eb94137268de4a +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CosTime.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CosTime.shader new file mode 100644 index 00000000..8e591b68 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CosTime.shader @@ -0,0 +1,25 @@ +Shader "Hidden/CosTime" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float _EditorTime; + + float4 frag( v2f_img i ) : SV_Target + { + float4 t = _EditorTime; + t.x = _EditorTime / 8; + t.y = _EditorTime / 4; + t.z = _EditorTime / 2; + return cos(t); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CosTime.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CosTime.shader.meta new file mode 100644 index 00000000..4a17551b --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CosTime.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 3093999b42c3c0940a71799511d7781c +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CoshOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CoshOpNode.shader new file mode 100644 index 00000000..8bdcf409 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CoshOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/CoshOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return cosh(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CoshOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CoshOpNode.shader.meta new file mode 100644 index 00000000..cb2b2fe8 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CoshOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 154a4c85fe88657489a54a02416402c0 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CrossProductOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CrossProductOpNode.shader new file mode 100644 index 00000000..6b50b149 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CrossProductOpNode.shader @@ -0,0 +1,29 @@ +Shader "Hidden/CrossProductOpNode" +{ + Properties + { + _A ("_Lhs", 2D) = "white" {} + _B ("_Rhs", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + return float4(cross(a.rgb, b.rgb),0); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CrossProductOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CrossProductOpNode.shader.meta new file mode 100644 index 00000000..8a06c644 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_CrossProductOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 65a9be5cc7037654db8e148d669f03ee +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DdxOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DdxOpNode.shader new file mode 100644 index 00000000..d6fd37ba --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DdxOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/DdxOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return ddx(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DdxOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DdxOpNode.shader.meta new file mode 100644 index 00000000..80e1431a --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DdxOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: b54ea73d5568b3540977557813eb9c3c +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DdyOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DdyOpNode.shader new file mode 100644 index 00000000..cfffd11c --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DdyOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/DdyOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return ddy(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DdyOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DdyOpNode.shader.meta new file mode 100644 index 00000000..ec2c4efd --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DdyOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 197dcc7f05339da47b6b0e681c475c5e +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeDepthNormalNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeDepthNormalNode.shader new file mode 100644 index 00000000..41ee539c --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeDepthNormalNode.shader @@ -0,0 +1,30 @@ +Shader "Hidden/DecodeDepthNormalNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float depthValue = 0; + float3 normalValue = 0; + DecodeDepthNormal( a , depthValue, normalValue ); + return float4( depthValue,normalValue ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeDepthNormalNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeDepthNormalNode.shader.meta new file mode 100644 index 00000000..6f6d8ac8 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeDepthNormalNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: dbf37c4d3ce0f0b41822584d6c9ba203 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeFloatRGBAHlpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeFloatRGBAHlpNode.shader new file mode 100644 index 00000000..e7494660 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeFloatRGBAHlpNode.shader @@ -0,0 +1,27 @@ +Shader "Hidden/DecodeFloatRGBAHlpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + return DecodeFloatRGBA( a ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeFloatRGBAHlpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeFloatRGBAHlpNode.shader.meta new file mode 100644 index 00000000..a1237f67 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeFloatRGBAHlpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: f71b31b15ff3f2042bafbed40acd29f4 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeFloatRGHlpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeFloatRGHlpNode.shader new file mode 100644 index 00000000..e60788ce --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeFloatRGHlpNode.shader @@ -0,0 +1,27 @@ +Shader "Hidden/DecodeFloatRGHlpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + + float4 frag( v2f_img i ) : SV_Target + { + float2 a = tex2D( _A, i.uv ).rg; + return DecodeFloatRG( a ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeFloatRGHlpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeFloatRGHlpNode.shader.meta new file mode 100644 index 00000000..c6e62f26 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeFloatRGHlpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 1fb3121b1c8febb4dbcc2a507a2df2db +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeLightmapHlpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeLightmapHlpNode.shader new file mode 100644 index 00000000..b0629e6e --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeLightmapHlpNode.shader @@ -0,0 +1,26 @@ +Shader "Hidden/DecodeLighmapHlpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + return float4(DecodeLightmap ( a ),0); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeLightmapHlpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeLightmapHlpNode.shader.meta new file mode 100644 index 00000000..e0806a2d --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeLightmapHlpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: c2d3bee1aee183343b31b9208cb402e9 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeViewNormalStereoHlpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeViewNormalStereoHlpNode.shader new file mode 100644 index 00000000..cf7c62fd --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeViewNormalStereoHlpNode.shader @@ -0,0 +1,27 @@ +Shader "Hidden/DecodeViewNormalStereoHlpNode" +{ + Properties + { + _A ( "_A", 2D ) = "white" {} + } + + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag ( v2f_img i ) : SV_Target + { + float4 a = tex2D ( _A, i.uv ); + return float4( DecodeViewNormalStereo ( a ),0 ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeViewNormalStereoHlpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeViewNormalStereoHlpNode.shader.meta new file mode 100644 index 00000000..409d139d --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DecodeViewNormalStereoHlpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: e996db1cc4510c84185cb9f933f916bb +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DegreesOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DegreesOpNode.shader new file mode 100644 index 00000000..9e91f8c8 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DegreesOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/DegreesOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return degrees(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DegreesOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DegreesOpNode.shader.meta new file mode 100644 index 00000000..67fd1f3b --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DegreesOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 2a8eebb5566830c4a9d7c4b9021bb743 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DeltaTime.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DeltaTime.shader new file mode 100644 index 00000000..092d1f9b --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DeltaTime.shader @@ -0,0 +1,26 @@ +Shader "Hidden/DeltaTime" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float _EditorDeltaTime; + + float4 frag( v2f_img i ) : SV_Target + { + float4 t = _EditorDeltaTime; + t.y = 1 / _EditorDeltaTime; + t.z = _EditorDeltaTime; + t.w = 1 / _EditorDeltaTime; + return cos(t); + } + ENDCG + } + + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DeltaTime.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DeltaTime.shader.meta new file mode 100644 index 00000000..c39cf8da --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DeltaTime.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 9d69a693042c443498f96d6da60535eb +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DesaturateNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DesaturateNode.shader new file mode 100644 index 00000000..1bc967fa --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DesaturateNode.shader @@ -0,0 +1,34 @@ +Shader "Hidden/DesaturateNode" +{ + Properties + { + _A ( "_RBG", 2D ) = "white" {} + _B ( "_Fraction", 2D ) = "white" {} + } + + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + uniform sampler2D _A; + uniform sampler2D _B; + + float4 frag ( v2f_img i ) : SV_Target + { + float3 rgb = tex2D ( _A, i.uv ).rgb; + float fraction = tex2D ( _B, i.uv ).r; + + float dotResult = dot ( rgb, float3( 0.299, 0.587, 0.114 ) ); + float3 finalColor = lerp ( rgb, dotResult.xxx, fraction ); + + return float4( finalColor, 1 ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DesaturateNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DesaturateNode.shader.meta new file mode 100644 index 00000000..97fe8c09 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DesaturateNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: faabe9efdf44b9648a523f1742abdfd3 +timeCreated: 1515421907 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DiffuseAndSpecularFromMetallic.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DiffuseAndSpecularFromMetallic.shader new file mode 100644 index 00000000..9d2f4077 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DiffuseAndSpecularFromMetallic.shader @@ -0,0 +1,32 @@ +Shader "Hidden/DiffuseAndSpecularFromMetallicNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #include "UnityStandardUtils.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag( v2f_img i ) : SV_Target + { + float4 albedo = tex2D( _A, i.uv ); + float metallic = tex2D( _A, i.uv ).r; + float3 specColor = 0; + float oneMinusReflectivity; + float3 albedoFinal = DiffuseAndSpecularFromMetallic(albedo,metallic,specColor,oneMinusReflectivity); + return float4( albedoFinal , 1 ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DiffuseAndSpecularFromMetallic.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DiffuseAndSpecularFromMetallic.shader.meta new file mode 100644 index 00000000..46286ed7 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DiffuseAndSpecularFromMetallic.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: c7c4485750948a045b5dab0985896e17 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DistanceOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DistanceOpNode.shader new file mode 100644 index 00000000..0ba2dfdf --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DistanceOpNode.shader @@ -0,0 +1,29 @@ +Shader "Hidden/DistanceOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + return distance( a, b ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DistanceOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DistanceOpNode.shader.meta new file mode 100644 index 00000000..6ca677b7 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DistanceOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 3be9a95031c0cb740ae982e465dfc242 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DotProductOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DotProductOpNode.shader new file mode 100644 index 00000000..a467eed3 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DotProductOpNode.shader @@ -0,0 +1,27 @@ +Shader "Hidden/DotProductOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + + float4 frag(v2f_img i) : SV_Target + { + return dot(tex2D(_A, i.uv).rgb, tex2D(_B, i.uv).rgb); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DotProductOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DotProductOpNode.shader.meta new file mode 100644 index 00000000..d506912f --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DotProductOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 85f11fd5cb9bb954c8615a45c57a3784 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DynamicAppendNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DynamicAppendNode.shader new file mode 100644 index 00000000..d7e7b160 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DynamicAppendNode.shader @@ -0,0 +1,135 @@ +Shader "Hidden/DynamicAppendNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + _C ("_C", 2D) = "white" {} + _D ("_D", 2D) = "white" {} + _Mask("_Mask", Vector) = (0,0,0,0) + } + SubShader + { + CGINCLUDE + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + + float4 _Mask; + ENDCG + + Pass //0 + { + Name "1111" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + float4 b = tex2D(_B, i.uv); + float4 c = tex2D(_C, i.uv); + float4 d = tex2D(_D, i.uv); + return float4(a.x,b.x,c.x,d.x)*_Mask; + } + ENDCG + } + + Pass //1 + { + Name "1120" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + float4 b = tex2D(_B, i.uv); + float4 c = tex2D(_C, i.uv); + + return float4(a.x,b.x,c.xy)*_Mask; + } + ENDCG + } + + Pass //2 + { + Name "1201" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + float4 b = tex2D(_B, i.uv); + float4 d = tex2D(_D, i.uv); + return float4(a.x,b.xy,d.x)*_Mask; + } + ENDCG + } + + Pass //3 + { + Name "1300" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + float4 b = tex2D(_B, i.uv); + return float4(a.x,b.xyz)*_Mask; + } + ENDCG + } + + Pass //4 + { + Name "2011" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + float4 c = tex2D(_C, i.uv); + float4 d = tex2D(_D, i.uv); + return float4(a.xy,c.x,d.x)*_Mask; + } + ENDCG + } + + Pass //5 + { + Name "2020" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + float4 c = tex2D(_C, i.uv); + return float4(a.xy,c.xy)*_Mask; + } + ENDCG + } + + Pass //6 + { + Name "3001" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + float4 d = tex2D(_D, i.uv); + return float4(a.xyz,d.x)*_Mask; + } + ENDCG + } + + Pass //7 + { + Name "4000" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return a*_Mask; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DynamicAppendNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DynamicAppendNode.shader.meta new file mode 100644 index 00000000..ebe42e4d --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_DynamicAppendNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: bfcd2919fe75bbf428fbbe583f463a9e +timeCreated: 1510580676 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_EncodeFloatRGBAHlpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_EncodeFloatRGBAHlpNode.shader new file mode 100644 index 00000000..80e3070f --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_EncodeFloatRGBAHlpNode.shader @@ -0,0 +1,27 @@ +Shader "Hidden/EncodeFloatRGBAHlpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + + float4 frag( v2f_img i ) : SV_Target + { + float a = tex2D( _A, i.uv ).r; + return EncodeFloatRGBA( a ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_EncodeFloatRGBAHlpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_EncodeFloatRGBAHlpNode.shader.meta new file mode 100644 index 00000000..416d650e --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_EncodeFloatRGBAHlpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: c21569bf5b9371b4ca13c0c00abd5562 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_EncodeFloatRGHlpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_EncodeFloatRGHlpNode.shader new file mode 100644 index 00000000..f3b8ff14 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_EncodeFloatRGHlpNode.shader @@ -0,0 +1,27 @@ +Shader "Hidden/EncodeFloatRGNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + + float4 frag( v2f_img i ) : SV_Target + { + float a = tex2D( _A, i.uv ).r; + return float4( EncodeFloatRG( a ), 0,0); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_EncodeFloatRGHlpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_EncodeFloatRGHlpNode.shader.meta new file mode 100644 index 00000000..8b064ebd --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_EncodeFloatRGHlpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: a44b520baa5c39e41bc69a22ea46f24d +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_EncodeViewNormalStereoHlpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_EncodeViewNormalStereoHlpNode.shader new file mode 100644 index 00000000..d23d09fa --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_EncodeViewNormalStereoHlpNode.shader @@ -0,0 +1,27 @@ +Shader "Hidden/EncodeViewNormalStereoHlpNode" +{ + Properties + { + _A ( "_A", 2D ) = "white" {} + } + + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag ( v2f_img i ) : SV_Target + { + float3 a = tex2D ( _A, i.uv ).rgb; + return float4( EncodeViewNormalStereo( a ),0,0); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_EncodeViewNormalStereoHlpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_EncodeViewNormalStereoHlpNode.shader.meta new file mode 100644 index 00000000..1db2cbf3 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_EncodeViewNormalStereoHlpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 3d0b3d482b7246c4cb60fa73e6ceac6c +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Exp2OpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Exp2OpNode.shader new file mode 100644 index 00000000..36ab7114 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Exp2OpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/Exp2OpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return exp2(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Exp2OpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Exp2OpNode.shader.meta new file mode 100644 index 00000000..b5c6d567 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Exp2OpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: ceb70ed5423a36647a504a41de7dbfe6 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ExpOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ExpOpNode.shader new file mode 100644 index 00000000..83afb73c --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ExpOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/ExpOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return exp(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ExpOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ExpOpNode.shader.meta new file mode 100644 index 00000000..53b5e1ef --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ExpOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 6416ff506137d97479a7ebde790b45e5 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FWidthOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FWidthOpNode.shader new file mode 100644 index 00000000..d7116473 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FWidthOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/FWidthOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return fwidth(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FWidthOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FWidthOpNode.shader.meta new file mode 100644 index 00000000..c251ea4f --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FWidthOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 81ea481faaef9c8459a555479ba64df7 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FaceVariableNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FaceVariableNode.shader new file mode 100644 index 00000000..9cb44282 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FaceVariableNode.shader @@ -0,0 +1,19 @@ +Shader "Hidden/FaceVariableNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + float4 frag( v2f_img i, half ase_vface : VFACE ) : SV_Target + { + return ase_vface; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FaceVariableNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FaceVariableNode.shader.meta new file mode 100644 index 00000000..9239bc98 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FaceVariableNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 4b0b5b9f16353b840a5f5ad2baab3c3c +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FloorOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FloorOpNode.shader new file mode 100644 index 00000000..ad11b597 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FloorOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/FloorOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return floor(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FloorOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FloorOpNode.shader.meta new file mode 100644 index 00000000..11687b4f --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FloorOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 46ae4a72a9a38de40a2d8f20cfccc67d +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FmodOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FmodOpNode.shader new file mode 100644 index 00000000..2149b14d --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FmodOpNode.shader @@ -0,0 +1,29 @@ +Shader "Hidden/FmodOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + return fmod(a, b); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FmodOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FmodOpNode.shader.meta new file mode 100644 index 00000000..8bbfee68 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FmodOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 65083930f9d7812479fd6ff203ad2992 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FogAndAmbientColors.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FogAndAmbientColors.shader new file mode 100644 index 00000000..b2b5b937 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FogAndAmbientColors.shader @@ -0,0 +1,75 @@ +Shader "Hidden/FogAndAmbientColors" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag( v2f_img i ) : SV_Target + { + return UNITY_LIGHTMODEL_AMBIENT; + } + ENDCG + } + + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag (v2f_img i) : SV_Target + { + return unity_AmbientSky; + } + ENDCG + } + + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag (v2f_img i) : SV_Target + { + return unity_AmbientEquator; + } + ENDCG + } + + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag (v2f_img i) : SV_Target + { + return unity_AmbientGround; + } + ENDCG + } + + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag (v2f_img i) : SV_Target + { + return unity_FogColor; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FogAndAmbientColors.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FogAndAmbientColors.shader.meta new file mode 100644 index 00000000..40a27fe2 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FogAndAmbientColors.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 937c7bde062f0f942b600d9950d2ebb2 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FogParams.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FogParams.shader new file mode 100644 index 00000000..c2914ce9 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FogParams.shader @@ -0,0 +1,19 @@ +Shader "Hidden/FogParams" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag( v2f_img i ) : SV_Target + { + return unity_FogParams; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FogParams.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FogParams.shader.meta new file mode 100644 index 00000000..bef96887 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FogParams.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 42abde3281b1848438c3b53443c91a1e +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FractNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FractNode.shader new file mode 100644 index 00000000..d85eaf69 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FractNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/FractNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return frac(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FractNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FractNode.shader.meta new file mode 100644 index 00000000..4de2ceeb --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FractNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 53a335f8f18d4694b8d94e8aee21fdca +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FresnelNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FresnelNode.shader new file mode 100644 index 00000000..256a4d66 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FresnelNode.shader @@ -0,0 +1,358 @@ +Shader "Hidden/FresnelNode" +{ + Properties + { + _A ("_Normal", 2D) = "white" {} + _B ("_Bias", 2D) = "white" {} + _C ("_Scale", 2D) = "white" {} + _D ("_Power", 2D) = "white" {} + _E ("_View", 2D) = "white" {} + } + SubShader + { + Pass //not connected world + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + //sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + int _FresnelType; + + float4 frag(v2f_img i) : SV_Target + { + float b = tex2D( _B, i.uv ).r; + float s = tex2D( _C, i.uv ).r; + float pw = tex2D( _D, i.uv ).r; + + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 vertexPos = float3(xy, z); + float3 worldNormal = normalize(float3(xy, z)); + float3 worldViewDir = normalize(float3(0,0,-5) - vertexPos); + + float fresnel = 0; + if(_FresnelType == 0) + fresnel = (b + s*pow(1 - dot( worldNormal, worldViewDir ) , pw)); + else if(_FresnelType == 1) + fresnel = (b + (1-b) * pow(1 - dot( worldNormal, worldViewDir ) , 5)); + else if(_FresnelType == 2) + { + float f0 = pow((1-s)/(1+s),2); + fresnel = (f0 + (1-f0) * pow(1 - dot( worldNormal, worldViewDir ) , 5)); + } + return fresnel; + } + ENDCG + } + + Pass //connected world + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + int _FresnelType; + + float4 frag(v2f_img i) : SV_Target + { + float b = tex2D( _B, i.uv ).r; + float s = tex2D( _C, i.uv ).r; + float pw = tex2D( _D, i.uv ).r; + + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 vertexPos = float3(xy, z); + float3 worldNormal = tex2D( _A, i.uv ); + float3 worldViewDir = normalize(float3(0,0,-5) - vertexPos); + + float fresnel = 0; + if(_FresnelType == 0) + fresnel = (b + s*pow(1 - dot( worldNormal, worldViewDir ) , pw)); + else if(_FresnelType == 1) + fresnel = (b + (1-b) * pow(1 - dot( worldNormal, worldViewDir ) , 5)); + else if(_FresnelType == 2) + { + float f0 = pow((1-s)/(1+s),2); + fresnel = (f0 + (1-f0) * pow(1 - dot( worldNormal, worldViewDir ) , 5)); + } + return fresnel; + } + ENDCG + } + + Pass //connected tangent + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + int _FresnelType; + + float4 frag(v2f_img i) : SV_Target + { + float b = tex2D( _B, i.uv ).r; + float s = tex2D( _C, i.uv ).r; + float pw = tex2D( _D, i.uv ).r; + + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 vertexPos = float3(xy, z); + float3 worldNormal = normalize(float3(xy, z)); + + float3 tangent = normalize(float3( -z, xy.y*0.01, xy.x )); + float3 worldPos = mul(unity_ObjectToWorld, float4(vertexPos,1)).xyz; + float3 worldTangent = UnityObjectToWorldDir(tangent); + float tangentSign = -1; + float3 worldBinormal = normalize( cross(worldNormal, worldTangent) * tangentSign); + float4 tSpace0 = float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x); + float4 tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y); + float4 tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z); + + float2 sphereUVs = i.uv; + + sphereUVs.x = (atan2(vertexPos.x, -vertexPos.z) / (UNITY_PI) + 0.5); + float3 tangentNormal = tex2D(_A, sphereUVs).xyz; + + worldNormal = fixed3( dot( tSpace0.xyz, tangentNormal ), dot( tSpace1.xyz, tangentNormal ), dot( tSpace2.xyz, tangentNormal ) ); + + float3 worldViewDir = normalize(float3(0,0,-5) - vertexPos); + + float fresnel = 0; + if(_FresnelType == 0) + fresnel = (b + s*pow(1 - dot( worldNormal, worldViewDir ) , pw)); + else if(_FresnelType == 1) + fresnel = (b + (1-b) * pow(1 - dot( worldNormal, worldViewDir ) , 5)); + else if(_FresnelType == 2) + { + float f0 = pow((1-s)/(1+s),2); + fresnel = (f0 + (1-f0) * pow(1 - dot( worldNormal, worldViewDir ) , 5)); + } + return fresnel; + } + ENDCG + } + + Pass //not connected half vector + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + //sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + int _FresnelType; + float4 _EditorWorldLightPos; + float4 frag(v2f_img i) : SV_Target + { + float b = tex2D( _B, i.uv ).r; + float s = tex2D( _C, i.uv ).r; + float pw = tex2D( _D, i.uv ).r; + + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-(dot(xy,xy))); + float3 vertexPos = normalize(float3(xy, z)); + float3 worldViewDir = normalize(float3(0,0,-5) - vertexPos); + float3 lightDir = normalize( _EditorWorldLightPos.xyz ); + float3 halfVector = normalize(worldViewDir+lightDir); + + float fresnel = 0; + if(_FresnelType == 0) + fresnel = (b + s*pow(1 - dot( halfVector, worldViewDir ) , pw)); + else if(_FresnelType == 1) + fresnel = (b + (1-b) * pow(1 - dot( halfVector, worldViewDir ) , 5)); + else if(_FresnelType == 2) + { + float f0 = pow((1-s)/(1+s),2); + fresnel = (f0 + (1-f0) * pow(1 - dot( halfVector, worldViewDir ) , 5)); + } + return fresnel; + } + ENDCG + } + + Pass //connected both + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + sampler2D _E; + int _FresnelType; + + float4 frag(v2f_img i) : SV_Target + { + float b = tex2D( _B, i.uv ).r; + float s = tex2D( _C, i.uv ).r; + float pw = tex2D( _D, i.uv ).r; + + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 vertexPos = float3(xy, z); + float3 worldNormal = tex2D( _A, i.uv ); + float3 worldViewDir = tex2D( _E, i.uv );; + + float fresnel = 0; + if(_FresnelType == 0) + fresnel = (b + s*pow(1 - dot( worldNormal, worldViewDir ) , pw)); + else if(_FresnelType == 1) + fresnel = (b + (1-b) * pow(1 - dot( worldNormal, worldViewDir ) , 5)); + else if(_FresnelType == 2) + { + float f0 = pow((1-s)/(1+s),2); + fresnel = (f0 + (1-f0) * pow(1 - dot( worldNormal, worldViewDir ) , 5)); + } + return fresnel; + } + ENDCG + } + + Pass //not connected world and light + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + //sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + int _FresnelType; + float4 _EditorWorldLightPos; + + float4 frag(v2f_img i) : SV_Target + { + float b = tex2D( _B, i.uv ).r; + float s = tex2D( _C, i.uv ).r; + float pw = tex2D( _D, i.uv ).r; + + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-(dot(xy,xy))); + float3 vertexPos = normalize(float3(xy, z)); + float3 normal = normalize(vertexPos); + float3 worldNormal = UnityObjectToWorldNormal(normal); + float3 lightDir = normalize( _EditorWorldLightPos.xyz ); + + float fresnel = 0; + if(_FresnelType == 0) + fresnel = (b + s*pow(1 - dot( worldNormal, lightDir ) , pw)); + else if(_FresnelType == 1) + fresnel = (b + (1-b) * pow(1 - dot( worldNormal, lightDir ) , 5)); + else if(_FresnelType == 2) + { + float f0 = pow((1-s)/(1+s),2); + fresnel = (f0 + (1-f0) * pow(1 - dot( worldNormal, lightDir ) , 5)); + } + return fresnel; + } + ENDCG + } + + Pass //connected view + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + sampler2D _E; + int _FresnelType; + + float4 frag(v2f_img i) : SV_Target + { + float b = tex2D( _B, i.uv ).r; + float s = tex2D( _C, i.uv ).r; + float pw = tex2D( _D, i.uv ).r; + + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 vertexPos = float3(xy, z); + float3 normal = normalize(vertexPos); + float3 worldNormal = UnityObjectToWorldNormal(normal); + float3 worldViewDir = tex2D( _E, i.uv ); + + float fresnel = 0; + if(_FresnelType == 0) + fresnel = (b + s*pow(1 - dot( worldNormal, worldViewDir ) , pw)); + else if(_FresnelType == 1) + fresnel = (b + (1-b) * pow(1 - dot( worldNormal, worldViewDir ) , 5)); + else if(_FresnelType == 2) + { + float f0 = pow((1-s)/(1+s),2); + fresnel = (f0 + (1-f0) * pow(1 - dot( worldNormal, worldViewDir ) , 5)); + } + return fresnel; + } + ENDCG + } + + Pass //not connected half vector with connected view + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + //sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + sampler2D _E; + int _FresnelType; + float4 _EditorWorldLightPos; + float4 frag(v2f_img i) : SV_Target + { + float b = tex2D( _B, i.uv ).r; + float s = tex2D( _C, i.uv ).r; + float pw = tex2D( _D, i.uv ).r; + + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-(dot(xy,xy))); + float3 vertexPos = normalize(float3(xy, z)); + float3 worldViewDir = tex2D( _E, i.uv ); + float3 lightDir = normalize( _EditorWorldLightPos.xyz ); + float3 halfVector = normalize(worldViewDir+lightDir); + + float fresnel = 0; + if(_FresnelType == 0) + fresnel = (b + s*pow(1 - dot( halfVector, worldViewDir ) , pw)); + else if(_FresnelType == 1) + fresnel = (b + (1-b) * pow(1 - dot( halfVector, worldViewDir ) , 5)); + else if(_FresnelType == 2) + { + float f0 = pow((1-s)/(1+s),2); + fresnel = (f0 + (1-f0) * pow(1 - dot( halfVector, worldViewDir ) , 5)); + } + return fresnel; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FresnelNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FresnelNode.shader.meta new file mode 100644 index 00000000..c98c0fe3 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FresnelNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 240145eb70cf79f428015012559f4e7d +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FunctionInputNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FunctionInputNode.shader new file mode 100644 index 00000000..898706af --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FunctionInputNode.shader @@ -0,0 +1,39 @@ +Shader "Hidden/FunctionInputNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + int _Type; + + float4 frag(v2f_img i) : SV_Target + { + if( _Type == 1 ) + { + return tex2D( _A, i.uv ).r; + } else if( _Type == 2 ) + { + return float4(tex2D( _A, i.uv ).rg,0,0); + } else if( _Type == 3 ) + { + return float4(tex2D( _A, i.uv ).rgb,0); + } + else + { + return tex2D( _A, i.uv ); + } + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FunctionInputNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FunctionInputNode.shader.meta new file mode 100644 index 00000000..e2cf164b --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FunctionInputNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 04bc8e7b317dccb4d8da601680dd8140 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FunctionNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FunctionNode.shader new file mode 100644 index 00000000..e8b7c4a8 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FunctionNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/FunctionNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return tex2D( _A, i.uv ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FunctionNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FunctionNode.shader.meta new file mode 100644 index 00000000..7209bcd2 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FunctionNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: aca70c900c50c004e8ef0b47c4fac4d4 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FunctionOutputNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FunctionOutputNode.shader new file mode 100644 index 00000000..5fa7d2d1 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FunctionOutputNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/FunctionOutputNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return tex2D( _A, i.uv ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FunctionOutputNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FunctionOutputNode.shader.meta new file mode 100644 index 00000000..689efb66 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_FunctionOutputNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: e6d5f64114b18e24f99dc65290c0fe98 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GammaToLinearNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GammaToLinearNode.shader new file mode 100644 index 00000000..585f4038 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GammaToLinearNode.shader @@ -0,0 +1,27 @@ +Shader "Hidden/GammaToLinearNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + float4 c = tex2D( _A, i.uv ); + c.rgb = GammaToLinearSpace( c.rgb ); + return c; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GammaToLinearNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GammaToLinearNode.shader.meta new file mode 100644 index 00000000..9ebe8def --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GammaToLinearNode.shader.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e82a888a6ebdb1443823aafceaa051b9 +timeCreated: 1489078120 +licenseType: Store +ShaderImporter: + defaultTextures: + - _MainTex: {instanceID: 0} + - _BackGround: {fileID: 2800000, guid: 750b1bd7ba8bd28489650de6d0a95cc5, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GetLocalVarNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GetLocalVarNode.shader new file mode 100644 index 00000000..f9398ac0 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GetLocalVarNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/GetLocalVarNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return tex2D( _A, i.uv ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GetLocalVarNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GetLocalVarNode.shader.meta new file mode 100644 index 00000000..513bcad1 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GetLocalVarNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: f21a6e44c7d7b8543afacd19751d24c6 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GradientSample.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GradientSample.shader new file mode 100644 index 00000000..28aebf55 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GradientSample.shader @@ -0,0 +1,123 @@ +Shader "Hidden/GradientSample" +{ + Properties + { + _GTime( "_Time", 2D ) = "white" {} + _GType( "_GType", Int ) = 0 + _GColorNum( "_GColorNum", Int ) = 0 + _GAlphaNum( "_GAlphaNum", Int ) = 0 + _Col0( "_Col0", Vector ) = ( 0, 0, 0, 0 ) + _Col1( "_Col1", Vector ) = ( 0, 0, 0, 0 ) + _Col2( "_Col2", Vector ) = ( 0, 0, 0, 0 ) + _Col3( "_Col3", Vector ) = ( 0, 0, 0, 0 ) + _Col4( "_Col4", Vector ) = ( 0, 0, 0, 0 ) + _Col5( "_Col5", Vector ) = ( 0, 0, 0, 0 ) + _Col6( "_Col6", Vector ) = ( 0, 0, 0, 0 ) + _Col7( "_Col7", Vector ) = ( 0, 0, 0, 0 ) + _Alp0( "_Alp0", Vector ) = ( 0, 0, 0, 0 ) + _Alp1( "_Alp1", Vector ) = ( 0, 0, 0, 0 ) + _Alp2( "_Alp2", Vector ) = ( 0, 0, 0, 0 ) + _Alp3( "_Alp3", Vector ) = ( 0, 0, 0, 0 ) + _Alp4( "_Alp4", Vector ) = ( 0, 0, 0, 0 ) + _Alp5( "_Alp5", Vector ) = ( 0, 0, 0, 0 ) + _Alp6( "_Alp6", Vector ) = ( 0, 0, 0, 0 ) + _Alp7( "_Alp7", Vector ) = ( 0, 0, 0, 0 ) + } + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + sampler2D _GTime; + int _GType; + int _GColorNum; + int _GAlphaNum; + float4 _Col0; + float4 _Col1; + float4 _Col2; + float4 _Col3; + float4 _Col4; + float4 _Col5; + float4 _Col6; + float4 _Col7; + float4 _Alp0; + float4 _Alp1; + float4 _Alp2; + float4 _Alp3; + float4 _Alp4; + float4 _Alp5; + float4 _Alp6; + float4 _Alp7; + + struct Gradient + { + int type; + int colorsLength; + int alphasLength; + float4 colors[ 8 ]; + float2 alphas[ 8 ]; + }; + + Gradient NewGradient( int type, int colorsLength, int alphasLength, + float4 colors0, float4 colors1, float4 colors2, float4 colors3, float4 colors4, float4 colors5, float4 colors6, float4 colors7, + float2 alphas0, float2 alphas1, float2 alphas2, float2 alphas3, float2 alphas4, float2 alphas5, float2 alphas6, float2 alphas7 ) + { + Gradient g; + g.type = type; + g.colorsLength = colorsLength; + g.alphasLength = alphasLength; + g.colors[ 0 ] = colors0; + g.colors[ 1 ] = colors1; + g.colors[ 2 ] = colors2; + g.colors[ 3 ] = colors3; + g.colors[ 4 ] = colors4; + g.colors[ 5 ] = colors5; + g.colors[ 6 ] = colors6; + g.colors[ 7 ] = colors7; + g.alphas[ 0 ] = alphas0; + g.alphas[ 1 ] = alphas1; + g.alphas[ 2 ] = alphas2; + g.alphas[ 3 ] = alphas3; + g.alphas[ 4 ] = alphas4; + g.alphas[ 5 ] = alphas5; + g.alphas[ 6 ] = alphas6; + g.alphas[ 7 ] = alphas7; + return g; + } + + float4 SampleGradient( Gradient gradient, float time ) + { + float3 color = gradient.colors[ 0 ].rgb; + UNITY_UNROLL + for( int c = 1; c < 8; c++ ) + { + float colorPos = saturate( ( time - gradient.colors[ c - 1 ].w ) / ( gradient.colors[ c ].w - gradient.colors[ c - 1 ].w ) ) * step( c, (float)gradient.colorsLength - 1 ); + color = lerp( color, gradient.colors[ c ].rgb, lerp( colorPos, step( 0.01, colorPos ), gradient.type ) ); + } + #ifndef UNITY_COLORSPACE_GAMMA + color = GammaToLinearSpace( color ); + #endif + float alpha = gradient.alphas[ 0 ].x; + UNITY_UNROLL + for( int a = 1; a < 8; a++ ) + { + float alphaPos = saturate( ( time - gradient.alphas[ a - 1 ].y ) / ( gradient.alphas[ a ].y - gradient.alphas[ a - 1 ].y ) ) * step( a, (float)gradient.alphasLength - 1 ); + alpha = lerp( alpha, gradient.alphas[ a ].x, lerp( alphaPos, step( 0.01, alphaPos ), gradient.type ) ); + } + return float4( color, alpha ); + } + + float4 frag( v2f_img i ) : SV_Target + { + Gradient gradient = NewGradient( _GType, _GColorNum, _GAlphaNum, _Col0, _Col1, _Col2, _Col3, _Col4, _Col5, _Col6, _Col7, _Alp0.xy, _Alp1.xy, _Alp2.xy, _Alp3.xy, _Alp4.xy, _Alp5.xy, _Alp6.xy, _Alp7.xy ); + float time = tex2D( _GTime, i.uv ).r; + return SampleGradient( gradient, time ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GradientSample.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GradientSample.shader.meta new file mode 100644 index 00000000..5082a60c --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GradientSample.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 8a09124cd6e4aa54a996e7487ec16b90 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GrayscaleNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GrayscaleNode.shader new file mode 100644 index 00000000..2f604607 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GrayscaleNode.shader @@ -0,0 +1,62 @@ +Shader "Hidden/GrayscaleNode" +{ + Properties + { + _A ("_RGB", 2D) = "white" {} + } + SubShader + { + Pass //Luminance + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + float lum = Luminance( tex2D( _A, i.uv ) ); + return float4( lum.xxx, 1); + } + ENDCG + } + + Pass //Natural Classic + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag ( v2f_img i ) : SV_Target + { + float lum = dot ( tex2D ( _A, i.uv ), float3( 0.299,0.587,0.114 ) ); + return float4( lum.xxx, 1 ); + } + ENDCG + } + + Pass //Old School + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag ( v2f_img i ) : SV_Target + { + float3 rgbValue = tex2D ( _A, i.uv ).rgb; + float lum = ( rgbValue.r + rgbValue.g + rgbValue.b ) / 3; + return float4( lum.xxx, 1 ); + } + ENDCG + } + + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GrayscaleNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GrayscaleNode.shader.meta new file mode 100644 index 00000000..329b7091 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_GrayscaleNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 56781cd022be9124597f0f396a46a35f +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_HSVToRGBNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_HSVToRGBNode.shader new file mode 100644 index 00000000..3bb972a6 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_HSVToRGBNode.shader @@ -0,0 +1,41 @@ +Shader "Hidden/HSVToRGBNode" +{ + Properties + { + _A ( "_Hue", 2D ) = "white" {} + _B ( "_Saturation", 2D ) = "white" {} + _C ( "_Value", 2D ) = "white" {} + } + + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + uniform sampler2D _A; + uniform sampler2D _B; + uniform sampler2D _C; + + float3 HSVToRGB( float3 c ) + { + float4 K = float4( 1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0 ); + float3 p = abs( frac( c.xxx + K.xyz ) * 6.0 - K.www ); + return c.z * lerp( K.xxx, saturate( p - K.xxx ), c.y ); + } + + float4 frag ( v2f_img i ) : SV_Target + { + float h = tex2D ( _A, i.uv ).r; + float s = tex2D ( _B, i.uv ).r; + float v = tex2D ( _C, i.uv ).r; + + return float4( HSVToRGB(float3(h,s,v)), 1 ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_HSVToRGBNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_HSVToRGBNode.shader.meta new file mode 100644 index 00000000..952938e0 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_HSVToRGBNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: fab445eb945d63047822a7a6b81b959d +timeCreated: 1515421907 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_HeightMapTextureBlend.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_HeightMapTextureBlend.shader new file mode 100644 index 00000000..f15f92e6 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_HeightMapTextureBlend.shader @@ -0,0 +1,33 @@ +Shader "Hidden/HeightMapTextureBlend" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + _C ("_C", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + + float4 frag( v2f_img i ) : SV_Target + { + float heightmap = tex2D( _A, i.uv ).x; + float splatMask = tex2D( _B, i.uv ).x; + float blendStrength = tex2D( _C, i.uv ).x; + float result = saturate( pow((( heightmap*splatMask ) * 4 ) + ( splatMask * 2 ), blendStrength )); + return float4( result.x , 0, 0, 1 ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_HeightMapTextureBlend.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_HeightMapTextureBlend.shader.meta new file mode 100644 index 00000000..35ffff5c --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_HeightMapTextureBlend.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: b2ac23d6d5dcb334982b6f31c2e7a734 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_IndirectDiffuseLight.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_IndirectDiffuseLight.shader new file mode 100644 index 00000000..65695576 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_IndirectDiffuseLight.shader @@ -0,0 +1,106 @@ +Shader "Hidden/IndirectDiffuseLight" +{ + Properties + { + _Intensity ("Intensity", Float) = 1 + } + + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + + float _Intensity; + + float4 frag(v2f_img i) : SV_Target + { + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 worldNormal = normalize(float3(xy, z)); + float3 vertexPos = float3(xy, z); + float3 worldPos = mul(unity_ObjectToWorld, float4(vertexPos,1)).xyz; + float4 back = lerp(float4(0.4117,0.3843,0.3647,1),float4(0.4117,0.5059,0.6470,1),worldPos.y * 0.5 + 0.5); + return float4(GammaToLinearSpace(back.rgb * _Intensity),1); + } + ENDCG + } + + Pass // connected tangent + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + + float _Intensity; + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 vertexPos = float3(xy, z); + float3 normal = normalize(vertexPos); + float3 worldNormal = UnityObjectToWorldNormal(normal); + + float3 tangent = normalize(float3( -z, xy.y*0.01, xy.x )); + float3 worldPos = mul(unity_ObjectToWorld, float4(vertexPos,1)).xyz; + float3 worldTangent = UnityObjectToWorldDir(tangent); + float tangentSign = -1; + float3 worldBinormal = normalize( cross(worldNormal, worldTangent) * tangentSign); + float4 tSpace0 = float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x); + float4 tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y); + float4 tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z); + + float2 sphereUVs = i.uv; + + sphereUVs.x = (atan2(vertexPos.x, -vertexPos.z) / (UNITY_PI) + 0.5); + // Needs further checking + //float3 tangentNormal = tex2Dlod(_A, float4(sphereUVs,0,0)).xyz; + float3 tangentNormal = tex2D(_A, sphereUVs).xyz; + + worldNormal = fixed3( dot( tSpace0.xyz, tangentNormal ), dot( tSpace1.xyz, tangentNormal ), dot( tSpace2.xyz, tangentNormal ) ); + + float4 back = lerp(float4(0.4117,0.3843,0.3647,1),float4(0.4117,0.5059,0.6470,1),worldNormal.y * 0.5 + 0.5); + + return float4(GammaToLinearSpace(back.rgb * _Intensity),1); + } + ENDCG + } + + Pass // connected world + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + + float _Intensity; + sampler2D _A; + + float4 frag( v2f_img i ) : SV_Target + { + float2 xy = 2 * i.uv - 1; + float z = -sqrt( 1 - saturate( dot( xy,xy ) ) ); + float3 vertexPos = float3( xy, z ); + float3 normal = normalize( vertexPos ); + float3 worldNormal = tex2D( _A, i.uv ); + + float4 back = lerp( float4( 0.4117,0.3843,0.3647,1 ),float4( 0.4117,0.5059,0.6470,1 ),worldNormal.y * 0.5 + 0.5 ); + + return float4( GammaToLinearSpace( back.rgb * _Intensity ),1 ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_IndirectDiffuseLight.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_IndirectDiffuseLight.shader.meta new file mode 100644 index 00000000..59f74619 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_IndirectDiffuseLight.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: b45d57fa606c1ea438fe9a2c08426bc7 +timeCreated: 1512043114 +licenseType: Store +ShaderImporter: + defaultTextures: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_IndirectSpecularLight.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_IndirectSpecularLight.shader new file mode 100644 index 00000000..6c48d9e6 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_IndirectSpecularLight.shader @@ -0,0 +1,128 @@ +Shader "Hidden/IndirectSpecularLight" +{ + Properties + { + _Skybox("_Skybox", CUBE) = "white" {} + _A ("Normal", 2D) = "white" {} + _B ("Smoothness", 2D) = "white" {} + _C ("Occlusion", 2D) = "white" {} + } + + SubShader + { + Pass // not connected + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + + uniform samplerCUBE _Skybox; + sampler2D _A; + sampler2D _B; + sampler2D _C; + + float4 frag(v2f_img i) : SV_Target + { + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 worldNormal = normalize(float3(xy, z)); + float3 vertexPos = float3(xy, z); + float3 worldViewDir = normalize(float3(0,0,-5) - vertexPos); + + float3 worldRefl = -worldViewDir; + worldRefl = normalize(reflect( worldRefl, worldNormal )); + + float3 sky = texCUBElod( _Skybox, float4(worldRefl, (1-saturate(tex2D(_B,i.uv).r)) * 6) ).rgb; + + return float4(sky * tex2D(_C,i.uv).r, 1); + } + ENDCG + } + + Pass // connected tangent + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + + uniform samplerCUBE _Skybox; + sampler2D _A; + sampler2D _B; + sampler2D _C; + + float4 frag(v2f_img i) : SV_Target + { + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 vertexPos = float3(xy, z); + float3 normal = normalize(vertexPos); + float3 worldNormal = UnityObjectToWorldNormal(normal); + + float3 tangent = normalize(float3( -z, xy.y*0.01, xy.x )); + float3 worldPos = mul(unity_ObjectToWorld, float4(vertexPos,1)).xyz; + float3 worldViewDir = normalize(float3(0,0,-5) - vertexPos); + + float3 worldTangent = UnityObjectToWorldDir(tangent); + float tangentSign = -1; + float3 worldBinormal = normalize( cross(worldNormal, worldTangent) * tangentSign); + float4 tSpace0 = float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x); + float4 tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y); + float4 tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z); + + float3 worldRefl = -worldViewDir; + + float2 sphereUVs = i.uv; + sphereUVs.x = atan2(vertexPos.x, -vertexPos.z) / (UNITY_PI) + 0.5; + + // Needs further checking + //float3 tangentNormal = tex2Dlod(_A, float4(sphereUVs,0,0)).xyz; + float3 tangentNormal = tex2D(_A, sphereUVs).xyz; + + worldRefl = reflect( worldRefl, half3( dot( tSpace0.xyz, tangentNormal ), dot( tSpace1.xyz, tangentNormal ), dot( tSpace2.xyz, tangentNormal ) ) ); + + float3 sky = texCUBElod( _Skybox, float4(worldRefl, (1-saturate(tex2D(_B,i.uv).r)) * 6) ).rgb; + + return float4(sky * tex2D(_C,i.uv).r, 1); + } + ENDCG + } + + Pass // connected world + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + #include "Lighting.cginc" + #include "UnityPBSLighting.cginc" + + uniform samplerCUBE _Skybox; + sampler2D _A; + sampler2D _B; + sampler2D _C; + + float4 frag(v2f_img i) : SV_Target + { + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 vertexPos = float3(xy, z); + float3 normal = normalize(vertexPos); + float3 worldNormal = tex2D( _A, i.uv ); + float3 worldViewDir = normalize(float3(0,0,-5) - vertexPos); + + float3 worldRefl = reflect( -worldViewDir, worldNormal ); + + float3 sky = texCUBElod( _Skybox, float4(worldRefl, (1-saturate(tex2D(_B,i.uv).r)) * 6) ).rgb; + + return float4(sky * tex2D(_C,i.uv).r, 1); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_IndirectSpecularLight.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_IndirectSpecularLight.shader.meta new file mode 100644 index 00000000..44a99df2 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_IndirectSpecularLight.shader.meta @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: d6e441d0a8608954c97fa347d3735e92 +timeCreated: 1512052132 +licenseType: Store +ShaderImporter: + defaultTextures: + - _Skybox: {fileID: 8900000, guid: ef7513b54a0670140b9b967af7620563, type: 3} + - _A: {instanceID: 0} + - _B: {instanceID: 0} + - _C: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_InstanceIDNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_InstanceIDNode.shader new file mode 100644 index 00000000..828da9fa --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_InstanceIDNode.shader @@ -0,0 +1,24 @@ +Shader "Hidden/InstanceIDNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag (v2f_img i) : SV_Target + { + uint currInstanceId = 0; + #ifdef UNITY_INSTANCING_ENABLED + currInstanceId = unity_InstanceID; + #endif + + return currInstanceId; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_InstanceIDNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_InstanceIDNode.shader.meta new file mode 100644 index 00000000..acd68c49 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_InstanceIDNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 03febce56a8cf354b90e7d5180c1dbd7 +timeCreated: 1542641929 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_IntNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_IntNode.shader new file mode 100644 index 00000000..5e1b367d --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_IntNode.shader @@ -0,0 +1,24 @@ +Shader "Hidden/IntNode" +{ + Properties { + _InputInt ("_InputInt", Int) = 0 + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + int _InputInt; + + float4 frag( v2f_img i ) : SV_Target + { + return _InputInt; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_IntNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_IntNode.shader.meta new file mode 100644 index 00000000..6854db4a --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_IntNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 0f64d695b6ffacc469f2dd31432a232a +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LODFadeNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LODFadeNode.shader new file mode 100644 index 00000000..b855246b --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LODFadeNode.shader @@ -0,0 +1,19 @@ +Shader "Hidden/LODFadeNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag( v2f_img i ) : SV_Target + { + return unity_LODFade; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LODFadeNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LODFadeNode.shader.meta new file mode 100644 index 00000000..9fee1f6c --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LODFadeNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: fcd4d93f57ffc51458d4ade10df2fdb4 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LayeredBlendNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LayeredBlendNode.shader new file mode 100644 index 00000000..bf562c30 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LayeredBlendNode.shader @@ -0,0 +1,90 @@ +Shader "Hidden/LayeredBlendNode" +{ + Properties + { + _A ( "_Weights", 2D) = "white" {} + _B ( "_LayerBase", 2D) = "white" {} + _C ( "_Layer1", 2D) = "white" {} + _D ( "_Layer2", 2D ) = "white" {} + _E ( "_Layer3", 2D ) = "white" {} + _F ( "_Layer4", 2D ) = "white" {} + } + SubShader + { + + CGINCLUDE + + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + sampler2D _A; + sampler2D _B; + sampler2D _C; + + ENDCG + + Pass + { + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 Weights = tex2D( _A, i.uv ); + float4 LayerBase = tex2D( _B, i.uv ); + float4 Layer1 = tex2D( _C, i.uv ); + return lerp ( LayerBase, Layer1, Weights.x ); + } + ENDCG + } + + Pass + { + CGPROGRAM + sampler2D _D; + float4 frag ( v2f_img i ) : SV_Target + { + float4 Weights = tex2D ( _A, i.uv ); + float4 LayerBase = tex2D ( _B, i.uv ); + float4 Layer1 = tex2D ( _C, i.uv ); + float4 Layer2 = tex2D ( _D, i.uv ); + return lerp ( lerp ( LayerBase, Layer1, Weights.x ), Layer2, Weights.y ); + } + ENDCG + } + + Pass + { + CGPROGRAM + sampler2D _D; + sampler2D _E; + float4 frag ( v2f_img i ) : SV_Target + { + float4 Weights = tex2D ( _A, i.uv ); + float4 LayerBase = tex2D ( _B, i.uv ); + float4 Layer1 = tex2D ( _C, i.uv ); + float4 Layer2 = tex2D ( _D, i.uv ); + float4 Layer3 = tex2D ( _E, i.uv ); + return lerp ( lerp ( lerp ( LayerBase, Layer1, Weights.x ), Layer2, Weights.y ), Layer3, Weights.z ); + } + ENDCG + } + + Pass + { + CGPROGRAM + sampler2D _D; + sampler2D _E; + sampler2D _F; + float4 frag ( v2f_img i ) : SV_Target + { + float4 Weights = tex2D ( _A, i.uv ); + float4 LayerBase = tex2D ( _B, i.uv ); + float4 Layer1 = tex2D ( _C, i.uv ); + float4 Layer2 = tex2D ( _D, i.uv ); + float4 Layer3 = tex2D ( _E, i.uv ); + float4 Layer4 = tex2D ( _F, i.uv ); + return lerp ( lerp ( lerp ( lerp ( LayerBase, Layer1, Weights.x ), Layer2, Weights.y ), Layer3, Weights.z ), Layer4, Weights.w ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LayeredBlendNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LayeredBlendNode.shader.meta new file mode 100644 index 00000000..81f601e3 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LayeredBlendNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 48faca2f6506fc44c97adb1e2b79c37d +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LengthOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LengthOpNode.shader new file mode 100644 index 00000000..213607da --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LengthOpNode.shader @@ -0,0 +1,73 @@ +Shader "Hidden/LengthOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag (v2f_img i) : SV_Target + { + return length( tex2D (_A, i.uv).x ); + } + ENDCG + } + + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag (v2f_img i) : SV_Target + { + return length( tex2D(_A, i.uv).xy ); + } + ENDCG + } + + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag (v2f_img i) : SV_Target + { + return length( tex2D(_A, i.uv).xyz ); + } + ENDCG + } + + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag (v2f_img i) : SV_Target + { + return length( tex2D(_A, i.uv)); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LengthOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LengthOpNode.shader.meta new file mode 100644 index 00000000..641415af --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LengthOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 1c1f6d6512b758942a8b9dd1bea12f34 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LerpOp.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LerpOp.shader new file mode 100644 index 00000000..3b95b837 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LerpOp.shader @@ -0,0 +1,32 @@ +Shader "Hidden/LerpOp" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + _C ("_Alpha", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + float4 alpha = tex2D( _C, i.uv ); + return lerp(a,b,alpha); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LerpOp.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LerpOp.shader.meta new file mode 100644 index 00000000..07b4fbcc --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LerpOp.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 34d9c4cdcf1fadb49af2de3f90bbc57d +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LightAttenuation.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LightAttenuation.shader new file mode 100644 index 00000000..a3fc3842 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LightAttenuation.shader @@ -0,0 +1,26 @@ +Shader "Hidden/LightAttenuation" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + #include "Lighting.cginc" + + float4 _EditorWorldLightPos; + + float4 frag(v2f_img i) : SV_Target + { + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 worldNormal = normalize(float3(xy, z)); + float3 lightDir = normalize( _EditorWorldLightPos.xyz ); + return saturate(dot(worldNormal ,lightDir) * 10 + 0.1); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LightAttenuation.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LightAttenuation.shader.meta new file mode 100644 index 00000000..7f133af6 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LightAttenuation.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 4b12227498a5c8d46b6c44ea018e5b56 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LightColorNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LightColorNode.shader new file mode 100644 index 00000000..ad3d5ebd --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LightColorNode.shader @@ -0,0 +1,56 @@ +Shader "Hidden/LightColorNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + #include "Lighting.cginc" + + float4 _EditorLightColor; + + float4 frag(v2f_img i) : SV_Target + { + return _EditorLightColor; + } + ENDCG + } + + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + #include "Lighting.cginc" + + float4 _EditorLightColor; + + float4 frag(v2f_img i) : SV_Target + { + return float4(_EditorLightColor.rgb, 0); + } + ENDCG + } + + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + #include "Lighting.cginc" + + float4 _EditorLightColor; + + float4 frag(v2f_img i) : SV_Target + { + return _EditorLightColor.a; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LightColorNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LightColorNode.shader.meta new file mode 100644 index 00000000..fcd86897 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LightColorNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 43f5d3c033eb5044e9aeb40241358349 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LinearDepthNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LinearDepthNode.shader new file mode 100644 index 00000000..0bcf7794 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LinearDepthNode.shader @@ -0,0 +1,43 @@ +Shader "Hidden/LinearDepthNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + float depthValue = tex2D( _A, i.uv ).r; + return LinearEyeDepth( depthValue ); + } + ENDCG + } + + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + float depthValue = tex2D( _A, i.uv ).r; + return Linear01Depth( depthValue ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LinearDepthNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LinearDepthNode.shader.meta new file mode 100644 index 00000000..754a2f47 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LinearDepthNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 2b0785cc8b854974ab4e45419072705a +timeCreated: 1546440865 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LinearToGammaNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LinearToGammaNode.shader new file mode 100644 index 00000000..b2468804 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LinearToGammaNode.shader @@ -0,0 +1,27 @@ +Shader "Hidden/LinearToGammaNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + float4 c = tex2D( _A, i.uv ); + c.rgb = LinearToGammaSpace( c.rgb ); + return c; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LinearToGammaNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LinearToGammaNode.shader.meta new file mode 100644 index 00000000..2c413a8e --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LinearToGammaNode.shader.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9027c408b928c5c4d8b450712049d541 +timeCreated: 1489078120 +licenseType: Store +ShaderImporter: + defaultTextures: + - _MainTex: {instanceID: 0} + - _BackGround: {fileID: 2800000, guid: 750b1bd7ba8bd28489650de6d0a95cc5, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Log10OpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Log10OpNode.shader new file mode 100644 index 00000000..6259c6cc --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Log10OpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/Log10OpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return log10(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Log10OpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Log10OpNode.shader.meta new file mode 100644 index 00000000..981dbc50 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Log10OpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 9e7cfa357dd261f499d0ba8637ff2614 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Log2OpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Log2OpNode.shader new file mode 100644 index 00000000..44dabdb9 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Log2OpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/Log2OpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return log2(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Log2OpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Log2OpNode.shader.meta new file mode 100644 index 00000000..a8a3888d --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Log2OpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 5975a154432d4c64cacd78d015ed08ba +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LogOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LogOpNode.shader new file mode 100644 index 00000000..b95abb03 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LogOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/LogOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return log(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LogOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LogOpNode.shader.meta new file mode 100644 index 00000000..317db1f7 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LogOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: a3293e0a73834b24682775f5d8ee1e7c +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LuminanceNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LuminanceNode.shader new file mode 100644 index 00000000..a56bbe32 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LuminanceNode.shader @@ -0,0 +1,26 @@ +Shader "Hidden/LuminanceNode" +{ + Properties + { + _A ("_RGB", 2D) = "white" {} + } + SubShader + { + Pass //Luminance + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + float lum = Luminance( tex2D( _A, i.uv ) ); + return float4( lum.xxx, 1); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LuminanceNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LuminanceNode.shader.meta new file mode 100644 index 00000000..a3039712 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_LuminanceNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 81e1d8ffeec8a4b4cabb1094bc981048 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NegateNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NegateNode.shader new file mode 100644 index 00000000..9d94ffbc --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NegateNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/NegateNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return -(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NegateNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NegateNode.shader.meta new file mode 100644 index 00000000..8cff94e0 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NegateNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: b035bc40da1ac7c4eafad4116382ec79 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NodeMasking.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NodeMasking.shader new file mode 100644 index 00000000..b129cccb --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NodeMasking.shader @@ -0,0 +1,55 @@ +Shader "Hidden/NodeMasking" +{ + Properties { + _Ports ("_Ports", Vector) = (0,0,0,0) + _MainTex("_MainTex", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _MainTex; + float4 _Ports; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _MainTex, i.uv ); + return a * _Ports; + } + ENDCG + } + + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _MaskTex; + float _Port; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _MaskTex, i.uv ); + float4 c = 0; + if ( _Port == 1 ) + c = a.x; + else if ( _Port == 2 ) + c = a.y; + else if ( _Port == 3 ) + c = a.z; + else if ( _Port == 4 ) + c = a.w; + + return c; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NodeMasking.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NodeMasking.shader.meta new file mode 100644 index 00000000..4a020c31 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NodeMasking.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 9c34f18ebe2be3e48b201b748c73dec0 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NoiseGeneratorNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NoiseGeneratorNode.shader new file mode 100644 index 00000000..a8b92866 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NoiseGeneratorNode.shader @@ -0,0 +1,267 @@ +Shader "Hidden/NoiseGeneratorNode" +{ + Properties + { + _A ("_RGB", 2D) = "white" {} + _B ("_RGB", 2D) = "white" {} + _To01Range ("_To01Range", Float) = 0 + } + + SubShader + { + CGINCLUDE + sampler2D _A; + sampler2D _B; + float _To01Range; + ENDCG + + Pass //Simplex2D + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + + float3 mod2D289 ( float3 x ) { return x - floor ( x * ( 1.0 / 289.0 ) ) * 289.0; } + float2 mod2D289 ( float2 x ) { return x - floor ( x * ( 1.0 / 289.0 ) ) * 289.0; } + float3 permute ( float3 x ) { return mod2D289 ( ( ( x * 34.0 ) + 1.0 ) * x ); } + + float snoise ( float2 v ) + { + const float4 C = float4( 0.211324865405187, 0.366025403784439, -0.577350269189626, 0.024390243902439 ); + float2 i = floor ( v + dot ( v, C.yy ) ); + float2 x0 = v - i + dot ( i, C.xx ); + float2 i1; + i1 = ( x0.x > x0.y ) ? float2( 1.0, 0.0 ) : float2( 0.0, 1.0 ); + float4 x12 = x0.xyxy + C.xxzz; + x12.xy -= i1; + i = mod2D289 ( i ); + float3 p = permute ( permute ( i.y + float3( 0.0, i1.y, 1.0 ) ) + i.x + float3( 0.0, i1.x, 1.0 ) ); + float3 m = max ( 0.5 - float3( dot ( x0, x0 ), dot ( x12.xy, x12.xy ), dot ( x12.zw, x12.zw ) ), 0.0 ); + m = m * m; + m = m * m; + float3 x = 2.0 * frac ( p * C.www ) - 1.0; + float3 h = abs ( x ) - 0.5; + float3 ox = floor ( x + 0.5 ); + float3 a0 = x - ox; + m *= 1.79284291400159 - 0.85373472095314 * ( a0 * a0 + h * h ); + float3 g; + g.x = a0.x * x0.x + h.x * x0.y; + g.yz = a0.yz * x12.xz + h.yz * x12.yw; + return 130.0 * dot ( m, g ); + } + float4 frag(v2f_img i) : SV_Target + { + float2 size = tex2D( _A, i.uv ).rg; + float scale = tex2D (_B, i.uv).r; + float noiseVal = snoise ( size * scale ); + noiseVal = (_To01Range > 0) ? noiseVal * 0.5 + 0.5 : noiseVal; + return float4( noiseVal.xxx, 1); + } + ENDCG + } + + Pass //Simplex3D + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + float3 mod3D289 ( float3 x ) { return x - floor ( x / 289.0 ) * 289.0; } + + float4 mod3D289 ( float4 x ) { return x - floor ( x / 289.0 ) * 289.0; } + + float4 permute ( float4 x ) { return mod3D289 ( ( x * 34.0 + 1.0 ) * x ); } + + float4 taylorInvSqrt ( float4 r ) { return 1.79284291400159 - r * 0.85373472095314; } + + float snoise ( float3 v ) + { + const float2 C = float2( 1.0 / 6.0, 1.0 / 3.0 ); + float3 i = floor ( v + dot ( v, C.yyy ) ); + float3 x0 = v - i + dot ( i, C.xxx ); + float3 g = step ( x0.yzx, x0.xyz ); + float3 l = 1.0 - g; + float3 i1 = min ( g.xyz, l.zxy ); + float3 i2 = max ( g.xyz, l.zxy ); + float3 x1 = x0 - i1 + C.xxx; + float3 x2 = x0 - i2 + C.yyy; + float3 x3 = x0 - 0.5; + i = mod3D289 ( i ); + float4 p = permute ( permute ( permute ( i.z + float4( 0.0, i1.z, i2.z, 1.0 ) ) + i.y + float4( 0.0, i1.y, i2.y, 1.0 ) ) + i.x + float4( 0.0, i1.x, i2.x, 1.0 ) ); + float4 j = p - 49.0 * floor ( p / 49.0 ); // mod(p,7*7) + float4 x_ = floor ( j / 7.0 ); + float4 y_ = floor ( j - 7.0 * x_ ); // mod(j,N) + float4 x = ( x_ * 2.0 + 0.5 ) / 7.0 - 1.0; + float4 y = ( y_ * 2.0 + 0.5 ) / 7.0 - 1.0; + float4 h = 1.0 - abs ( x ) - abs ( y ); + float4 b0 = float4( x.xy, y.xy ); + float4 b1 = float4( x.zw, y.zw ); + float4 s0 = floor ( b0 ) * 2.0 + 1.0; + float4 s1 = floor ( b1 ) * 2.0 + 1.0; + float4 sh = -step ( h, 0.0 ); + float4 a0 = b0.xzyw + s0.xzyw * sh.xxyy; + float4 a1 = b1.xzyw + s1.xzyw * sh.zzww; + float3 g0 = float3( a0.xy, h.x ); + float3 g1 = float3( a0.zw, h.y ); + float3 g2 = float3( a1.xy, h.z ); + float3 g3 = float3( a1.zw, h.w ); + float4 norm = taylorInvSqrt ( float4( dot ( g0, g0 ), dot ( g1, g1 ), dot ( g2, g2 ), dot ( g3, g3 ) ) ); + g0 *= norm.x; + g1 *= norm.y; + g2 *= norm.z; + g3 *= norm.w; + float4 m = max ( 0.6 - float4( dot ( x0, x0 ), dot ( x1, x1 ), dot ( x2, x2 ), dot ( x3, x3 ) ), 0.0 ); + m = m* m; + m = m* m; + float4 px = float4( dot ( x0, g0 ), dot ( x1, g1 ), dot ( x2, g2 ), dot ( x3, g3 ) ); + return 42.0 * dot ( m, px ); + } + + float4 frag ( v2f_img i ) : SV_Target + { + float3 size = tex2D ( _A, i.uv ).rgb; + float scale = tex2D (_B, i.uv).r; + float noiseVal = snoise ( size * scale ); + noiseVal = (_To01Range > 0) ? noiseVal * 0.5 + 0.5 : noiseVal; + return float4( noiseVal.xxx, 1 ); + } + ENDCG + } + + Pass // Gradient - Shader Toy + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + //https://www.shadertoy.com/view/XdXGW8 + float2 GradientNoiseDir (float2 x) + { + const float2 k = float2(0.3183099, 0.3678794); + x = x * k + k.yx; + return -1.0 + 2.0 * frac (16.0 * k * frac (x.x * x.y * (x.x + x.y))); + } + + float GradientNoise (float2 UV, float Scale) + { + float2 p = UV * Scale; + float2 i = floor (p); + float2 f = frac (p); + float2 u = f * f * (3.0 - 2.0 * f); + return lerp (lerp (dot (GradientNoiseDir (i + float2(0.0, 0.0)), f - float2(0.0, 0.0)), + dot (GradientNoiseDir (i + float2(1.0, 0.0)), f - float2(1.0, 0.0)), u.x), + lerp (dot (GradientNoiseDir (i + float2(0.0, 1.0)), f - float2(0.0, 1.0)), + dot (GradientNoiseDir (i + float2(1.0, 1.0)), f - float2(1.0, 1.0)), u.x), u.y); + } + + float4 frag (v2f_img i) : SV_Target + { + float3 size = tex2D (_A, i.uv).rgb; + float scale = tex2D (_B, i.uv).r; + float noiseVal = GradientNoise (size , scale); + noiseVal = (_To01Range > 0) ? noiseVal * 0.5 + 0.5 : noiseVal; + return float4(noiseVal.xxx, 1); + } + ENDCG + } + + Pass // Gradient - Unity + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + float2 UnityGradientNoiseDir (float2 p) + { + p = fmod (p , 289); + float x = fmod ((34 * p.x + 1) * p.x , 289) + p.y; + x = fmod ((34 * x + 1) * x , 289); + x = frac (x / 41) * 2 - 1; + return normalize (float2(x - floor (x + 0.5), abs (x) - 0.5)); + } + + float UnityGradientNoise (float2 UV, float Scale) + { + float2 p = UV * Scale; + float2 ip = floor (p); + float2 fp = frac (p); + float d00 = dot (UnityGradientNoiseDir (ip), fp); + float d01 = dot (UnityGradientNoiseDir (ip + float2(0, 1)), fp - float2(0, 1)); + float d10 = dot (UnityGradientNoiseDir (ip + float2(1, 0)), fp - float2(1, 0)); + float d11 = dot (UnityGradientNoiseDir (ip + float2(1, 1)), fp - float2(1, 1)); + fp = fp * fp * fp * (fp * (fp * 6 - 15) + 10); + return lerp (lerp (d00, d01, fp.y), lerp (d10, d11, fp.y), fp.x) + 0.5; + } + + float4 frag (v2f_img i) : SV_Target + { + float3 size = tex2D (_A, i.uv).rgb; + float scale = tex2D (_B, i.uv).r; + float noiseVal = UnityGradientNoise(size , scale); + noiseVal = (_To01Range > 0) ? noiseVal * 0.5 + 0.5 : noiseVal; + return float4(noiseVal.xxx, 1); + } + ENDCG + } + + Pass // Simple + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + inline float noise_randomValue (float2 uv) { return frac(sin(dot(uv, float2(12.9898, 78.233)))*43758.5453); } + inline float noise_interpolate (float a, float b, float t) { return (1.0-t)*a + (t*b); } + inline float valueNoise (float2 uv) + { + float2 i = floor(uv); + float2 f = frac( uv ); + f = f* f * (3.0 - 2.0 * f); + uv = abs( frac(uv) - 0.5); + float2 c0 = i + float2( 0.0, 0.0 ); + float2 c1 = i + float2( 1.0, 0.0 ); + float2 c2 = i + float2( 0.0, 1.0 ); + float2 c3 = i + float2( 1.0, 1.0 ); + float r0 = noise_randomValue( c0 ); + float r1 = noise_randomValue( c1 ); + float r2 = noise_randomValue( c2 ); + float r3 = noise_randomValue( c3 ); + float bottomOfGrid = noise_interpolate( r0, r1, f.x ); + float topOfGrid = noise_interpolate( r2, r3, f.x ); + float t = noise_interpolate( bottomOfGrid, topOfGrid, f.y ); + return t; + } + + float SimpleNoise(float2 UV) + { + float t = 0.0; + float freq = pow( 2.0, float( 0 ) ); + float amp = pow( 0.5, float( 3 - 0 ) ); + t += valueNoise( UV/freq )*amp; + freq = pow(2.0, float(1)); + amp = pow(0.5, float(3-1)); + t += valueNoise( UV/freq )*amp; + freq = pow(2.0, float(2)); + amp = pow(0.5, float(3-2)); + t += valueNoise( UV/freq )*amp; + return t; + } + + float4 frag (v2f_img i) : SV_Target + { + float3 size = tex2D (_A, i.uv).rgb; + float scale = tex2D (_B, i.uv).r; + float noiseVal = SimpleNoise(size * scale); + noiseVal = (_To01Range == 0) ? noiseVal * 2 - 1 : noiseVal; + return float4(noiseVal.xxx, 1); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NoiseGeneratorNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NoiseGeneratorNode.shader.meta new file mode 100644 index 00000000..d92bbfc3 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NoiseGeneratorNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: cd2d37ef5da190b42a91a5a690ba2a7d +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NormalVertexDataNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NormalVertexDataNode.shader new file mode 100644 index 00000000..8fce5f63 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NormalVertexDataNode.shader @@ -0,0 +1,22 @@ +Shader "Hidden/NormalVertexDataNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + float4 frag(v2f_img i) : SV_Target + { + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 normal = normalize(float3(xy, z)); + return float4(normal, 1); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NormalVertexDataNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NormalVertexDataNode.shader.meta new file mode 100644 index 00000000..9ec1526f --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NormalVertexDataNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 6b24b06c33f9fe84c8a2393f13ab5406 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NormalizeNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NormalizeNode.shader new file mode 100644 index 00000000..fdcc64f1 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NormalizeNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/NormalizeNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return normalize(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NormalizeNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NormalizeNode.shader.meta new file mode 100644 index 00000000..98ea8d36 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_NormalizeNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: a51b11dfb6b32884e930595e5f9defa8 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjSpaceLightDirHlpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjSpaceLightDirHlpNode.shader new file mode 100644 index 00000000..4aa3e889 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjSpaceLightDirHlpNode.shader @@ -0,0 +1,22 @@ +Shader "Hidden/ObjSpaceLightDirHlpNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 _EditorWorldLightPos; + + float4 frag( v2f_img i ) : SV_Target + { + float3 lightDir = mul(unity_WorldToObject, normalize( _EditorWorldLightPos.xyz ) ); + return float4 ( lightDir, 1); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjSpaceLightDirHlpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjSpaceLightDirHlpNode.shader.meta new file mode 100644 index 00000000..a1d64ecc --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjSpaceLightDirHlpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: c7852de24cec4a744b5358921e23feee +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjSpaceViewDirHlpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjSpaceViewDirHlpNode.shader new file mode 100644 index 00000000..3535052d --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjSpaceViewDirHlpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/ObjSpaceViewDirHlpNode" +{ +Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + sampler2D _A; + + float4 frag( v2f_img i ) : SV_Target + { + return float4(ObjSpaceViewDir(tex2D( _A, i.uv )),0); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjSpaceViewDirHlpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjSpaceViewDirHlpNode.shader.meta new file mode 100644 index 00000000..4c8fc971 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjSpaceViewDirHlpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: b6b985e165d0dd44c96a05b46e267e64 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectScaleNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectScaleNode.shader new file mode 100644 index 00000000..445c6274 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectScaleNode.shader @@ -0,0 +1,36 @@ +Shader "Hidden/ObjectScaleNode" +{ + SubShader + { + + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + float4 frag(v2f_img i) : SV_Target + { + float3 objectScale = float3( length( unity_ObjectToWorld[ 0 ].xyz ), length( unity_ObjectToWorld[ 1 ].xyz ), length( unity_ObjectToWorld[ 2 ].xyz ) ); + return float4(objectScale, 1); + } + ENDCG + } + + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + float4 frag (v2f_img i) : SV_Target + { + float3 objectScale = 1.0 / float3(length (unity_WorldToObject[0].xyz), length (unity_WorldToObject[1].xyz), length (unity_WorldToObject[2].xyz)); + return float4(objectScale, 1); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectScaleNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectScaleNode.shader.meta new file mode 100644 index 00000000..3c410d62 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectScaleNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 5540033c6c52f51468938c1a42bd2730 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectToClipPos.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectToClipPos.shader new file mode 100644 index 00000000..b85a4103 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectToClipPos.shader @@ -0,0 +1,28 @@ +Shader "Hidden/ObjectToClipPos" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag( v2f_img i ) : SV_Target + { + float3 pos = tex2D( _A, i.uv ).xyz; + return UnityObjectToClipPos(pos); + } + ENDCG + } + + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectToClipPos.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectToClipPos.shader.meta new file mode 100644 index 00000000..929708b9 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectToClipPos.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 14ec765a147a53340877b489e73f1c9f +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectToViewPos.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectToViewPos.shader new file mode 100644 index 00000000..6acf81a9 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectToViewPos.shader @@ -0,0 +1,29 @@ +Shader "Hidden/ObjectToViewPos" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag( v2f_img i ) : SV_Target + { + float3 pos = tex2D( _A, i.uv ).xyz; + float3 result = UnityObjectToViewPos(pos); + return float4(result, 1.0); + } + ENDCG + } + + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectToViewPos.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectToViewPos.shader.meta new file mode 100644 index 00000000..94537742 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectToViewPos.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: b790bc1d468a51840a9facef372b4729 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectToWorldTransfNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectToWorldTransfNode.shader new file mode 100644 index 00000000..57050b8b --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectToWorldTransfNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/ObjectToWorldTransfNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return mul(unity_ObjectToWorld, tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectToWorldTransfNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectToWorldTransfNode.shader.meta new file mode 100644 index 00000000..9aa0dd96 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ObjectToWorldTransfNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: a4044ee165813654486d0cecd0de478c +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_OneMinusNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_OneMinusNode.shader new file mode 100644 index 00000000..6c290ee1 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_OneMinusNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/OneMinusNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return 1-tex2D(_A, i.uv); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_OneMinusNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_OneMinusNode.shader.meta new file mode 100644 index 00000000..84d6766d --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_OneMinusNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: bed5300b92e7bb0419d0f4accb853312 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_OrthoParams.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_OrthoParams.shader new file mode 100644 index 00000000..119867b4 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_OrthoParams.shader @@ -0,0 +1,19 @@ +Shader "Hidden/OrthoParams" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag( v2f_img i ) : SV_Target + { + return unity_OrthoParams; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_OrthoParams.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_OrthoParams.shader.meta new file mode 100644 index 00000000..b619a3a8 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_OrthoParams.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 88a910ece3dce224793e669bb1bc158d +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PannerNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PannerNode.shader new file mode 100644 index 00000000..be63723a --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PannerNode.shader @@ -0,0 +1,40 @@ +Shader "Hidden/PannerNode" +{ + Properties + { + _A ("_UVs", 2D) = "white" {} + _B ("_PanTime", 2D) = "white" {} + _C ("_PanSpeed", 2D ) = "white" {} + } + SubShader + { + Pass + { + Name "Panner" // 14 - UV panner node + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + sampler2D _A; + sampler2D _B; + sampler2D _C; + + float _UsingEditor; + float _EditorTime; + + float4 frag(v2f_img i) : SV_Target + { + float multiplier = tex2D ( _B, i.uv ).r; + float time = _EditorTime*multiplier; + if ( _UsingEditor == 0 ) + { + time = multiplier; + } + float2 speed = tex2D ( _C, i.uv ).rg; + return tex2D( _A, i.uv) + time * float4( speed, 0, 0 ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PannerNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PannerNode.shader.meta new file mode 100644 index 00000000..d3b5057f --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PannerNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 6f89a5d96bdad114b9bbd0c236cac622 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ParallaxMappingNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ParallaxMappingNode.shader new file mode 100644 index 00000000..5ea1a1bb --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ParallaxMappingNode.shader @@ -0,0 +1,44 @@ +Shader "Hidden/ParallaxMappingNode" +{ + Properties + { + _A ("_UV", 2D) = "white" {} + _B ("_Height", 2D) = "white" {} + _C ("_Scale", 2D) = "white" {} + _D ("_ViewDirTan", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + float _ParallaxType; + + float4 frag(v2f_img i) : SV_Target + { + float2 uv = tex2D( _A, i.uv ).rg; + float h = tex2D( _B, i.uv ).r; + float s = tex2D( _C, i.uv ).r; + float3 vt = tex2D( _D, i.uv ).xyz; + float2 parallaxed = uv; + if ( _ParallaxType == 1 ) { + parallaxed = ( ( h - 1 )*( vt.xy / vt.z ) * s ) + uv; + } + else { + parallaxed = ( ( h - 1 )*( vt.xy ) * s ) + uv; + } + + return float4(parallaxed, 0 , 0); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ParallaxMappingNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ParallaxMappingNode.shader.meta new file mode 100644 index 00000000..35dfe966 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ParallaxMappingNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 589f12f68e00ac74286815aa56053fcc +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ParallaxOffset.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ParallaxOffset.shader new file mode 100644 index 00000000..0db961ad --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ParallaxOffset.shader @@ -0,0 +1,35 @@ +Shader "Hidden/ParallaxOffset" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + _C ("_C", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + + float4 frag( v2f_img i ) : SV_Target + { + float h = tex2D( _A, i.uv ).x; + float height = tex2D( _B, i.uv ).x; + float3 viewDir = tex2D( _C, i.uv ).xyz; + float2 result = ParallaxOffset (h, height, viewDir); + return float4(result, 0, 1); + + } + ENDCG + } + + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ParallaxOffset.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ParallaxOffset.shader.meta new file mode 100644 index 00000000..5c74486d --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ParallaxOffset.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 6085f804c6fbf354eac039c11feaa7cc +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PiNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PiNode.shader new file mode 100644 index 00000000..000e8c04 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PiNode.shader @@ -0,0 +1,21 @@ +Shader "Hidden/PiNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return tex2D( _A, i.uv ).r * UNITY_PI; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PiNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PiNode.shader.meta new file mode 100644 index 00000000..a3cac8ce --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PiNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: bf4a65726dab3d445a69fb1d0945c33e +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PosVertexDataNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PosVertexDataNode.shader new file mode 100644 index 00000000..15f3ad94 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PosVertexDataNode.shader @@ -0,0 +1,22 @@ +Shader "Hidden/PosVertexDataNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag(v2f_img i) : SV_Target + { + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 vertexPos = float3(xy, z); + return float4(vertexPos, 1); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PosVertexDataNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PosVertexDataNode.shader.meta new file mode 100644 index 00000000..b86aa1a6 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PosVertexDataNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: a5c14f759dd021b4b8d4b6eeb85ac227 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PosterizeNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PosterizeNode.shader new file mode 100644 index 00000000..099d105c --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PosterizeNode.shader @@ -0,0 +1,35 @@ +Shader "Hidden/PosterizeNode" +{ + Properties + { + _A ( "_RGBA", 2D ) = "white" {} + _B ( "_Power", 2D ) = "white" {} + } + + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + uniform sampler2D _A; + uniform sampler2D _B; + + float4 frag ( v2f_img i ) : SV_Target + { + float4 rgba = tex2D ( _B, i.uv ); + float power = tex2D ( _A, i.uv ).r; + if ( power < 1 ) + return float4(0,0,0,0); + float divideOp = 256.0 / float ( (int)power ); + float4 finalColor = ( floor ( rgba * divideOp ) / divideOp ); + + return finalColor; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PosterizeNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PosterizeNode.shader.meta new file mode 100644 index 00000000..e652f83e --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PosterizeNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: ecb3048ef0eec1645bad1d72a98d8279 +timeCreated: 1515421907 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PowerNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PowerNode.shader new file mode 100644 index 00000000..721fe1d1 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PowerNode.shader @@ -0,0 +1,29 @@ +Shader "Hidden/PowerNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + return pow(a, b); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PowerNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PowerNode.shader.meta new file mode 100644 index 00000000..205e0379 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PowerNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 758cc2f8b537b4e4b93d9833075d138c +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PrimitiveIDVariableNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PrimitiveIDVariableNode.shader new file mode 100644 index 00000000..30dc0ca9 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PrimitiveIDVariableNode.shader @@ -0,0 +1,19 @@ +Shader "Hidden/PrimitiveIDVariableNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + float4 frag( v2f_img i, uint ase_primitiveId : SV_PrimitiveID ) : SV_Target + { + return ase_primitiveId; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PrimitiveIDVariableNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PrimitiveIDVariableNode.shader.meta new file mode 100644 index 00000000..f2438c30 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_PrimitiveIDVariableNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 92c1b588d7658594cb219696f593f64b +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ProjectionParams.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ProjectionParams.shader new file mode 100644 index 00000000..835f8865 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ProjectionParams.shader @@ -0,0 +1,19 @@ +Shader "Hidden/ProjectionParams" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag( v2f_img i ) : SV_Target + { + return _ProjectionParams; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ProjectionParams.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ProjectionParams.shader.meta new file mode 100644 index 00000000..acd54338 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ProjectionParams.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 97ae846cb0a6b044388fad3bc03bb4c2 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RGBToHSVNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RGBToHSVNode.shader new file mode 100644 index 00000000..510fb753 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RGBToHSVNode.shader @@ -0,0 +1,37 @@ +Shader "Hidden/RGBToHSVNode" +{ + Properties + { + _A ( "_RGB", 2D ) = "white" {} + } + + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + uniform sampler2D _A; + + float3 RGBToHSV(float3 c) + { + float4 K = float4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); + float4 p = lerp( float4( c.bg, K.wz ), float4( c.gb, K.xy ), step( c.b, c.g ) ); + float4 q = lerp( float4( p.xyw, c.r ), float4( c.r, p.yzx ), step( p.x, c.r ) ); + float d = q.x - min( q.w, q.y ); + float e = 1.0e-10; + return float3( abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); + } + + float4 frag ( v2f_img i ) : SV_Target + { + float3 rgb = tex2D ( _A, i.uv ).rgb; + return float4( RGBToHSV(rgb), 1 ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RGBToHSVNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RGBToHSVNode.shader.meta new file mode 100644 index 00000000..87cdb899 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RGBToHSVNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 0f2f09b49bf4954428aafa2dfe1a9a09 +timeCreated: 1515423140 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RadiansOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RadiansOpNode.shader new file mode 100644 index 00000000..48c8343d --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RadiansOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/RadiansOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return radians(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RadiansOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RadiansOpNode.shader.meta new file mode 100644 index 00000000..aa740942 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RadiansOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: d27d189eaf6eeb04fae9913d9617ece5 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RangedFloatNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RangedFloatNode.shader new file mode 100644 index 00000000..62a378ed --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RangedFloatNode.shader @@ -0,0 +1,24 @@ +Shader "Hidden/RangedFloatNode" +{ + Properties { + _InputFloat ("_InputFloat", Float) = 0 + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + float _InputFloat; + + float4 frag( v2f_img i ) : SV_Target + { + return _InputFloat; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RangedFloatNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RangedFloatNode.shader.meta new file mode 100644 index 00000000..35db24d8 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RangedFloatNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: d9ca47581ac157145bff6f72ac5dd73e +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ReflectOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ReflectOpNode.shader new file mode 100644 index 00000000..c9f2a559 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ReflectOpNode.shader @@ -0,0 +1,29 @@ +Shader "Hidden/ReflectOpNode" +{ + Properties + { + _A ("_Incident", 2D) = "white" {} + _B ("_Normal", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + return reflect(a, b); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ReflectOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ReflectOpNode.shader.meta new file mode 100644 index 00000000..48ebfd45 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ReflectOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: fb520f2145c0fa0409320a9e6d720758 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RefractOpVec.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RefractOpVec.shader new file mode 100644 index 00000000..0aee3cf1 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RefractOpVec.shader @@ -0,0 +1,32 @@ +Shader "Hidden/RefractOpVec" +{ + Properties + { + _A ("_Incident", 2D) = "white" {} + _B ("_Normal", 2D) = "white" {} + _C ("_Eta", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + + float4 frag(v2f_img i) : SV_Target + { + float4 inc = tex2D( _A, i.uv ); + float4 nor = tex2D( _B, i.uv ); + float4 eta = tex2D( _C, i.uv ); + return refract( inc, nor, eta ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RefractOpVec.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RefractOpVec.shader.meta new file mode 100644 index 00000000..47b5f3d3 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RefractOpVec.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 5ab44ca484bed8b4884b03b1c00fdc3d +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RegisterLocalVarNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RegisterLocalVarNode.shader new file mode 100644 index 00000000..8538155e --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RegisterLocalVarNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/RegisterLocalVarNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return tex2D( _A, i.uv ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RegisterLocalVarNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RegisterLocalVarNode.shader.meta new file mode 100644 index 00000000..af9e1bed --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RegisterLocalVarNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 5aaa1d3ea9e1fa64781647e035a82334 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RelayNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RelayNode.shader new file mode 100644 index 00000000..598f22bd --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RelayNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/RelayNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return tex2D( _A, i.uv ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RelayNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RelayNode.shader.meta new file mode 100644 index 00000000..29421efd --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RelayNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 74e4d859fbdb2c0468de3612145f4929 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RotatorNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RotatorNode.shader new file mode 100644 index 00000000..59c2d434 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RotatorNode.shader @@ -0,0 +1,43 @@ +Shader "Hidden/RotatorNode" +{ + Properties + { + _A ("_UVs", 2D) = "white" {} + _B ("_Anchor", 2D) = "white" {} + _C ("_RotTimeTex", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + sampler2D _A; + sampler2D _B; + sampler2D _C; + float _UsingEditor; + float _EditorTime; + + float4 frag(v2f_img i) : SV_Target + { + float multiplier = tex2D ( _C, i.uv ).r; + float time = _EditorTime*multiplier; + + if ( _UsingEditor == 0 ) + { + time = multiplier; + } + + float cosT = cos( time ); + float sinT = sin( time ); + + float2 a = tex2D( _B, i.uv ).rg; + return float4( mul( tex2D( _A, i.uv ).xy - a, float2x2( cosT, -sinT, sinT, cosT ) ) + a, 0, 1 ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RotatorNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RotatorNode.shader.meta new file mode 100644 index 00000000..c9a283ee --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RotatorNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: e21408a1c7f12f14bbc2652f69bce1fc +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RoundOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RoundOpNode.shader new file mode 100644 index 00000000..85226ad2 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RoundOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/RoundOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return round(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RoundOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RoundOpNode.shader.meta new file mode 100644 index 00000000..21a0a034 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RoundOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 554d561417b207c4bb3cd4a0c86b6907 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RsqrtOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RsqrtOpNode.shader new file mode 100644 index 00000000..b15f1ebc --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RsqrtOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/RSqrtOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return rsqrt(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RsqrtOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RsqrtOpNode.shader.meta new file mode 100644 index 00000000..077ff4f7 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_RsqrtOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: c58c17cb1f7f6e6429a2c7a6cdaef87d +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SamplerNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SamplerNode.shader new file mode 100644 index 00000000..ca573ce4 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SamplerNode.shader @@ -0,0 +1,141 @@ +Shader "Hidden/SamplerNode" +{ + Properties + { + _B ("_UVs", 2D) = "white" {} + _C ("_Level", 2D) = "white" {} + _F ("_NormalScale", 2D) = "white" {} + _CustomUVs ("_CustomUVs", Int) = 0 + _Unpack ("_Unpack", Int) = 0 + _LodType ("_LodType", Int) = 0 + + _Sampler ("_Sampler", 2D) = "white" {} + _Sampler3D ("_Sampler3D", 3D) = "white" {} + _Array ("_Array", 2DArray) = "white" {} + _Cube( "_Cube", CUBE) = "white" {} + _Default ("_Default", Int) = 0 + _Type ("_Type", Int) = 0 + } + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #pragma exclude_renderers d3d9 + #pragma target 3.5 + #include "UnityCG.cginc" + #include "UnityStandardUtils.cginc" + + sampler2D _F; + int _CustomUVs; + int _Unpack; + int _Default; + + float4 frag( v2f_img i ) : SV_Target + { + if( _Default == 1 ) + { + return 1; + } + else if( _Default == 2 ) + { + return 0; + } + else if( _Default == 3 ) + { + return 0.5f; + } + else if( _Default == 4 ) + { + float4 h = float4(0.5,0.5,1,1); + if ( _Unpack == 1 ) + { + h.rgb = UnpackScaleNormal( h.xxyy, tex2D( _F, i.uv ).r ); + } + return h; + } + return 1; + } + ENDCG + } + + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #pragma exclude_renderers d3d9 + #pragma target 3.5 + #include "UnityCG.cginc" + #include "UnityStandardUtils.cginc" + + sampler2D _B; + sampler2D _C; + sampler2D _F; + int _CustomUVs; + int _Unpack; + int _LodType; + + UNITY_DECLARE_TEX2DARRAY (_Array); + samplerCUBE _Cube; + sampler2D _Sampler; + sampler3D _Sampler3D; + int _Type; + + float4 frag (v2f_img i) : SV_Target + { + if (_Type == 4) + { + return UNITY_SAMPLE_TEX2DARRAY (_Array, float3(i.uv, 0)); + } + else if (_Type == 3) + { + float3 uvs = float3(i.uv,0); + + if (_CustomUVs == 1) + uvs = tex2D (_B, i.uv).xyz; + + return texCUBE (_Cube, uvs); + } + else if (_Type == 2) + { + return tex3D (_Sampler3D, float3(i.uv,0)); + } + else + { + float2 uvs = i.uv; + float4 c = 0; + + if (_CustomUVs == 1) + uvs = tex2D (_B, i.uv).xy; + + if (_LodType == 1) + { + float lod = tex2D (_C, i.uv).r; + c = tex2Dlod (_Sampler, float4(uvs,0,lod)); + } + else if (_LodType == 2) + { + float bias = tex2D (_C, i.uv).r; + c = tex2Dbias (_Sampler, float4(uvs,0,bias)); + } + else + { + c = tex2D (_Sampler, uvs); + } + + if (_Unpack == 1) + { + float nscale = tex2D (_F, i.uv).r; + c.rgb = UnpackScaleNormal (c, nscale); + } + + return c; + } + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SamplerNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SamplerNode.shader.meta new file mode 100644 index 00000000..c212b3bd --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SamplerNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 7b4e86a89b70ae64993bf422eb406422 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SaturateNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SaturateNode.shader new file mode 100644 index 00000000..53af8e0a --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SaturateNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/SaturateNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return saturate(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SaturateNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SaturateNode.shader.meta new file mode 100644 index 00000000..9dc04ea1 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SaturateNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: d9e53418dc8b9d34fb395e3ea3c75985 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScaleAndOffsetNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScaleAndOffsetNode.shader new file mode 100644 index 00000000..fadf9919 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScaleAndOffsetNode.shader @@ -0,0 +1,33 @@ +Shader "Hidden/ScaleAndOffsetNode" +{ + Properties + { + _A ("_Value", 2D) = "white" {} + _B ("_Scale", 2D) = "white" {} + _C ("_Offset", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + + float4 frag(v2f_img i) : SV_Target + { + float4 v = tex2D( _A, i.uv ); + float4 s = tex2D( _B, i.uv ); + float4 o = tex2D( _C, i.uv ); + + return v * s + o; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScaleAndOffsetNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScaleAndOffsetNode.shader.meta new file mode 100644 index 00000000..6bb63824 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScaleAndOffsetNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: a1f1053d4d9c3be439e0382038b74771 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScaleNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScaleNode.shader new file mode 100644 index 00000000..4a8f15cb --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScaleNode.shader @@ -0,0 +1,27 @@ +Shader "Hidden/ScaleNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + float _ScaleFloat; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + return a * _ScaleFloat; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScaleNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScaleNode.shader.meta new file mode 100644 index 00000000..1f8ba8e7 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScaleNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 6d8ec9d9dab62c44aa2dcc0e3987760d +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScreenParams.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScreenParams.shader new file mode 100644 index 00000000..65e42baf --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScreenParams.shader @@ -0,0 +1,19 @@ +Shader "Hidden/ScreenParams" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag( v2f_img i ) : SV_Target + { + return _ScreenParams; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScreenParams.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScreenParams.shader.meta new file mode 100644 index 00000000..697cc330 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScreenParams.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 78173633b803de4419206191fed3d61e +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScreenPosInputsNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScreenPosInputsNode.shader new file mode 100644 index 00000000..4c0338c4 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScreenPosInputsNode.shader @@ -0,0 +1,62 @@ +Shader "Hidden/ScreenPosInputsNode" +{ + SubShader + { + CGINCLUDE + #include "UnityCG.cginc" + inline float4 PrevComputeNonStereoScreenPos (float4 pos) { + float4 o = pos * 0.5f; + o.xy = float2(o.x, o.y*_ProjectionParams.x) + o.w; + o.zw = pos.zw; + return o; + } + + inline float4 CalculateScreenPos (float2 uv) + { + float2 xy = 2 * uv - 1; + float z = -sqrt (1 - saturate (dot (xy,xy))); + float3 vertexPos = float3(xy, z); + float4x4 P = float4x4(1,0,0,0,0,-1,0,0,0,0,1,0,0,0,0,1); //UNITY_MATRIX_P + float4x4 V = UNITY_MATRIX_V;//float4x4(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); //UNITY_MATRIX_V + float4x4 M = unity_ObjectToWorld;//float4x4(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); //unity_ObjectToWorld + float4x4 VPmatrix = mul (P, V); + float4 clipPos = mul (VPmatrix, mul (M, float4(vertexPos, 1.0))); //same as object to clip pos + float4 screenPos = ComputeScreenPos (clipPos); + return screenPos; + } + ENDCG + + //Normalized + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + + + float4 frag( v2f_img i ) : SV_Target + { + return CalculateScreenPos(i.uv); + } + ENDCG + } + + //Screen + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + + uniform float4 _ASEPreviewSize; + + float4 frag (v2f_img i) : SV_Target + { + float4 screenPos = CalculateScreenPos (i.uv); + screenPos.xy *= _ASEPreviewSize.xy; + return screenPos; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScreenPosInputsNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScreenPosInputsNode.shader.meta new file mode 100644 index 00000000..f6c791da --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ScreenPosInputsNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: a5e7295278a404175b732f1516fb68a6 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ShadeVertexLights.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ShadeVertexLights.shader new file mode 100644 index 00000000..23dc3b3f --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ShadeVertexLights.shader @@ -0,0 +1,34 @@ +Shader "Hidden/ShadeVertexLights" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + _LightCount( "_LightCount", Int ) = 4 + _IsSpotlight ("_IsSpotlight", Int) = 0 + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + int _LightCount; + int _IsSpotlight; + + float4 frag( v2f_img i ) : SV_Target + { + float4 vertexPosition = tex2D( _A, i.uv ); + float3 vertexNormal = tex2D( _B, i.uv ).xyz; + float3 result = ShadeVertexLightsFull (vertexPosition, vertexNormal, _LightCount, (_IsSpotlight > 0)); + return float4(result, 1); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ShadeVertexLights.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ShadeVertexLights.shader.meta new file mode 100644 index 00000000..73b03f3b --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ShadeVertexLights.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 3b6075034a85ad047be2d31dd213fb4f +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SignOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SignOpNode.shader new file mode 100644 index 00000000..45da74aa --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SignOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/SignOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return sign(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SignOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SignOpNode.shader.meta new file mode 100644 index 00000000..6a6b6fdd --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SignOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 3aca80b49aadf5046b7133730818e18f +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleAddOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleAddOpNode.shader new file mode 100644 index 00000000..e8965d92 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleAddOpNode.shader @@ -0,0 +1,66 @@ +Shader "Hidden/SimpleAddOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + _C ("_C", 2D) = "white" {} + _D ("_D", 2D) = "white" {} + _E ("_E", 2D) = "white" {} + _F ("_F", 2D) = "white" {} + _G ("_G", 2D) = "white" {} + _H ("_H", 2D) = "white" {} + _I ("_I", 2D) = "white" {} + _J ("_J", 2D) = "white" {} + _Count ("_Count", Int) = 0 + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + sampler2D _E; + sampler2D _F; + sampler2D _G; + sampler2D _H; + sampler2D _I; + sampler2D _J; + int _Count; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + float4 final = a + b; + + if( _Count > 2 ) + final += tex2D( _C, i.uv ); + if( _Count > 3 ) + final += tex2D( _D, i.uv ); + if( _Count > 4 ) + final += tex2D( _E, i.uv ); + if( _Count > 5 ) + final += tex2D( _F, i.uv ); + if( _Count > 6 ) + final += tex2D( _G, i.uv ); + if( _Count > 7 ) + final += tex2D( _H, i.uv ); + if( _Count > 8 ) + final += tex2D( _I, i.uv ); + if( _Count > 9 ) + final += tex2D( _J, i.uv ); + + return final; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleAddOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleAddOpNode.shader.meta new file mode 100644 index 00000000..acd038b4 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleAddOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 9eb150cbc752cbc458a0a37984b9934a +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleContrastNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleContrastNode.shader new file mode 100644 index 00000000..96fa3b1b --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleContrastNode.shader @@ -0,0 +1,39 @@ +Shader "Hidden/SimpleContrastNode" +{ + Properties + { + _A ( "_RBG", 2D ) = "white" {} + _B ( "_Fraction", 2D ) = "white" {} + } + + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + uniform sampler2D _A; + uniform sampler2D _B; + + float4 CalculateContrast ( float contrastValue, float4 colorTarget ) + { + float t = 0.5 * ( 1.0 - contrastValue ); + return mul ( float4x4( contrastValue, 0, 0, t, 0, contrastValue, 0, t, 0, 0, contrastValue, t, 0, 0, 0, 1 ), colorTarget ); + } + + float4 frag ( v2f_img i ) : SV_Target + { + float4 rgba = tex2D ( _B, i.uv ); + float value = tex2D ( _A, i.uv ).r; + + float4 finalColor = CalculateContrast( value , rgba ); + + return finalColor; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleContrastNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleContrastNode.shader.meta new file mode 100644 index 00000000..5c780fe9 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleContrastNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 8d76799413f9f0547ac9b1de7ba798f1 +timeCreated: 1515421907 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleDivideOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleDivideOpNode.shader new file mode 100644 index 00000000..5f414cd8 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleDivideOpNode.shader @@ -0,0 +1,29 @@ +Shader "Hidden/SimpleDivideOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + return a / b; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleDivideOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleDivideOpNode.shader.meta new file mode 100644 index 00000000..582a69b2 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleDivideOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 409f06d00d1094849b0834c52791fa72 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleMaxOp.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleMaxOp.shader new file mode 100644 index 00000000..f9739070 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleMaxOp.shader @@ -0,0 +1,29 @@ +Shader "Hidden/SimpleMaxOp" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + return max( a, b ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleMaxOp.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleMaxOp.shader.meta new file mode 100644 index 00000000..9575af56 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleMaxOp.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 79d7f2a11092ac84a95ef6823b34adf2 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleMinNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleMinNode.shader new file mode 100644 index 00000000..183d0dd6 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleMinNode.shader @@ -0,0 +1,29 @@ +Shader "Hidden/SimpleMinNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + return min( a, b ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleMinNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleMinNode.shader.meta new file mode 100644 index 00000000..0f2a2665 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleMinNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: d6033298044f0f14aa9932ca46e58ce6 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleMultiplyOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleMultiplyOpNode.shader new file mode 100644 index 00000000..5bd25e3e --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleMultiplyOpNode.shader @@ -0,0 +1,272 @@ +Shader "Hidden/SimpleMultiplyOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + _C ("_C", 2D) = "white" {} + _D ("_D", 2D) = "white" {} + _E ("_E", 2D) = "white" {} + _F ("_F", 2D) = "white" {} + _G ("_G", 2D) = "white" {} + _H ("_H", 2D) = "white" {} + _I ("_I", 2D) = "white" {} + _J ("_J", 2D) = "white" {} + _Count ("_Count", Int) = 0 + } + + SubShader + { + Pass //2 + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + + return a * b; + } + ENDCG + } + + Pass //3 + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + float4 c = tex2D( _C, i.uv ); + + return a * b * c; + } + ENDCG + } + + Pass //4 + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + float4 c = tex2D( _C, i.uv ); + float4 d = tex2D( _D, i.uv ); + + return a * b * c * d; + } + ENDCG + } + + Pass //5 + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + sampler2D _E; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + float4 c = tex2D( _C, i.uv ); + float4 d = tex2D( _D, i.uv ); + float4 e = tex2D( _E, i.uv ); + + return a * b * c * d * e; + } + ENDCG + } + + Pass //6 + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + sampler2D _E; + sampler2D _F; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + float4 c = tex2D( _C, i.uv ); + float4 d = tex2D( _D, i.uv ); + float4 e = tex2D( _E, i.uv ); + float4 f = tex2D( _F, i.uv ); + + return a * b * c * d * e * f; + } + ENDCG + } + + Pass //7 + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + sampler2D _E; + sampler2D _F; + sampler2D _G; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + float4 c = tex2D( _C, i.uv ); + float4 d = tex2D( _D, i.uv ); + float4 e = tex2D( _E, i.uv ); + float4 f = tex2D( _F, i.uv ); + float4 g = tex2D( _G, i.uv ); + + return a * b * c * d * e * f * g; + } + ENDCG + } + + Pass //8 + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + sampler2D _E; + sampler2D _F; + sampler2D _G; + sampler2D _H; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + float4 c = tex2D( _C, i.uv ); + float4 d = tex2D( _D, i.uv ); + float4 e = tex2D( _E, i.uv ); + float4 f = tex2D( _F, i.uv ); + float4 g = tex2D( _G, i.uv ); + float4 h = tex2D( _H, i.uv ); + + return a * b * c * d * e * f * g * h; + } + ENDCG + } + + Pass //9 + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + sampler2D _E; + sampler2D _F; + sampler2D _G; + sampler2D _H; + sampler2D _I; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + float4 c = tex2D( _C, i.uv ); + float4 d = tex2D( _D, i.uv ); + float4 e = tex2D( _E, i.uv ); + float4 f = tex2D( _F, i.uv ); + float4 g = tex2D( _G, i.uv ); + float4 h = tex2D( _H, i.uv ); + float4 is = tex2D( _I, i.uv ); + + return a * b * c * d * e * f * g * h * is; + } + ENDCG + } + + Pass //10 + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + sampler2D _E; + sampler2D _F; + sampler2D _G; + sampler2D _H; + sampler2D _I; + sampler2D _J; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + float4 c = tex2D( _C, i.uv ); + float4 d = tex2D( _D, i.uv ); + float4 e = tex2D( _E, i.uv ); + float4 f = tex2D( _F, i.uv ); + float4 g = tex2D( _G, i.uv ); + float4 h = tex2D( _H, i.uv ); + float4 is = tex2D( _I, i.uv ); + float4 j = tex2D( _J, i.uv ); + + return a * b * c * d * e * f * g * h * is * j; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleMultiplyOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleMultiplyOpNode.shader.meta new file mode 100644 index 00000000..721b5dfc --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleMultiplyOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 1ba1e43e86415ff4bbdf4d81dfcf035b +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleRemainderNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleRemainderNode.shader new file mode 100644 index 00000000..b62c655f --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleRemainderNode.shader @@ -0,0 +1,29 @@ +Shader "Hidden/SimpleRemainderNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + return a % b; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleRemainderNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleRemainderNode.shader.meta new file mode 100644 index 00000000..1cf624d8 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleRemainderNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 8fdfc429d6b191c4985c9531364c1a95 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleSubtractOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleSubtractOpNode.shader new file mode 100644 index 00000000..7282f978 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleSubtractOpNode.shader @@ -0,0 +1,29 @@ +Shader "Hidden/SimpleSubtractOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + return a - b; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleSubtractOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleSubtractOpNode.shader.meta new file mode 100644 index 00000000..89565019 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleSubtractOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 5725e8300be208449973f771ab6682f2 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleTimeNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleTimeNode.shader new file mode 100644 index 00000000..428eea6c --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleTimeNode.shader @@ -0,0 +1,29 @@ +Shader "Hidden/SimpleTimeNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _Count ("_Count", Int) = 0 + } + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + sampler2D _A; + float _EditorTime; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 t = _EditorTime; + return t * a.x; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleTimeNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleTimeNode.shader.meta new file mode 100644 index 00000000..2fa56549 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimpleTimeNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 45b7107d5d11f124fad92bcb1fa53661 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimplifiedFModOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimplifiedFModOpNode.shader new file mode 100644 index 00000000..8cc3d4ab --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimplifiedFModOpNode.shader @@ -0,0 +1,29 @@ +Shader "Hidden/SimplifiedFModOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + return frac( a / b ) * b; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimplifiedFModOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimplifiedFModOpNode.shader.meta new file mode 100644 index 00000000..29f7167c --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SimplifiedFModOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 2688236fb4f37ce47b81cc818c53321d +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SinOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SinOpNode.shader new file mode 100644 index 00000000..0645bf41 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SinOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/SinOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return sin(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SinOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SinOpNode.shader.meta new file mode 100644 index 00000000..bf7ab483 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SinOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: bcd9f8749ddd3ac4f94f4c2071c1d0d4 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SinTimeNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SinTimeNode.shader new file mode 100644 index 00000000..443f807f --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SinTimeNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/SinTimeNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float _EditorTime; + + float4 frag( v2f_img i ) : SV_Target + { + float4 t = _EditorTime; + t.x = _EditorTime / 8; + t.y = _EditorTime / 4; + t.z = _EditorTime / 2; + return sin(t); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SinTimeNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SinTimeNode.shader.meta new file mode 100644 index 00000000..2cbb3c16 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SinTimeNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: e4ba809e0badeb94994170b2cbbbba10 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SinhOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SinhOpNode.shader new file mode 100644 index 00000000..b1c09847 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SinhOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/SinhOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return sinh(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SinhOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SinhOpNode.shader.meta new file mode 100644 index 00000000..e9890543 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SinhOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 4e9c00e6dceb4024f80d4e3d7786abad +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SmoothstepOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SmoothstepOpNode.shader new file mode 100644 index 00000000..bcfb8763 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SmoothstepOpNode.shader @@ -0,0 +1,32 @@ +Shader "Hidden/SmoothstepOpNode" +{ + Properties + { + _A ("_Alpha", 2D) = "white" {} + _B ("_Min", 2D) = "white" {} + _C ("_Max", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + + float4 frag(v2f_img i) : SV_Target + { + float4 alpha = tex2D( _A, i.uv ); + float4 min = tex2D( _B, i.uv ); + float4 max = tex2D( _C, i.uv ); + return smoothstep(min, max, alpha); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SmoothstepOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SmoothstepOpNode.shader.meta new file mode 100644 index 00000000..817fd470 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SmoothstepOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 954cdd40a7a528344a0a4d3ff1db5176 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SqrtOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SqrtOpNode.shader new file mode 100644 index 00000000..b45f3251 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SqrtOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/SqrtOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return sqrt(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SqrtOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SqrtOpNode.shader.meta new file mode 100644 index 00000000..a5ab372b --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SqrtOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 1791e2fbf36af084da7ecfc289e89b6e +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_StaticSwitchNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_StaticSwitchNode.shader new file mode 100644 index 00000000..4931a07c --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_StaticSwitchNode.shader @@ -0,0 +1,59 @@ +Shader "Hidden/StaticSwitchNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + _C ("_C", 2D) = "white" {} + _D ("_D", 2D) = "white" {} + _E ("_E", 2D) = "white" {} + _F ("_F", 2D) = "white" {} + _G ("_G", 2D) = "white" {} + _H ("_H", 2D) = "white" {} + _I ("_I", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + sampler2D _E; + sampler2D _F; + sampler2D _G; + sampler2D _H; + sampler2D _I; + int _Condition; + + float4 frag( v2f_img i ) : SV_Target + { + if( _Condition == 0) + return tex2D( _B, i.uv ); // A nd B are switched + else if( _Condition == 1 ) + return tex2D( _A, i.uv ); + else if( _Condition == 2 ) + return tex2D( _C, i.uv ); + else if( _Condition == 3 ) + return tex2D( _D, i.uv ); + else if( _Condition == 4 ) + return tex2D( _E, i.uv ); + else if( _Condition == 5 ) + return tex2D( _F, i.uv ); + else if( _Condition == 6 ) + return tex2D( _G, i.uv ); + else if( _Condition == 7 ) + return tex2D( _H, i.uv ); + else + return tex2D( _I, i.uv ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_StaticSwitchNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_StaticSwitchNode.shader.meta new file mode 100644 index 00000000..306b9811 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_StaticSwitchNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 0b708c11c68e6a9478ac97fe3643eab1 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_StepOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_StepOpNode.shader new file mode 100644 index 00000000..86fdf066 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_StepOpNode.shader @@ -0,0 +1,29 @@ +Shader "Hidden/StepOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + return step(a, b); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_StepOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_StepOpNode.shader.meta new file mode 100644 index 00000000..a23d36dc --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_StepOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 2c757add7f97ecd4abd9ce6ec4659697 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SubstanceSamplerNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SubstanceSamplerNode.shader new file mode 100644 index 00000000..86a2adcc --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SubstanceSamplerNode.shader @@ -0,0 +1,53 @@ +Shader "Hidden/SubstanceSamplerNode" +{ + Properties + { + _A ("_UV", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _GenTex; + int _CustomUVs; + + float4 frag( v2f_img i ) : SV_Target + { + float2 uvs = i.uv; + if( _CustomUVs == 1 ) + uvs = tex2D( _A, i.uv ).xy; + float4 genTex = tex2D( _GenTex, uvs); + return genTex; + } + ENDCG + } + + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _GenTex; + int _CustomUVs; + + float4 frag( v2f_img i ) : SV_Target + { + float2 uvs = i.uv; + if( _CustomUVs == 1 ) + uvs = tex2D( _A, i.uv ).xy; + float3 genTex = UnpackNormal( tex2D( _GenTex, uvs ) ); + return float4( genTex, 0 ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SubstanceSamplerNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SubstanceSamplerNode.shader.meta new file mode 100644 index 00000000..322d7848 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SubstanceSamplerNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 6f322c1da33f1e744941aafcb0ad1a2d +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SummedBlendNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SummedBlendNode.shader new file mode 100644 index 00000000..4f3b670d --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SummedBlendNode.shader @@ -0,0 +1,85 @@ +Shader "Hidden/SummedBlendNode" +{ + Properties + { + _A ( "_Weights", 2D) = "white" {} + _B ( "_Layer1", 2D) = "white" {} + _C ( "_Layer2", 2D ) = "white" {} + _D ( "_Layer3", 2D ) = "white" {} + _E ( "_Layer4", 2D ) = "white" {} + } + + SubShader + { + + CGINCLUDE + + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + sampler2D _A; + sampler2D _B; + + ENDCG + + Pass + { + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 Weights = tex2D ( _A, i.uv ); + float4 Layer1 = tex2D( _B, i.uv ); + return Weights*Layer1; + } + ENDCG + } + + Pass + { + CGPROGRAM + sampler2D _C; + float4 frag ( v2f_img i ) : SV_Target + { + float4 Weights = tex2D ( _A, i.uv ); + float4 Layer1 = tex2D ( _B, i.uv ); + float4 Layer2 = tex2D ( _C, i.uv ); + return ( Weights.x*Layer1 + Weights.y*Layer2 ); + } + ENDCG + } + + Pass + { + CGPROGRAM + sampler2D _C; + sampler2D _D; + float4 frag ( v2f_img i ) : SV_Target + { + float4 Weights = tex2D( _A, i.uv ); + float4 Layer1 = tex2D( _B, i.uv ); + float4 Layer2 = tex2D( _C, i.uv ); + float4 Layer3 = tex2D( _D, i.uv ); + return ( Weights.x*Layer1 + Weights.y*Layer2 + Weights.z*Layer3 ); + } + ENDCG + } + + Pass + { + CGPROGRAM + sampler2D _C; + sampler2D _D; + sampler2D _E; + float4 frag ( v2f_img i ) : SV_Target + { + float4 Weights = tex2D ( _A, i.uv ); + float4 Layer1 = tex2D ( _B, i.uv ); + float4 Layer2 = tex2D ( _C, i.uv ); + float4 Layer3 = tex2D ( _D, i.uv ); + float4 Layer4 = tex2D ( _E, i.uv ); + return ( Weights.x*Layer1 + Weights.y*Layer2 + Weights.z*Layer3 + Weights.w*Layer4 ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SummedBlendNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SummedBlendNode.shader.meta new file mode 100644 index 00000000..700d2e68 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SummedBlendNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: eda18b96e13f78b49bbdaa4da3fead19 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SwitchByFaceNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SwitchByFaceNode.shader new file mode 100644 index 00000000..0f8176c3 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SwitchByFaceNode.shader @@ -0,0 +1,29 @@ +Shader "Hidden/SwitchByFaceNode" +{ + Properties + { + _A ("_Front", 2D) = "white" {} + _B ("_Back", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + + float4 frag( v2f_img i, half ase_vface : VFACE ) : SV_Target + { + float4 front = tex2D( _A, i.uv ); + float4 back = tex2D( _B, i.uv ); + return ( ( ase_vface > 0 ) ? ( front ) : ( back ) ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SwitchByFaceNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SwitchByFaceNode.shader.meta new file mode 100644 index 00000000..1dbf813d --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SwitchByFaceNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: f4edf6febb54dc743b25bd5b56facea8 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SwitchNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SwitchNode.shader new file mode 100644 index 00000000..d7978725 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SwitchNode.shader @@ -0,0 +1,59 @@ +Shader "Hidden/SwitchNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + _C ("_C", 2D) = "white" {} + _D ("_D", 2D) = "white" {} + _E ("_E", 2D) = "white" {} + _F ("_F", 2D) = "white" {} + _G ("_G", 2D) = "white" {} + _H ("_H", 2D) = "white" {} + _I ("_I", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + sampler2D _E; + sampler2D _F; + sampler2D _G; + sampler2D _H; + sampler2D _I; + float _Current; + + float4 frag( v2f_img i ) : SV_Target + { + if( _Current == 0 ) + return tex2D( _A, i.uv ); + else if( _Current == 1 ) + return tex2D( _B, i.uv ); + else if( _Current == 2 ) + return tex2D( _C, i.uv ); + else if( _Current == 3 ) + return tex2D( _D, i.uv ); + else if( _Current == 4 ) + return tex2D( _E, i.uv ); + else if( _Current == 5 ) + return tex2D( _F, i.uv ); + else if( _Current == 6 ) + return tex2D( _G, i.uv ); + else if( _Current == 7 ) + return tex2D( _H, i.uv ); + else + return tex2D( _I, i.uv ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SwitchNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SwitchNode.shader.meta new file mode 100644 index 00000000..8319d2a0 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SwitchNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: a58e46feaa5e3d14383bfeac24d008bc +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SwizzleNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SwizzleNode.shader new file mode 100644 index 00000000..9433c797 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SwizzleNode.shader @@ -0,0 +1,3103 @@ +Shader "Hidden/SwizzleNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _Mask("_Mask", Vector) = (0,0,0,0) + } + SubShader + { + CGINCLUDE + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + + float4 _Mask; + ENDCG + /////////////////////////////////////////////////////////////////////////////// + Pass + { + Name "xxxx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.x,a.x,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "xxxy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.x,a.x,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "xxxz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.x,a.x,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "xxxw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.x,a.x,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "xxyx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.x,a.y,a.x)*_Mask; + } + ENDCG + } + + + Pass + { + Name "xxyy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.x,a.y,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "xxyz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.x,a.y,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "xxyw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.x,a.y,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "xxzx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.x,a.z,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "xxzy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.x,a.z,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "xxzz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.x,a.z,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "xxzw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.x,a.z,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "xxwx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.x,a.w,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "xxwy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.x,a.w,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "xxwz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.x,a.w,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "xxww" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.x,a.w,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "xyxx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.y,a.x,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "xyxy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.y,a.x,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "xyxz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.y,a.x,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "xyxw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.y,a.x,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "xyyx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.y,a.y,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "xyyy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.y,a.y,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "xyyz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.y,a.y,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "xyyw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.y,a.y,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "xyzx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.y,a.z,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "xyzy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.y,a.z,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "xyzz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.y,a.z,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "xyzw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.y,a.z,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "xywx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.y,a.w,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "xywy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.y,a.w,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "xywz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.y,a.w,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "xyww" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.y,a.w,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "xzxx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.z,a.x,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "xzxy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.z,a.x,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "xzxz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.z,a.x,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "xzxw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.z,a.x,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "xzyx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.z,a.y,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "xzyy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.z,a.y,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "xzyz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.z,a.y,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "xzyw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.z,a.y,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "xzzx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.z,a.z,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "xzzy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.z,a.z,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "xzzz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.z,a.z,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "xzzw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.z,a.z,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "xzwx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.z,a.w,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "xzwy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.z,a.w,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "xzwz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.z,a.w,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "xzww" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.z,a.w,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "xwxx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.w,a.x,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "xwxy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.w,a.x,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "xwxz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.w,a.x,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "xwxw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.w,a.x,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "xwyx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.w,a.y,a.x)*_Mask; + } + ENDCG + } + + + Pass + { + Name "xwyy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.w,a.y,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "xwyz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.w,a.y,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "xwyw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.w,a.y,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "xwzx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.w,a.z,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "xwzy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.w,a.z,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "xwzz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.w,a.z,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "xwzw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.w,a.z,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "xwwx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.w,a.w,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "xwwy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.w,a.w,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "xwwz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.w,a.w,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "xwww" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.x,a.w,a.w,a.w)*_Mask; + } + ENDCG + } + /////////////////////////////////////////////////////////////////////////////// + Pass + { + Name "yxxx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.x,a.x,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "yxxy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.x,a.x,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "yxxz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.x,a.x,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "yxxw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.x,a.x,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "yxyx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.x,a.y,a.x)*_Mask; + } + ENDCG + } + + + Pass + { + Name "yxyy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.x,a.y,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "yxyz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.x,a.y,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "yxyw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.x,a.y,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "yxzx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.x,a.z,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "yxzy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.x,a.z,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "yxzz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.x,a.z,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "yxzw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.x,a.z,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "yxwx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.x,a.w,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "yxwy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.x,a.w,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "yxwz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.x,a.w,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "yxww" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.x,a.w,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "yyxx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.y,a.x,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "yyxy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.y,a.x,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "yyxz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.y,a.x,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "yyxw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.y,a.x,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "yyyx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.y,a.y,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "yyyy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.y,a.y,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "yyyz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.y,a.y,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "yyyw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.y,a.y,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "yyzx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.y,a.z,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "yyzy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.y,a.z,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "yyzz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.y,a.z,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "yyzw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.y,a.z,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "yywx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.y,a.w,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "yywy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.y,a.w,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "yywz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.y,a.w,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "yyww" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.y,a.w,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "yzxx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.z,a.x,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "yzxy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.z,a.x,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "yzxz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.z,a.x,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "yzxw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.z,a.x,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "yzyx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.z,a.y,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "yzyy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.z,a.y,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "yzyz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.z,a.y,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "yzyw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.z,a.y,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "yzzx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.z,a.z,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "yzzy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.z,a.z,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "yzzz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.z,a.z,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "yzzw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.z,a.z,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "yzwx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.z,a.w,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "yzwy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.z,a.w,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "yzwz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.z,a.w,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "yzww" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.z,a.w,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "ywxx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.w,a.x,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "ywxy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.w,a.x,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "ywxz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.w,a.x,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "ywxw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.w,a.x,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "ywyx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.w,a.y,a.x)*_Mask; + } + ENDCG + } + + + Pass + { + Name "ywyy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.w,a.y,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "ywyz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.w,a.y,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "ywyw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.w,a.y,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "ywzx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.w,a.z,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "ywzy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.w,a.z,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "ywzz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.w,a.z,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "ywzw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.w,a.z,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "ywwx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.w,a.w,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "ywwy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.w,a.w,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "ywwz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.w,a.w,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "ywww" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.y,a.w,a.w,a.w)*_Mask; + } + ENDCG + } + /////////////////////////////////////////////////////////////////////////////// + Pass + { + Name "zxxx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.x,a.x,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "zxxy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.x,a.x,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "zxxz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.x,a.x,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "zxxw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.x,a.x,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "zxyx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.x,a.y,a.x)*_Mask; + } + ENDCG + } + + + Pass + { + Name "zxyy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.x,a.y,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "zxyz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.x,a.y,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "zxyw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.x,a.y,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "zxzx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.x,a.z,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "zxzy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.x,a.z,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "zxzz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.x,a.z,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "zxzw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.x,a.z,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "zxwx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.x,a.w,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "zxwy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.x,a.w,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "zxwz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.x,a.w,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "zxww" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.x,a.w,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "zyxx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.y,a.x,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "zyxy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.y,a.x,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "zyxz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.y,a.x,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "zyxw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.y,a.x,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "zyyx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.y,a.y,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "zyyy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.y,a.y,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "zyyz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.y,a.y,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "zyyw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.y,a.y,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "zyzx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.y,a.z,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "zyzy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.y,a.z,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "zyzz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.y,a.z,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "zyzw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.y,a.z,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "zywx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.y,a.w,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "zywy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.y,a.w,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "zywz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.y,a.w,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "zyww" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.y,a.w,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "zzxx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.z,a.x,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "zzxy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.z,a.x,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "zzxz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.z,a.x,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "zzxw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.z,a.x,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "zzyx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.z,a.y,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "zzyy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.z,a.y,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "zzyz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.z,a.y,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "zzyw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.z,a.y,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "zzzx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.z,a.z,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "zzzy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.z,a.z,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "zzzz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.z,a.z,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "zzzw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.z,a.z,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "zzwx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.z,a.w,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "zzwy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.z,a.w,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "zzwz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.z,a.w,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "zzww" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.z,a.w,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "zwxx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.w,a.x,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "zwxy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.w,a.x,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "zwxz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.w,a.x,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "zwxw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.w,a.x,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "zwyx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.w,a.y,a.x)*_Mask; + } + ENDCG + } + + + Pass + { + Name "zwyy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.w,a.y,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "zwyz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.w,a.y,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "zwyw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.w,a.y,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "zwzx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.w,a.z,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "zwzy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.w,a.z,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "zwzz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.w,a.z,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "zwzw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.w,a.z,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "zwwx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.w,a.w,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "zwwy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.w,a.w,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "zwwz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.w,a.w,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "zwww" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.z,a.w,a.w,a.w)*_Mask; + } + ENDCG + } + /////////////////////////////////////////////////////////////////////////////// + Pass + { + Name "wxxx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.x,a.x,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "wxxy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.x,a.x,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "wxxz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.x,a.x,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "wxxw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.x,a.x,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "wxyx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.x,a.y,a.x)*_Mask; + } + ENDCG + } + + + Pass + { + Name "wxyy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.x,a.y,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "wxyz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.x,a.y,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "wxyw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.x,a.y,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "wxzx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.x,a.z,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "wxzy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.x,a.z,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "wxzz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.x,a.z,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "wxzw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.x,a.z,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "wxwx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.x,a.w,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "wxwy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.x,a.w,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "wxwz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.x,a.w,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "wxww" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.x,a.w,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "wyxx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.y,a.x,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "wyxy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.y,a.x,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "wyxz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.y,a.x,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "wyxw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.y,a.x,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "wyyx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.y,a.y,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "wyyy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.y,a.y,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "wyyz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.y,a.y,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "wyyw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.y,a.y,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "wyzx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.y,a.z,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "wyzy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.y,a.z,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "wyzz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.y,a.z,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "wyzw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.y,a.z,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "wywx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.y,a.w,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "wywy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.y,a.w,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "wywz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.y,a.w,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "wyww" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.y,a.w,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "wzxx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.z,a.x,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "wzxy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.z,a.x,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "wzxz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.z,a.x,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "wzxw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.z,a.x,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "wzyx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.z,a.y,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "wzyy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.z,a.y,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "wzyz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.z,a.y,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "wzyw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.z,a.y,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "wzzx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.z,a.z,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "wzzy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.z,a.z,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "wzzz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.z,a.z,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "wzzw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.z,a.z,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "wzwx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.z,a.w,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "wzwy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.z,a.w,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "wzwz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.z,a.w,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "wzww" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.z,a.w,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "wwxx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.w,a.x,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "wwxy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.w,a.x,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "wwxz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.w,a.x,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "wwxw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.w,a.x,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "wwyx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.w,a.y,a.x)*_Mask; + } + ENDCG + } + + + Pass + { + Name "wwyy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.w,a.y,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "wwyz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.w,a.y,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "wwyw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.w,a.y,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "wwzx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.w,a.z,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "wwzy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.w,a.z,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "wwzz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.w,a.z,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "wwzw" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.w,a.z,a.w)*_Mask; + } + ENDCG + } + + Pass + { + Name "wwwx" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.w,a.w,a.x)*_Mask; + } + ENDCG + } + + Pass + { + Name "wwwy" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.w,a.w,a.y)*_Mask; + } + ENDCG + } + + Pass + { + Name "wwwz" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.w,a.w,a.z)*_Mask; + } + ENDCG + } + + Pass + { + Name "wwww" + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 a = tex2D(_A, i.uv); + return float4(a.w,a.w,a.w,a.w)*_Mask; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SwizzleNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SwizzleNode.shader.meta new file mode 100644 index 00000000..0fdc1114 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_SwizzleNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: d20531704ce28b14bafb296f291f6608 +timeCreated: 1510580676 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareEqual.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareEqual.shader new file mode 100644 index 00000000..83bf4a8f --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareEqual.shader @@ -0,0 +1,35 @@ +Shader "Hidden/TFHCCompareEqual" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + _C ("_True", 2D) = "white" {} + _D ( "_False", 2D ) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + + float4 frag(v2f_img i) : SV_Target + { + float A = tex2D( _A, i.uv ).x; + float B = tex2D( _B, i.uv ).x; + float4 True = tex2D( _C, i.uv ); + float4 False = tex2D ( _D, i.uv ); + return ( ( A == B ) ? True : False ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareEqual.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareEqual.shader.meta new file mode 100644 index 00000000..730c9a8a --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareEqual.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 6904de6cf8c08e7439672390b425ab50 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareGreater.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareGreater.shader new file mode 100644 index 00000000..3c5d9349 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareGreater.shader @@ -0,0 +1,35 @@ +Shader "Hidden/TFHCCompareGreater" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + _C ("_True", 2D) = "white" {} + _D ( "_False", 2D ) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + + float4 frag(v2f_img i) : SV_Target + { + float A = tex2D( _A, i.uv ).x; + float B = tex2D( _B, i.uv ).x; + float4 True = tex2D( _C, i.uv ); + float4 False = tex2D ( _D, i.uv ); + return ( ( A > B ) ? True : False ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareGreater.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareGreater.shader.meta new file mode 100644 index 00000000..bd60bd3a --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareGreater.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 363192dbd019ad2478f2fe6c277b7e48 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareGreaterEqual.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareGreaterEqual.shader new file mode 100644 index 00000000..9da87b1f --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareGreaterEqual.shader @@ -0,0 +1,35 @@ +Shader "Hidden/TFHCCompareGreaterEqual" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + _C ("_True", 2D) = "white" {} + _D ( "_False", 2D ) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + + float4 frag(v2f_img i) : SV_Target + { + float A = tex2D( _A, i.uv ).x; + float B = tex2D( _B, i.uv ).x; + float4 True = tex2D( _C, i.uv ); + float4 False = tex2D ( _D, i.uv ); + return ( ( A >= B ) ? True : False ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareGreaterEqual.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareGreaterEqual.shader.meta new file mode 100644 index 00000000..0b28956f --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareGreaterEqual.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: f4ff76282a117c2429a1bcd8ba3a9112 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareLessNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareLessNode.shader new file mode 100644 index 00000000..e5eb1987 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareLessNode.shader @@ -0,0 +1,35 @@ +Shader "Hidden/TFHCCompareLess" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + _C ("_True", 2D) = "white" {} + _D ( "_False", 2D ) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + + float4 frag(v2f_img i) : SV_Target + { + float A = tex2D( _A, i.uv ).x; + float B = tex2D( _B, i.uv ).x; + float4 True = tex2D( _C, i.uv ); + float4 False = tex2D ( _D, i.uv ); + return ( ( A < B ) ? True : False ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareLessNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareLessNode.shader.meta new file mode 100644 index 00000000..6cca1105 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareLessNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 8024509244392ed44b37c28473e66a8a +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareLowerEqual.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareLowerEqual.shader new file mode 100644 index 00000000..be9b7f0e --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareLowerEqual.shader @@ -0,0 +1,35 @@ +Shader "Hidden/TFHCCompareLessEqual" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + _C ("_True", 2D) = "white" {} + _D ( "_False", 2D ) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + + float4 frag(v2f_img i) : SV_Target + { + float A = tex2D( _A, i.uv ).x; + float B = tex2D( _B, i.uv ).x; + float4 True = tex2D( _C, i.uv ); + float4 False = tex2D ( _D, i.uv ); + return ( ( A <= B ) ? True : False ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareLowerEqual.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareLowerEqual.shader.meta new file mode 100644 index 00000000..471968d7 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareLowerEqual.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 9a3e17508793b9d42b1efaaf5bcd2554 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareNotEqual.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareNotEqual.shader new file mode 100644 index 00000000..b40f85e5 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareNotEqual.shader @@ -0,0 +1,35 @@ +Shader "Hidden/TFHCCompareNotEqual" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + _C ("_True", 2D) = "white" {} + _D ( "_False", 2D ) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + + float4 frag(v2f_img i) : SV_Target + { + float A = tex2D( _A, i.uv ).x; + float B = tex2D( _B, i.uv ).x; + float4 True = tex2D( _C, i.uv ); + float4 False = tex2D ( _D, i.uv ); + return ( ( A != B ) ? True : False ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareNotEqual.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareNotEqual.shader.meta new file mode 100644 index 00000000..44e64f91 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareNotEqual.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 75f433376eef1ad4a881d99124e08008 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareWithRange.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareWithRange.shader new file mode 100644 index 00000000..516727f2 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareWithRange.shader @@ -0,0 +1,38 @@ +Shader "Hidden/TFHCCompareWithRange" +{ + Properties + { + _A ("_Value", 2D) = "white" {} + _B ("_RangeMin", 2D) = "white" {} + _C ("_RangeMax", 2D) = "white" {} + _D ( "_True", 2D ) = "white" {} + _E ( "_False", 2D ) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + sampler2D _E; + + float4 frag(v2f_img i) : SV_Target + { + float4 Value = tex2D( _A, i.uv ).x; + float4 RangeMin = tex2D( _B, i.uv ).x; + float4 RangeMax = tex2D( _C, i.uv ); + float4 True = tex2D ( _D, i.uv ); + float4 False = tex2D ( _E, i.uv ); + return ( ( Value >= RangeMin && Value <= RangeMax ) ? True : False ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareWithRange.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareWithRange.shader.meta new file mode 100644 index 00000000..65b4bf68 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCCompareWithRange.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 127d114eed178d7409f900134a6c00d1 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCFlipBookUVAnimation.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCFlipBookUVAnimation.shader new file mode 100644 index 00000000..a3778980 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCFlipBookUVAnimation.shader @@ -0,0 +1,89 @@ +Shader "Hidden/TFHCFlipBookUVAnimation" +{ + Properties + { + _A ("_UV", 2D) = "white" {} + _B ("_Columns", 2D) = "white" {} + _C ("_Rows", 2D) = "white" {} + _D ("_Speed", 2D) = "white" {} + _E ("_StartFrame", 2D) = "white" {} + _F ("_Speed", 2D) = "white" {} + } + SubShader + { + CGINCLUDE + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + sampler2D _E; + sampler2D _F; + float _EditorTime; + ENDCG + + //Time port disconnected + Pass + { + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float2 uv = tex2D( _A, i.uv ).rg; + float col = tex2D( _B, i.uv ).r; + float row = tex2D( _C, i.uv ).r; + float spd = tex2D( _D, i.uv ).r; + float str = tex2D( _E, i.uv ).r; + + float fbtotaltiles = col * row; + float fbcolsoffset = 1.0f / col; + float fbrowsoffset = 1.0f / row; + float fbspeed = _EditorTime * spd; + float2 fbtiling = float2(fbcolsoffset, fbrowsoffset); + float fbcurrenttileindex = round( fmod( fbspeed + str, fbtotaltiles) ); + fbcurrenttileindex += ( fbcurrenttileindex < 0) ? fbtotaltiles : 0; + float fblinearindextox = round ( fmod ( fbcurrenttileindex, col ) ); + float fboffsetx = fblinearindextox * fbcolsoffset; + float fblinearindextoy = round( fmod( ( fbcurrenttileindex - fblinearindextox ) / col, row ) ); + fblinearindextoy = (int)(row-1) - fblinearindextoy; + float fboffsety = fblinearindextoy * fbrowsoffset; + float2 fboffset = float2(fboffsetx, fboffsety); + float2 fbuv = float4( uv, 0.0 , 0.0 ) * fbtiling + fboffset; + return float4(fbuv, 0 , 0); + } + ENDCG + } + + //Time port connected + Pass + { + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float2 uv = tex2D( _A, i.uv ).rg; + float col = tex2D( _B, i.uv ).r; + float row = tex2D( _C, i.uv ).r; + float spd = tex2D( _D, i.uv ).r; + float str = tex2D( _E, i.uv ).r; + float time = tex2D( _F, i.uv ).r; + float fbtotaltiles = col * row; + float fbcolsoffset = 1.0f / col; + float fbrowsoffset = 1.0f / row; + float fbspeed = time * spd; + float2 fbtiling = float2(fbcolsoffset, fbrowsoffset); + float fbcurrenttileindex = round( fmod( fbspeed + str, fbtotaltiles) ); + fbcurrenttileindex += ( fbcurrenttileindex < 0) ? fbtotaltiles : 0; + float fblinearindextox = round ( fmod ( fbcurrenttileindex, col ) ); + float fboffsetx = fblinearindextox * fbcolsoffset; + float fblinearindextoy = round( fmod( ( fbcurrenttileindex - fblinearindextox ) / col, row ) ); + fblinearindextoy = (int)(row-1) - fblinearindextoy; + float fboffsety = fblinearindextoy * fbrowsoffset; + float2 fboffset = float2(fboffsetx, fboffsety); + float2 fbuv = float4( uv, 0.0 , 0.0 ) * fbtiling + fboffset; + return float4(fbuv, 0 , 0); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCFlipBookUVAnimation.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCFlipBookUVAnimation.shader.meta new file mode 100644 index 00000000..9f796804 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCFlipBookUVAnimation.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 04fe24be792bfd5428b92132d7cf0f7d +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCIf.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCIf.shader new file mode 100644 index 00000000..fb605cb2 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCIf.shader @@ -0,0 +1,41 @@ +Shader "Hidden/TFHCIf" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + _C ("_AGreaterB", 2D) = "white" {} + _D ( "_AEqualsB", 2D ) = "white" {} + _E ( "_ALessB", 2D ) = "white" {} + _F ( "_EqualThreshold", 2D ) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + sampler2D _E; + sampler2D _F; + + float4 frag(v2f_img i) : SV_Target + { + float4 A = tex2D( _A, i.uv ).x; + float4 B = tex2D( _B, i.uv ).x; + float4 AGreaterB = tex2D( _C, i.uv ); + float4 AEqualsB = tex2D ( _D, i.uv ); + float4 ALessB = tex2D ( _E, i.uv ); + float4 EqualThreshold = tex2D ( _F, i.uv ); + return ( A - EqualThreshold > B ? AGreaterB : A - EqualThreshold <= B && A + EqualThreshold >= B ? AEqualsB : ALessB ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCIf.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCIf.shader.meta new file mode 100644 index 00000000..5d187167 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCIf.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 5c7bc7e3cab81da499e4864ace0d86c5 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCPixelateUV.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCPixelateUV.shader new file mode 100644 index 00000000..f9d3d8a6 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCPixelateUV.shader @@ -0,0 +1,35 @@ +Shader "Hidden/TFHCPixelateUV" +{ + Properties + { + _A ("_UV", 2D) = "white" {} + _B ("_PixelX", 2D) = "white" {} + _C ("_PixelY", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + + float4 frag(v2f_img i) : SV_Target + { + float2 uv = tex2D( _A, i.uv ).rg; + float pix = tex2D( _B, i.uv ).r; + float piy = tex2D( _C, i.uv ).r; + + float2 steppedPixel = float2( pix, piy ); + float2 pixelatedUV = floor( uv * steppedPixel ) / steppedPixel; + return float4(pixelatedUV, 0 , 0); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCPixelateUV.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCPixelateUV.shader.meta new file mode 100644 index 00000000..bfaaa63c --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCPixelateUV.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: e2f7e3c513ed18340868b8cbd0d85cfb +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCRemap.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCRemap.shader new file mode 100644 index 00000000..bf10c8a1 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCRemap.shader @@ -0,0 +1,49 @@ +Shader "Hidden/TFHCRemap" +{ + Properties + { + _A ("_Value", 2D) = "white" {} + _B ("_MinOld", 2D) = "white" {} + _C ("_MaxOld", 2D) = "white" {} + _D ("_MinNew", 2D) = "white" {} + _E ("_MaxNew", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + sampler2D _E; + + float4 frag(v2f_img i) : SV_Target + { + float4 value = tex2D( _A, i.uv ); + float4 minold = tex2D( _B, i.uv ); + float4 maxold = tex2D( _C, i.uv ); + float4 minnew = tex2D( _D, i.uv ); + float4 maxnew = tex2D( _E, i.uv ); + + float4 denom = maxold - minold; + if(denom.x == 0) + denom.x = 0.000001; + if(denom.y == 0) + denom.y = 0.000001; + if(denom.z == 0) + denom.z = 0.000001; + if(denom.w == 0) + denom.w = 0.000001; + + return (minnew + (value - minold) * (maxnew - minnew) / denom); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCRemap.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCRemap.shader.meta new file mode 100644 index 00000000..8ebceb4a --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TFHCRemap.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 72dd1cbea889fa047b929d5191e360c0 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TanOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TanOpNode.shader new file mode 100644 index 00000000..475be371 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TanOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/TanOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return tan(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TanOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TanOpNode.shader.meta new file mode 100644 index 00000000..f7a22d2c --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TanOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 312e291832cac5749a3626547dfc8607 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TangentSignVertexDataNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TangentSignVertexDataNode.shader new file mode 100644 index 00000000..c84d7f2f --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TangentSignVertexDataNode.shader @@ -0,0 +1,31 @@ +Shader "Hidden/TangentVertexDataNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag( v2f_img i ) : SV_Target + { + //float2 tp = 2 * i.uv - 1; + //float tr = sqrt( dot(tp,tp) ); + //tr = saturate( tr ); + + //float2 tuvs; + //float f = ( 1 - sqrt( 1 - tr ) ) / tr; + + //float3 tangent = normalize(float3( (1-f)*2, tp.y*0.01, tp.x )); + + //float4((tangent), 1); + + //TODO: needs revision at some point + return -1; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TangentSignVertexDataNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TangentSignVertexDataNode.shader.meta new file mode 100644 index 00000000..15b2740c --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TangentSignVertexDataNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: f5466d126f4bb1f49917eac88b1cb6af +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TangentVertexDataNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TangentVertexDataNode.shader new file mode 100644 index 00000000..e465eaf2 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TangentVertexDataNode.shader @@ -0,0 +1,22 @@ +Shader "Hidden/TangentVertexDataNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag( v2f_img i ) : SV_Target + { + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 tangent = normalize(float3( -z, xy.y*0.01, xy.x )); + return float4((tangent), 1); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TangentVertexDataNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TangentVertexDataNode.shader.meta new file mode 100644 index 00000000..f3c7c387 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TangentVertexDataNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 0a44bb521d06d6143a4acbc3602037f8 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TanhOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TanhOpNode.shader new file mode 100644 index 00000000..f4c54f82 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TanhOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/TanhOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return tanh(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TanhOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TanhOpNode.shader.meta new file mode 100644 index 00000000..b3565b6b --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TanhOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 52f78d3a1c66d1c489cd63b0a9300b38 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TauNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TauNode.shader new file mode 100644 index 00000000..4bd66c51 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TauNode.shader @@ -0,0 +1,19 @@ +Shader "Hidden/TauNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + float4 frag(v2f_img i) : SV_Target + { + return UNITY_PI * 2; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TauNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TauNode.shader.meta new file mode 100644 index 00000000..e46f21a7 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TauNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 701bc295c0d75d8429eabcf45e8e008d +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TemplateShaderProperty.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TemplateShaderProperty.shader new file mode 100644 index 00000000..9285b9b8 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TemplateShaderProperty.shader @@ -0,0 +1,47 @@ +Shader "Hidden/TemplateShaderProperty" +{ + Properties + { + [HideFromInspector]_IntData ( "_IntData", Int ) = 0 + [HideFromInspector]_FloatData ( "_FloatData", Float ) = 0 + [HideFromInspector]_VectorData ( "_VectorData", Vector ) = ( 0,0,0,0 ) + [HideFromInspector]_Sampler2DData ( "_Sampler2DData", 2D ) = "white" {} + [HideFromInspector]_Sampler3DData ( "_Sampler3DData", 3D ) = "white" {} + [HideFromInspector]_SamplerCubeData ( "_SamplerCubeData", Cube ) = "white" {} + } + + CGINCLUDE + #include "UnityCG.cginc" + uniform int _IntData; + uniform float _FloatData; + uniform float4 _VectorData; + uniform sampler2D _Sampler2DData; + uniform sampler3D _Sampler3DData; + uniform samplerCUBE _SamplerCubeData; + + #pragma vertex vert_img + #pragma fragment frag + + float4 CalculatePreviewColor ( v2f_img i, const int dataType ) + { + /*Int*/ if ( dataType == 0 ) return float4( _IntData.xxx,1); + /*Float*/ if ( dataType == 1 ) return float4( _FloatData.xxx, 1 ); + /*Vector4/Color*/ if ( dataType == 2 ) return _VectorData; + /*Sampler 2D*/ if ( dataType == 3 ) return tex2D ( _Sampler2DData, i.uv ); + /*Sampler 3D*/ if ( dataType == 4 ) return tex3D ( _Sampler3DData, float3( i.uv, 0.0 ) ); + /*Sampler Cube*/ if ( dataType == 5 ) return texCUBE ( _SamplerCubeData, float3( i.uv, 0.0 ) ); + return (0).xxxx; + } + + ENDCG + + SubShader + { + Pass{ CGPROGRAM float4 frag ( v2f_img i ) : SV_Target { return CalculatePreviewColor(i,0); } ENDCG } + Pass{ CGPROGRAM float4 frag ( v2f_img i ) : SV_Target { return CalculatePreviewColor(i,1); } ENDCG } + Pass{ CGPROGRAM float4 frag ( v2f_img i ) : SV_Target { return CalculatePreviewColor(i,2); } ENDCG } + Pass{ CGPROGRAM float4 frag ( v2f_img i ) : SV_Target { return CalculatePreviewColor(i,3); } ENDCG } + Pass{ CGPROGRAM float4 frag ( v2f_img i ) : SV_Target { return CalculatePreviewColor(i,4); } ENDCG } + Pass{ CGPROGRAM float4 frag ( v2f_img i ) : SV_Target { return CalculatePreviewColor(i,5); } ENDCG } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TemplateShaderProperty.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TemplateShaderProperty.shader.meta new file mode 100644 index 00000000..4a4090d5 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TemplateShaderProperty.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 4feb2016be0ece148b8bf234508f6aa4 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TexCoordVertexDataNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TexCoordVertexDataNode.shader new file mode 100644 index 00000000..e03aca73 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TexCoordVertexDataNode.shader @@ -0,0 +1,19 @@ +Shader "Hidden/TexCoordVertexDataNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + float4 frag( v2f_img i ) : SV_Target + { + return float4( i.uv, 0, 0 ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TexCoordVertexDataNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TexCoordVertexDataNode.shader.meta new file mode 100644 index 00000000..01ddea9f --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TexCoordVertexDataNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 6c1bee77276896041bbb73b1b9e7f8ac +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TexelSize.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TexelSize.shader new file mode 100644 index 00000000..b3e43ff4 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TexelSize.shader @@ -0,0 +1,80 @@ +Shader "Hidden/TexelSize" +{ + Properties + { + _Sampler ("_Sampler", 2D) = "white" {} + _Sampler3D ("_Sampler3D", 3D) = "white" {} + _Array ("_Array", 2DArray) = "white" {} + _Cube ("_Cube", CUBE) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _Sampler; + float4 _Sampler_TexelSize; + + float4 frag( v2f_img i ) : SV_Target + { + return _Sampler_TexelSize; + } + ENDCG + } + + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler3D _Sampler3D; + float4 _Sampler3D_TexelSize; + + float4 frag (v2f_img i) : SV_Target + { + return _Sampler3D_TexelSize; + } + ENDCG + } + + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + UNITY_DECLARE_TEX2DARRAY (_Array); + float4 _Array_TexelSize; + + float4 frag (v2f_img i) : SV_Target + { + return _Array_TexelSize; + } + ENDCG + } + + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + samplerCUBE _Cube; + float4 _Cube_TexelSize; + + float4 frag (v2f_img i) : SV_Target + { + return _Cube_TexelSize; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TexelSize.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TexelSize.shader.meta new file mode 100644 index 00000000..b4773e81 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TexelSize.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 6b20226576a059443b58aa2d0b942276 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Texture2D.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Texture2D.shader new file mode 100644 index 00000000..b1f48be2 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Texture2D.shader @@ -0,0 +1,19 @@ +Shader "Hidden/Texture2D" +{ + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + float4 frag( v2f_img i ) : SV_Target + { + return 0; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Texture2D.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Texture2D.shader.meta new file mode 100644 index 00000000..92979229 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Texture2D.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 13bd295c44d04e1419f20f792d331e33 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureArrayNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureArrayNode.shader new file mode 100644 index 00000000..9b9c8bec --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureArrayNode.shader @@ -0,0 +1,63 @@ +Shader "Hidden/TextureArrayNode" +{ + Properties + { + _A ("_UVs", 2D) = "white" {} + _B ("_Index", 2D) = "white" {} + _C ("_Lod", 2D) = "white" {} + _D ("_NormalScale", 2D) = "white" {} + _G ("_Tex", 2D) = "white" {} + _TexConnected ("_TexConnected", Int) = 0 + } + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #pragma target 3.5 + #include "UnityCG.cginc" + #include "UnityStandardUtils.cginc" + + uniform UNITY_DECLARE_TEX2DARRAY( _Sampler ); + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + sampler2D _G; + float _CustomUVs; + float _LodType; + float _Unpack; + int _TexConnected; + + float4 frag( v2f_img i ) : SV_Target + { + float2 uvs = i.uv; + if ( _CustomUVs == 1 ) + uvs = tex2D( _A, i.uv ).xy; + + float n = tex2D( _D, i.uv ).r; + float4 c = 0; + if ( _LodType == 1 ) { + float lod = tex2D( _C, i.uv ).r; + c = UNITY_SAMPLE_TEX2DARRAY_LOD( _Sampler, float3( uvs, tex2D( _B, i.uv ).r ), lod ); + } + else if( _TexConnected == 0) { + c = UNITY_SAMPLE_TEX2DARRAY( _Sampler, float3( uvs, tex2D( _B, i.uv ).r ) ); + } + else { + c = tex2D( _G, uvs ); + } + + if ( _Unpack == 1 ) + { + c.rgb = UnpackScaleNormal(c, n); + } + + return c; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureArrayNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureArrayNode.shader.meta new file mode 100644 index 00000000..936540b3 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureArrayNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 2e6d093df2d289f47b827b36efb31a81 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureCoordinatesNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureCoordinatesNode.shader new file mode 100644 index 00000000..aaa78e0b --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureCoordinatesNode.shader @@ -0,0 +1,29 @@ +Shader "Hidden/TextureCoordinatesNode" +{ + Properties + { + _A ("_Tilling", 2D) = "white" {} + _B ("_Offset", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + + float4 frag( v2f_img i ) : SV_Target + { + float4 t = tex2D( _A, i.uv ); + float4 o = tex2D( _B, i.uv ); + return float4( i.uv * t.xy + o.xy, 0, 0 ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureCoordinatesNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureCoordinatesNode.shader.meta new file mode 100644 index 00000000..656fedd4 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureCoordinatesNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 085e462b2de441a42949be0e666cf5d2 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TexturePropertyNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TexturePropertyNode.shader new file mode 100644 index 00000000..28079d64 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TexturePropertyNode.shader @@ -0,0 +1,84 @@ +Shader "Hidden/TexturePropertyNode" +{ + Properties + { + _Sampler ("_Sampler", 2D) = "white" {} + _Sampler3D ("_Sampler3D", 3D) = "white" {} + _Array ("_Array", 2DArray) = "white" {} + _Cube( "_Cube", CUBE) = "white" {} + _Default ("_Default", Int) = 0 + _Type ("_Type", Int) = 0 + } + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #pragma exclude_renderers d3d9 + #pragma target 3.5 + #include "UnityCG.cginc" + int _Default; + float4 frag( v2f_img i ) : SV_Target + { + if(_Default == 1) + { + return 1; + } + else if(_Default == 2) + { + return 0; + } + else if(_Default == 3) + { + return 0.5f; + } + else if(_Default == 4) + { + return float4(0.5,0.5,1,1); + } + + return 1; + } + ENDCG + } + + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #pragma exclude_renderers d3d9 + #pragma target 3.5 + #include "UnityCG.cginc" + + UNITY_DECLARE_TEX2DARRAY (_Array); + samplerCUBE _Cube; + sampler2D _Sampler; + sampler3D _Sampler3D; + int _Type; + + float4 frag (v2f_img i) : SV_Target + { + if (_Type == 4) + { + return UNITY_SAMPLE_TEX2DARRAY (_Array, float3(i.uv, 0)); + } + else if (_Type == 3) + { + return texCUBE (_Cube, float3(i.uv,0)); + } + else if (_Type == 2) + { + return tex3D (_Sampler3D, float3(i.uv,0)); + } + else + { + return tex2D (_Sampler, i.uv); + } + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TexturePropertyNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TexturePropertyNode.shader.meta new file mode 100644 index 00000000..c2ac2c0e --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TexturePropertyNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: e53988745ec6e034694ee2640cd3d372 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureTransform.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureTransform.shader new file mode 100644 index 00000000..55adec1b --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureTransform.shader @@ -0,0 +1,87 @@ +Shader "Hidden/TextureTransform" +{ + Properties + { + _Sampler ("_Sampler", 2D) = "white" {} + _Sampler3D ("_Sampler3D", 3D) = "white" {} + _Array ("_Array", 2DArray) = "white" {} + _Cube ("_Cube", CUBE) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + int _PreviewID = 0; + sampler2D _Sampler; + float4 _Sampler_ST; + + float4 frag( v2f_img i ) : SV_Target + { + return _PreviewID == 0?float4(_Sampler_ST.xy,0,0): float4(_Sampler_ST.zw,0,0); + } + ENDCG + } + + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + int _PreviewID = 0; + sampler3D _Sampler3D; + float4 _Sampler3D_ST; + + float4 frag (v2f_img i) : SV_Target + { + return _Sampler3D_ST; + return _PreviewID == 0 ? float4(_Sampler3D_ST.xy, 0, 0) : float4(_Sampler3D_ST.zw, 0, 0); + } + ENDCG + } + + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + int _PreviewID = 0; + UNITY_DECLARE_TEX2DARRAY (_Array); + float4 _Array_ST; + + float4 frag (v2f_img i) : SV_Target + { + return _Array_ST; + return _PreviewID == 0 ? float4(_Array_ST.xy, 0, 0) : float4(_Array_ST.zw, 0, 0); + } + ENDCG + } + + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + int _PreviewID = 0; + samplerCUBE _Cube; + float4 _Cube_ST; + + float4 frag (v2f_img i) : SV_Target + { + return _Cube_ST; + return _PreviewID == 0 ? float4(_Cube_ST.xy, 0, 0) : float4(_Cube_ST.zw, 0, 0); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureTransform.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureTransform.shader.meta new file mode 100644 index 00000000..6d5bc4e4 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureTransform.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 25ba2903568b00343ae06788994cab54 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TimeNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TimeNode.shader new file mode 100644 index 00000000..7a5fc9ef --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TimeNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/TimeNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float _EditorTime; + + float4 frag( v2f_img i ) : SV_Target + { + float4 t = _EditorTime; + t.x = _EditorTime / 20; + t.z = _EditorTime * 2; + t.w = _EditorTime * 3; + return t; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TimeNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TimeNode.shader.meta new file mode 100644 index 00000000..43a36984 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TimeNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 73abc10c8d1399444827a7eeb9c24c2a +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ToggleSwitchNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ToggleSwitchNode.shader new file mode 100644 index 00000000..e9d0eec4 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ToggleSwitchNode.shader @@ -0,0 +1,30 @@ +Shader "Hidden/ToggleSwitchNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + _B ("_B", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + sampler2D _B; + float _Current; + + float4 frag( v2f_img i ) : SV_Target + { + float4 a = tex2D( _A, i.uv ); + float4 b = tex2D( _B, i.uv ); + return lerp(a,b,_Current); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ToggleSwitchNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ToggleSwitchNode.shader.meta new file mode 100644 index 00000000..a6c388c0 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ToggleSwitchNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: beeb138daeb592a4887454f81dba2b3f +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TriplanarNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TriplanarNode.shader new file mode 100644 index 00000000..b5fc2b69 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TriplanarNode.shader @@ -0,0 +1,103 @@ +Shader "Hidden/TriplanarNode" +{ + Properties + { + _A ("_TopTex", 2D) = "white" {} + _B ("_MidTex", 2D) = "white" {} + _C ("_BotTex", 2D) = "white" {} + _D ("_Tilling", 2D) = "white" {} + _E ("_Falloff", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #pragma target 3.0 + #include "UnityCG.cginc" + #include "UnityStandardUtils.cginc" + + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + sampler2D _E; + float _IsNormal; + float _IsSpherical; + + inline float3 TriplanarSamplingCNF( sampler2D topTexMap, sampler2D midTexMap, sampler2D botTexMap, float3 worldPos, float3 worldNormal, float falloff, float tilling ) + { + float3 projNormal = ( pow( abs( worldNormal ), falloff ) ); + projNormal /= projNormal.x + projNormal.y + projNormal.z; + float3 nsign = sign( worldNormal ); + float negProjNormalY = max( 0, projNormal.y * -nsign.y ); + projNormal.y = max( 0, projNormal.y * nsign.y ); + half4 xNorm; half4 yNorm; half4 yNormN; half4 zNorm; + xNorm = ( tex2D( midTexMap, tilling * worldPos.zy * float2( nsign.x, 1.0 ) ) ); + yNorm = ( tex2D( topTexMap, tilling * worldPos.xz * float2( nsign.y, 1.0 ) ) ); + yNormN = ( tex2D( botTexMap, tilling * worldPos.xz * float2( nsign.y, 1.0 ) ) ); + zNorm = ( tex2D( midTexMap, tilling * worldPos.xy * float2( -nsign.z, 1.0 ) ) ); + xNorm.xyz = half3( UnpackNormal( xNorm ).xy * float2( nsign.x, 1.0 ) + worldNormal.zy, worldNormal.x ).zyx; + yNorm.xyz = half3( UnpackNormal( yNorm ).xy * float2( nsign.y, 1.0 ) + worldNormal.xz, worldNormal.y ).xzy; + zNorm.xyz = half3( UnpackNormal( zNorm ).xy * float2( -nsign.z, 1.0 ) + worldNormal.xy, worldNormal.z ).xyz; + yNormN.xyz = half3( UnpackNormal( yNormN ).xy * float2( nsign.y, 1.0 ) + worldNormal.xz, worldNormal.y ).xzy; + return normalize( xNorm.xyz * projNormal.x + yNorm.xyz * projNormal.y + yNormN.xyz * negProjNormalY + zNorm.xyz * projNormal.z ); + } + + inline float4 TriplanarSamplingCF( sampler2D topTexMap, sampler2D midTexMap, sampler2D botTexMap, float3 worldPos, float3 worldNormal, float falloff, float tilling ) + { + float3 projNormal = ( pow( abs( worldNormal ), falloff ) ); + projNormal /= projNormal.x + projNormal.y + projNormal.z; + float3 nsign = sign( worldNormal ); + float negProjNormalY = max( 0, projNormal.y * -nsign.y ); + projNormal.y = max( 0, projNormal.y * nsign.y ); + half4 xNorm; half4 yNorm; half4 yNormN; half4 zNorm; + xNorm = ( tex2D( midTexMap, tilling * worldPos.zy * float2( nsign.x, 1.0 ) ) ); + yNorm = ( tex2D( topTexMap, tilling * worldPos.xz * float2( nsign.y, 1.0 ) ) ); + yNormN = ( tex2D( botTexMap, tilling * worldPos.xz * float2( nsign.y, 1.0 ) ) ); + zNorm = ( tex2D( midTexMap, tilling * worldPos.xy * float2( -nsign.z, 1.0 ) ) ); + return xNorm * projNormal.x + yNorm * projNormal.y + yNormN * negProjNormalY + zNorm * projNormal.z; + } + + float4 frag( v2f_img i ) : SV_Target + { + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 vertexPos = float3(xy, z); + float3 normal = normalize(vertexPos); + float3 worldNormal = UnityObjectToWorldNormal(normal); + float3 worldPos = mul(unity_ObjectToWorld, vertexPos).xyz; + + float falloff = tex2D( _E, xy ).r; + float tilling = tex2D( _D, xy ).r * 0.625; + float4 triplanar = 1; + + if ( _IsNormal == 1 ) { + float3 tangent = normalize(float3( -z, xy.y*0.01, xy.x )); + float3 worldTangent = UnityObjectToWorldDir(tangent); + float tangentSign = -1; + float3 worldBinormal = normalize( cross(worldNormal, worldTangent) * tangentSign); + float3x3 worldToTangent = float3x3( worldTangent, worldBinormal, worldNormal ); + if ( _IsSpherical == 1 ) + triplanar.xyz = TriplanarSamplingCNF( _A, _A, _A, worldPos, worldNormal, falloff, tilling ); + else + triplanar.xyz = TriplanarSamplingCNF( _A, _B, _C, worldPos, worldNormal, falloff, tilling ); + + triplanar.xyz = mul( worldToTangent, triplanar.xyz ); + } + else + { + if ( _IsSpherical == 1 ) + triplanar = TriplanarSamplingCF( _A, _A, _A, worldPos, worldNormal, falloff, tilling ); + else + triplanar = TriplanarSamplingCF( _A, _B, _C, worldPos, worldNormal, falloff, tilling ); + } + + return triplanar; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TriplanarNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TriplanarNode.shader.meta new file mode 100644 index 00000000..d990502b --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TriplanarNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 8723015ec59743143aadfbe480e34391 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TruncOpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TruncOpNode.shader new file mode 100644 index 00000000..31b23c11 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TruncOpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/TruncOpNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return trunc(tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TruncOpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TruncOpNode.shader.meta new file mode 100644 index 00000000..40189d21 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TruncOpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: c717aaa68f4ac9e469b15763e82933e1 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_UnpackScaleNormalNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_UnpackScaleNormalNode.shader new file mode 100644 index 00000000..72e2fcf6 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_UnpackScaleNormalNode.shader @@ -0,0 +1,33 @@ +Shader "Hidden/UnpackScaleNormalNode" +{ + Properties + { + _A ("_Value", 2D) = "white" {} + _B ("_NormalScale", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #pragma target 3.0 + #include "UnityCG.cginc" + #include "UnityStandardUtils.cginc" + + sampler2D _A; + sampler2D _B; + + float4 frag( v2f_img i ) : SV_Target + { + float4 c = tex2D( _A, i.uv ); + float n = tex2D( _B, i.uv ).r; + c.rgb = UnpackScaleNormal( c, n ); + + return float4(c.rgb, 0); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_UnpackScaleNormalNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_UnpackScaleNormalNode.shader.meta new file mode 100644 index 00000000..7cf87f1e --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_UnpackScaleNormalNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 8b0ae05e25d280c45af81ded56f8012e +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Vector2Node.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Vector2Node.shader new file mode 100644 index 00000000..4edf77fe --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Vector2Node.shader @@ -0,0 +1,24 @@ +Shader "Hidden/Vector2Node" +{ + Properties { + _InputVector ("_InputVector", Vector) = (0,0,0,0) + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + float4 _InputVector; + + float4 frag( v2f_img i ) : SV_Target + { + return float4(_InputVector.x,_InputVector.y,0,0); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Vector2Node.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Vector2Node.shader.meta new file mode 100644 index 00000000..b9e7d39e --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Vector2Node.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 88b4191eb06084d4da85d1dd2f984085 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Vector3Node.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Vector3Node.shader new file mode 100644 index 00000000..299f3adb --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Vector3Node.shader @@ -0,0 +1,24 @@ +Shader "Hidden/Vector3Node" +{ + Properties { + _InputVector ("_InputVector", Vector) = (0,0,0,0) + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + float4 _InputVector; + + float4 frag( v2f_img i ) : SV_Target + { + return float4(_InputVector.x,_InputVector.y,_InputVector.z,0); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Vector3Node.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Vector3Node.shader.meta new file mode 100644 index 00000000..677eadca --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Vector3Node.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 8a44d38f06246bf48944b3f314bc7920 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Vector4Node.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Vector4Node.shader new file mode 100644 index 00000000..044be7a4 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Vector4Node.shader @@ -0,0 +1,24 @@ +Shader "Hidden/Vector4Node" +{ + Properties { + _InputVector ("_InputVector", Vector) = (0,0,0,0) + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + float4 _InputVector; + + float4 frag( v2f_img i ) : SV_Target + { + return _InputVector; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Vector4Node.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Vector4Node.shader.meta new file mode 100644 index 00000000..e90efaf2 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_Vector4Node.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: aac241d0e47a5a84fbd2edcd640788dc +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexBinormalNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexBinormalNode.shader new file mode 100644 index 00000000..f54cf44b --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexBinormalNode.shader @@ -0,0 +1,31 @@ +Shader "Hidden/VertexBinormalNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag( v2f_img i ) : SV_Target + { + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 vertexPos = float3(xy, z); + float3 normal = normalize(vertexPos); + float3 worldNormal = UnityObjectToWorldNormal(normal); + + float3 tangent = normalize(float3( -z, xy.y*0.01, xy.x )); + float3 worldPos = mul(unity_ObjectToWorld, vertexPos).xyz; + float3 worldTangent = UnityObjectToWorldDir(tangent); + float tangentSign = -1; + float3 worldBinormal = normalize( cross(worldNormal, worldTangent) * tangentSign); + + return float4(worldBinormal, 1); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexBinormalNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexBinormalNode.shader.meta new file mode 100644 index 00000000..ec27e263 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexBinormalNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 76873532ab67d2947beaf07151383cbe +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexColorNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexColorNode.shader new file mode 100644 index 00000000..99b62ca8 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexColorNode.shader @@ -0,0 +1,19 @@ +Shader "Hidden/VertexColorNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag( v2f_img i ) : SV_Target + { + return 1; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexColorNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexColorNode.shader.meta new file mode 100644 index 00000000..0ac109c2 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexColorNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: ca1d22db6470c5f4d9f93a9873b4f5bc +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexIdVariableNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexIdVariableNode.shader new file mode 100644 index 00000000..a3ef76f5 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexIdVariableNode.shader @@ -0,0 +1,39 @@ +Shader "Hidden/VertexIdVariableNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert + #pragma fragment frag + + struct appdata_custom + { + float4 vertex : POSITION; + uint vertexId : SV_VertexID; + }; + + struct v2f_custom + { + float4 pos : SV_POSITION; + half vertexId : TEXCOORD0; + }; + + v2f_custom vert( appdata_custom v ) + { + v2f_custom o; + o.pos = UnityObjectToClipPos (v.vertex); + o.vertexId = v.vertexId; + return o; + } + + float4 frag( v2f_custom i ) : SV_Target + { + return i.vertexId; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexIdVariableNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexIdVariableNode.shader.meta new file mode 100644 index 00000000..e7ac67a5 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexIdVariableNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 5934bf2c10b127a459177a3b622cea65 +timeCreated: 1542641929 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexTangentNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexTangentNode.shader new file mode 100644 index 00000000..3769192e --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexTangentNode.shader @@ -0,0 +1,31 @@ +Shader "Hidden/VertexTangentNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag( v2f_img i ) : SV_Target + { + float2 tp = 2 * i.uv - 1; + float tr = sqrt( dot(tp,tp) ); + tr = saturate( tr ); + //if ( tr < 1 ) { + float2 tuvs; + float f = ( 1 - sqrt( 1 - tr ) ) / tr; + + float3 tangent = normalize(float3( (1-f)*2, tp.y*0.01, tp.x )); + return float4((tangent), 1); + //} + //else { + // return 0; + //} + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexTangentNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexTangentNode.shader.meta new file mode 100644 index 00000000..93c49b13 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexTangentNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 61f0b80493c9b404d8c7bf56d59c3f81 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ViewDirInputsCoordNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ViewDirInputsCoordNode.shader new file mode 100644 index 00000000..7bf6d619 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ViewDirInputsCoordNode.shader @@ -0,0 +1,57 @@ +Shader "Hidden/WorldPosInputsNode" +{ + SubShader + { + Pass //world space + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + float4 frag(v2f_img i) : SV_Target + { + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 vertexPos = float3(xy, z); + float3 worldViewDir = normalize(float3(0,0,-5) - vertexPos); + + return float4(worldViewDir, 1); + } + ENDCG + } + + Pass //tangent space + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + float4 frag(v2f_img i) : SV_Target + { + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 vertexPos = float3(xy, z); + float3 worldViewDir = normalize(float3(0,0,-5) - vertexPos); + + float3 normal = normalize(vertexPos); + float3 worldNormal = UnityObjectToWorldNormal(normal); + + float3 tangent = normalize(float3( -z, xy.y*0.01, xy.x )); + float3 worldPos = mul(unity_ObjectToWorld, float4(vertexPos,1)).xyz; + float3 worldTangent = UnityObjectToWorldDir(tangent); + float tangentSign = -1; + float3 worldBinormal = normalize( cross(worldNormal, worldTangent) * tangentSign); + float4 tSpace0 = float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x); + float4 tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y); + float4 tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z); + + fixed3 viewDirTan = tSpace0.xyz * worldViewDir.x + tSpace1.xyz * worldViewDir.y + tSpace2.xyz * worldViewDir.z; + + return float4(viewDirTan, 1); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ViewDirInputsCoordNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ViewDirInputsCoordNode.shader.meta new file mode 100644 index 00000000..6fdc1d17 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ViewDirInputsCoordNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 07b57d9823df4bd4d8fe6dcb29fca36a +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VoronoiNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VoronoiNode.shader new file mode 100644 index 00000000..81543702 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VoronoiNode.shader @@ -0,0 +1,251 @@ +Shader "Hidden/VoronoiNode" +{ + Properties + { + _A("_RGB", 2D) = "white" {} + _B("_RGB", 2D) = "white" {} + _C("_RGB", 2D) = "white" {} + _D ("_RGB", 2D) = "white" {} + _UseTileScale("_UseTileScale", Float) = 0 + _TileScale ("_TileScale", Int) = 1 + _MinkowskiPower("_MinkowskiPower", Float) = 0 + _DistFunc("_DistFunc", Int) = 0 + _MethodType("_MethodType", Int) = 0 + _SearchQuality("_SearchQuality", Int) = 1 + _Octaves("_Octaves", Int) = 1 + _UseSmoothness("_UseSmoothness", Int ) = 0 + } + SubShader + { + Tags { "RenderType"="Opaque" } + CGINCLUDE + sampler2D _A; + sampler2D _B; + sampler2D _C; + sampler2D _D; + float _UseTileScale = 0; + int _TileScale = 1; + float _MinkowskiPower = 1; + int _DistFunc = 0; + int _MethodType = 0; + int _SearchQuality = 0; + int _Octaves = 1; + int _PreviewID = 0; + int _UseSmoothness = 0; + + float2 VoronoiHash( float2 p ) + { + p = lerp( p, p - _TileScale * floor (p / _TileScale), _UseTileScale ); + p = float2(dot (p, float2(127.1, 311.7)), dot (p, float2(269.5, 183.3))); + return frac (sin (p) *43758.5453); + } + + float Voronoi( float2 v, float time, inout float2 id , float smoothness ) + { + float2 n = floor(v); + float2 f = frac(v); + float F1 = 8.0; + float F2 = 8.0; + float2 mr = 0; + float2 mg = 0; + for (int j = -_SearchQuality; j <= _SearchQuality; j++) + { + for (int i = -_SearchQuality; i <= _SearchQuality; i++) + { + float2 g = float2(i, j); + float2 o = VoronoiHash (n + g); + o = (sin (time + o * 6.2831) * 0.5 + 0.5); float2 r = g - f + o; + float d = 0; + //Euclidean^2 + if (_DistFunc == 0) + { + d = 0.5 * dot (r, r); + } + //Euclidean + else if (_DistFunc == 1) + { + d = 0.707 * sqrt (dot (r, r)); + } + //Manhattan + else if (_DistFunc == 2) + { + d = 0.5 * (abs (r.x) + abs (r.y)); + } + //Chebyshev + else if (_DistFunc == 3) + { + d = max (abs (r.x), abs (r.y)); + } + //Minkowski + else if (_DistFunc == 4) + { + d = (1 / pow(2, 1 / _MinkowskiPower)) * pow( ( pow( abs( r.x ), _MinkowskiPower) + pow( abs( r.y ), _MinkowskiPower) ), (1 / _MinkowskiPower)); + } + + if (_MethodType == 0 && _UseSmoothness == 1) + { + float h = smoothstep (0.0, 1.0, 0.5 + 0.5 * (F1 - d) / smoothness); + F1 = lerp (F1, d, h) - smoothness * h * (1.0 - h); + mg = g; mr = r; id = o; + } + else + { + if (d < F1) + { + F2 = F1; + F1 = d; mg = g; mr = r; id = o; + } + else if (d < F2) + { + F2 = d; + } + + } + + } + } + + //Cells + if(_MethodType == 0) + { + return F1; + } + //Crystal + else if (_MethodType == 1) + { + return F2; + } + //Glass + else if (_MethodType == 2) + { + return F2 - F1; + } + //Caustic + else if (_MethodType == 3) + { + return (F2 + F1) * 0.5; + } + //Distance + else if (_MethodType == 4) + { + F1 = 8.0; + for (int j = -2; j <= 2; j++) + { + for (int i = -2; i <= 2; i++) + { + float2 g = mg + float2(i, j); + float2 o = VoronoiHash (n + g); + o = ( sin (time + o * 6.2831) * 0.5 + 0.5); + float2 r = g - f + o; + float d = dot (0.5 * (mr + r), normalize (r - mr)); + F1 = min (F1, d); + } + } + return F1; + } + else + return F1; + } + + + ENDCG + + Pass // Voronoi - Unity + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + inline float2 UnityVoronoiRandomVector (float2 UV, float offset) + { + float2x2 m = float2x2(15.27, 47.63, 99.41, 89.98); + UV = frac (sin (mul (UV, m)) * 46839.32); + return float2(sin (UV.y* +offset) * 0.5 + 0.5, cos (UV.x* offset) * 0.5 + 0.5); + } + + //x - Out y - Cells + float3 UnityVoronoi (float2 UV, float AngleOffset, float CellDensity) + { + float2 g = floor (UV * CellDensity); + float2 f = frac (UV * CellDensity); + float t = 8.0; + float3 res = float3(8.0, 0.0, 0.0); + + for (int y = -1; y <= 1; y++) + { + for (int x = -1; x <= 1; x++) + { + float2 lattice = float2(x, y); + float2 offset = UnityVoronoiRandomVector (lattice + g, AngleOffset); + float d = distance (lattice + offset, f); + + if (d < res.x) + { + res = float3(d, offset.x, offset.y); + } + } + } + return res; + } + + float4 frag (v2f_img i) : SV_Target + { + float2 uvValue = tex2D(_A, i.uv).rg; + float angleOffset = tex2D(_B, i.uv).r; + float cellDensity = tex2D(_C, i.uv).r; + float3 voronoiVal = UnityVoronoi( uvValue, angleOffset , cellDensity ); + if( _PreviewID == 1 ) + return float4( voronoiVal.yz, 0, 1 ); + else + return float4( voronoiVal.xxx, 1); + } + ENDCG + } + + Pass // Voronoi - ASE + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + float4 frag (v2f_img i) : SV_Target + { + float2 uvValue = tex2D (_A, i.uv).rg; + float time = tex2D (_B, i.uv).r; + float scale = tex2D (_C, i.uv).r; + float smoothness = tex2D (_D, i.uv).r; + + float2 id = 0; + float voronoiVal = Voronoi( uvValue*scale,time, id, smoothness ); + if (_Octaves == 1) + { + if( _PreviewID == 1) + return float4( id, 0, 1 ); + else + return float4(voronoiVal.xxx, 1); + } + else + { + float fade = 0.5; + float voroi = 0; + float rest = 0; + for (int it = 0; it < _Octaves; it++) + { + voroi += fade * Voronoi( uvValue*scale, time, id, smoothness); + rest += fade; + uvValue *= 2; + fade *= 0.5; + } + voroi /= rest; + if( _PreviewID == 1 ) + return float4( id, 0, 1 ); + else + return float4(voroi.xxx, 1); + } + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VoronoiNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VoronoiNode.shader.meta new file mode 100644 index 00000000..420e71ca --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VoronoiNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: bc1498ccdade442479038b24982fc946 +timeCreated: 1566905239 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WeightedBlendNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WeightedBlendNode.shader new file mode 100644 index 00000000..e0a46b51 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WeightedBlendNode.shader @@ -0,0 +1,84 @@ +Shader "Hidden/WeightedBlendNode" +{ + Properties + { + _A ( "_Weights", 2D) = "white" {} + _B ( "_Layer1", 2D) = "white" {} + _C ( "_Layer2", 2D ) = "white" {} + _D ( "_Layer3", 2D ) = "white" {} + _E ( "_Layer4", 2D ) = "white" {} + } + + SubShader + { + + CGINCLUDE + + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + sampler2D _A; + sampler2D _B; + + ENDCG + + Pass + { + CGPROGRAM + float4 frag(v2f_img i) : SV_Target + { + float4 Layer1 = tex2D( _B, i.uv ); + return Layer1; + } + ENDCG + } + + Pass + { + CGPROGRAM + sampler2D _C; + float4 frag ( v2f_img i ) : SV_Target + { + float4 Weights = tex2D ( _A, i.uv ); + float4 Layer1 = tex2D ( _B, i.uv ); + float4 Layer2 = tex2D ( _C, i.uv ); + return ( Weights.x*Layer1 + Weights.y*Layer2 ) / ( Weights.x + Weights.y ); + } + ENDCG + } + + Pass + { + CGPROGRAM + sampler2D _C; + sampler2D _D; + float4 frag ( v2f_img i ) : SV_Target + { + float4 Weights = tex2D( _A, i.uv ); + float4 Layer1 = tex2D( _B, i.uv ); + float4 Layer2 = tex2D( _C, i.uv ); + float4 Layer3 = tex2D( _D, i.uv ); + return ( Weights.x*Layer1 + Weights.y*Layer2 + Weights.z*Layer3 ) / ( Weights.x + Weights.y + Weights.z ); + } + ENDCG + } + + Pass + { + CGPROGRAM + sampler2D _C; + sampler2D _D; + sampler2D _E; + float4 frag ( v2f_img i ) : SV_Target + { + float4 Weights = tex2D ( _A, i.uv ); + float4 Layer1 = tex2D ( _B, i.uv ); + float4 Layer2 = tex2D ( _C, i.uv ); + float4 Layer3 = tex2D ( _D, i.uv ); + float4 Layer4 = tex2D ( _E, i.uv ); + return ( Weights.x*Layer1 + Weights.y*Layer2 + Weights.z*Layer3 + Weights.w*Layer4 ) / ( Weights.x + Weights.y + Weights.z + Weights.w ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WeightedBlendNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WeightedBlendNode.shader.meta new file mode 100644 index 00000000..9738a46c --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WeightedBlendNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 6076cbeaa41ebb14c85ff81b58df7d88 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WireNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WireNode.shader new file mode 100644 index 00000000..7d040599 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WireNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/WireNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return tex2D( _A, i.uv ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WireNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WireNode.shader.meta new file mode 100644 index 00000000..255c3362 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WireNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: fa1e3e404e6b3c243b5527b82739d682 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldNormalVector.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldNormalVector.shader new file mode 100644 index 00000000..7a6983b8 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldNormalVector.shader @@ -0,0 +1,66 @@ +Shader "Hidden/WorldNormalVector" +{ + Properties + { + _A ("_WorldNormal", 2D) = "white" {} + } + SubShader + { + Pass //not connected + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + float4 frag(v2f_img i) : SV_Target + { + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 worldNormal = normalize(float3(xy, z)); + return float4(worldNormal, 1); + } + ENDCG + } + + Pass //connected + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 vertexPos = float3(xy, z); + float3 normal = normalize(vertexPos); + float3 worldNormal = UnityObjectToWorldNormal(normal); + + float3 tangent = normalize(float3( -z, xy.y*0.01, xy.x )); + float3 worldPos = mul(unity_ObjectToWorld, float4(vertexPos,1)).xyz; + float3 worldTangent = UnityObjectToWorldDir(tangent); + float tangentSign = -1; + float3 worldBinormal = normalize( cross(worldNormal, worldTangent) * tangentSign); + float4 tSpace0 = float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x); + float4 tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y); + float4 tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z); + + float2 sphereUVs = i.uv; + + sphereUVs.x = (atan2(vertexPos.x, -vertexPos.z) / (UNITY_PI) + 0.5); + // Needs further checking + //float3 tangentNormal = tex2Dlod(_A, float4(sphereUVs,0,0)).xyz; + float3 tangentNormal = tex2D(_A, sphereUVs).xyz; + + worldNormal = fixed3( dot( tSpace0.xyz, tangentNormal ), dot( tSpace1.xyz, tangentNormal ), dot( tSpace2.xyz, tangentNormal ) ); + + return float4(worldNormal, 1); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldNormalVector.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldNormalVector.shader.meta new file mode 100644 index 00000000..dfc9ffac --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldNormalVector.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 5f55f4841abb61e45967957788593a9d +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldPosInputsNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldPosInputsNode.shader new file mode 100644 index 00000000..c36df0f5 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldPosInputsNode.shader @@ -0,0 +1,23 @@ +Shader "Hidden/WorldPosInputsNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag( v2f_img i ) : SV_Target + { + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float4 vertexPos = float4(xy, z,1); + float4 worldPos = mul(unity_ObjectToWorld, vertexPos); + return float4 (worldPos.xyz, 1); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldPosInputsNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldPosInputsNode.shader.meta new file mode 100644 index 00000000..713d2ac0 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldPosInputsNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 70d5405009b31a349a4d8285f30cf5d9 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldReflectionVector.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldReflectionVector.shader new file mode 100644 index 00000000..e3cfb4e2 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldReflectionVector.shader @@ -0,0 +1,77 @@ +Shader "Hidden/WorldReflectionVector" +{ + Properties + { + _A ("_TangentNormal", 2D) = "white" {} + } + SubShader + { + Pass //not connected + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag(v2f_img i) : SV_Target + { + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 vertexPos = float3(xy, z); + float3 normal = normalize(vertexPos); + float3 worldNormal = UnityObjectToWorldNormal(normal); + + float3 worldViewDir = normalize(float3(0,0,-5) - vertexPos); + float3 worldRefl = -worldViewDir; + worldRefl = reflect( worldRefl, worldNormal ); + + return float4((worldRefl), 1); + } + ENDCG + } + + Pass //connected + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + float2 xy = 2 * i.uv - 1; + float z = -sqrt(1-saturate(dot(xy,xy))); + float3 vertexPos = float3(xy, z); + float3 normal = normalize(vertexPos); + float3 worldNormal = UnityObjectToWorldNormal(normal); + + float3 tangent = normalize(float3( -z, xy.y*0.01, xy.x )); + float3 worldPos = mul(unity_ObjectToWorld, float4(vertexPos,1)).xyz; + float3 worldViewDir = normalize(float3(0,0,-5) - vertexPos); + + float3 worldTangent = UnityObjectToWorldDir(tangent); + float tangentSign = -1; + float3 worldBinormal = normalize( cross(worldNormal, worldTangent) * tangentSign); + float4 tSpace0 = float4(worldTangent.x, worldBinormal.x, worldNormal.x, worldPos.x); + float4 tSpace1 = float4(worldTangent.y, worldBinormal.y, worldNormal.y, worldPos.y); + float4 tSpace2 = float4(worldTangent.z, worldBinormal.z, worldNormal.z, worldPos.z); + + float3 worldRefl = -worldViewDir; + + float2 sphereUVs = i.uv; + sphereUVs.x = atan2(vertexPos.x, -vertexPos.z) / (UNITY_PI) + 0.5; + + // Needs further checking + //float3 tangentNormal = tex2Dlod(_A, float4(sphereUVs,0,0)).xyz; + float3 tangentNormal = tex2D(_A, sphereUVs).xyz; + + worldRefl = reflect( worldRefl, half3( dot( tSpace0.xyz, tangentNormal ), dot( tSpace1.xyz, tangentNormal ), dot( tSpace2.xyz, tangentNormal ) ) ); + + return float4((worldRefl), 1); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldReflectionVector.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldReflectionVector.shader.meta new file mode 100644 index 00000000..44034b50 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldReflectionVector.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 8e267e9aa545eeb418585a730f50273e +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceCameraPos.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceCameraPos.shader new file mode 100644 index 00000000..9f04ac18 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceCameraPos.shader @@ -0,0 +1,20 @@ +Shader "Hidden/WorldSpaceCameraPos" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag( v2f_img i ) : SV_Target + { + //_WorldSpaceCameraPos + return float4(float3(0,0,-5),0); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceCameraPos.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceCameraPos.shader.meta new file mode 100644 index 00000000..78177cec --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceCameraPos.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 6b0c78411043dd24dac1152c84bb63ba +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceLightDirHlpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceLightDirHlpNode.shader new file mode 100644 index 00000000..742e4928 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceLightDirHlpNode.shader @@ -0,0 +1,22 @@ +Shader "Hidden/WorldSpaceLightDirHlpNode" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 _EditorWorldLightPos; + + float4 frag( v2f_img i ) : SV_Target + { + float3 lightDir = normalize( _EditorWorldLightPos.xyz ); + return float4 ( lightDir, 1); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceLightDirHlpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceLightDirHlpNode.shader.meta new file mode 100644 index 00000000..10ed2757 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceLightDirHlpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 2e8dc46eb6fb2124d9f0007caf9567e3 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceLightPosNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceLightPosNode.shader new file mode 100644 index 00000000..3bb5ef16 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceLightPosNode.shader @@ -0,0 +1,33 @@ +Shader "Hidden/WorldSpaceLightPosNode" +{ + SubShader + { + CGINCLUDE + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + ENDCG + + Pass + { + CGPROGRAM + float4 _EditorWorldLightPos; + float4 frag( v2f_img i ) : SV_Target + { + float3 lightDir = normalize( _EditorWorldLightPos.xyz ); + return float4 ( lightDir, 0); + } + ENDCG + } + + Pass + { + CGPROGRAM + float4 frag( v2f_img i ) : SV_Target + { + return (0).xxxx; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceLightPosNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceLightPosNode.shader.meta new file mode 100644 index 00000000..f9fa58c7 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceLightPosNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 2292a614672283c41a367b22cdde4620 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceViewDirHlpNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceViewDirHlpNode.shader new file mode 100644 index 00000000..e90bacb6 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceViewDirHlpNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/WorldSpaceViewDirHlpNode" +{ +Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + sampler2D _A; + + float4 frag( v2f_img i ) : SV_Target + { + return float4( float3( 0,0,-5 ) - tex2D( _A, i.uv ).rgb,1); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceViewDirHlpNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceViewDirHlpNode.shader.meta new file mode 100644 index 00000000..edeada69 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldSpaceViewDirHlpNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: fe0e09756a8a0ba408015b43e66cb8a6 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldToObjectTransfNode.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldToObjectTransfNode.shader new file mode 100644 index 00000000..d3ff2a76 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldToObjectTransfNode.shader @@ -0,0 +1,25 @@ +Shader "Hidden/WorldToObjectTransfNode" +{ + Properties + { + _A ("_A", 2D) = "white" {} + } + SubShader + { + Pass + { + CGPROGRAM + #include "UnityCG.cginc" + #pragma vertex vert_img + #pragma fragment frag + + sampler2D _A; + + float4 frag(v2f_img i) : SV_Target + { + return mul(unity_WorldToObject, tex2D( _A, i.uv )); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldToObjectTransfNode.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldToObjectTransfNode.shader.meta new file mode 100644 index 00000000..069ac0b0 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldToObjectTransfNode.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 79a5efd1e3309f54d8ba3e7fdf5e459b +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldTransformParams.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldTransformParams.shader new file mode 100644 index 00000000..92726760 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldTransformParams.shader @@ -0,0 +1,20 @@ +Shader "Hidden/WorldTransformParams" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag( v2f_img i ) : SV_Target + { + return unity_WorldTransformParams; + } + ENDCG + } + + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldTransformParams.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldTransformParams.shader.meta new file mode 100644 index 00000000..b6b2479d --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_WorldTransformParams.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 5a2642605f085da458d6e03ade47b87a +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ZBufferParams.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ZBufferParams.shader new file mode 100644 index 00000000..9f817b1e --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ZBufferParams.shader @@ -0,0 +1,19 @@ +Shader "Hidden/ZBufferParams" +{ + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #include "UnityCG.cginc" + + float4 frag( v2f_img i ) : SV_Target + { + return _ZBufferParams; + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ZBufferParams.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ZBufferParams.shader.meta new file mode 100644 index 00000000..c7caf5ec --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_ZBufferParams.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 56c42c106bcb497439187f5bb6b6f94d +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/TextureArrayInspector.shader b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/TextureArrayInspector.shader new file mode 100644 index 00000000..408050d1 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/TextureArrayInspector.shader @@ -0,0 +1,30 @@ +Shader "Hidden/TextureArrayEditor" +{ + Properties + { + _MainTex ("_MainTex", 2DArray) = "white" {} + _Index ("_Index", Int) = 0 + } + SubShader + { + Pass + { + CGPROGRAM + #pragma vertex vert_img + #pragma fragment frag + #pragma target 3.5 + #include "UnityCG.cginc" + #include "UnityStandardUtils.cginc" + + uniform UNITY_DECLARE_TEX2DARRAY( _MainTex ); + int _Index; + + float4 frag( v2f_img i ) : SV_Target + { + //return UNITY_SAMPLE_TEX2DARRAY_LOD( _MainTex, float3( i.uv, _Index), 0 ); + return UNITY_SAMPLE_TEX2DARRAY( _MainTex, float3( i.uv, _Index) ); + } + ENDCG + } + } +} diff --git a/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/TextureArrayInspector.shader.meta b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/TextureArrayInspector.shader.meta new file mode 100644 index 00000000..8f6ce0ae --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/TextureArrayInspector.shader.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 610c24aad350fba4583068c6c22fa428 +timeCreated: 1488289785 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: |