diff options
Diffstat (limited to 'Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexBinormalNode.shader')
-rw-r--r-- | Assets/AmplifyShaderEditor/Plugins/EditorResources/Previews/Preview_VertexBinormalNode.shader | 31 |
1 files changed, 31 insertions, 0 deletions
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 + } + } +} |