From b82da95b5181ac8bbae38efb13e950d5e88a4caa Mon Sep 17 00:00:00 2001 From: chai Date: Fri, 23 Oct 2020 13:08:43 +0800 Subject: =?UTF-8?q?*=E7=A7=BB=E5=8A=A8amplify=20shader=20editor=E5=88=B0th?= =?UTF-8?q?ird=20party=E7=9B=AE=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Previews/Preview_TextureArrayNode.shader | 63 ++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 Assets/ThirdParty/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureArrayNode.shader (limited to 'Assets/ThirdParty/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureArrayNode.shader') diff --git a/Assets/ThirdParty/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureArrayNode.shader b/Assets/ThirdParty/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_TextureArrayNode.shader new file mode 100644 index 00000000..9b9c8bec --- /dev/null +++ b/Assets/ThirdParty/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 + } + } +} -- cgit v1.1-26-g67d0