76 lines
7.3 KiB
Plaintext
76 lines
7.3 KiB
Plaintext
%YAML 1.1
|
|
%TAG !u! tag:unity3d.com,2011:
|
|
--- !u!114 &11400000
|
|
MonoBehaviour:
|
|
m_ObjectHideFlags: 0
|
|
m_CorrespondingSourceObject: {fileID: 0}
|
|
m_PrefabInstance: {fileID: 0}
|
|
m_PrefabAsset: {fileID: 0}
|
|
m_GameObject: {fileID: 0}
|
|
m_Enabled: 1
|
|
m_EditorHideFlags: 0
|
|
m_Script: {fileID: 11500000, guid: 78b2425a2284af743826c689403a4924, type: 3}
|
|
m_Name: Normal From Height
|
|
m_EditorClassIdentifier:
|
|
m_functionInfo: "// Made with Amplify Shader Editor v1.9.9.1\n// Available at the
|
|
Unity Asset Store - http://u3d.as/y3X \n/*ASEBEGIN\nVersion=19901\nNode;AmplifyShaderEditor.StickyNoteNode,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;135;592,-992;Inherit;False;736.3303;390.5146;//
|
|
\"Bump Mapping Unparametrized Surfaces on the GPU\" by Morten S. Mikkelsen;;1,1,1,1;float3
|
|
vSigmaS = ddx( surf_pos )@$float3 vSigmaT = ddy( surf_pos )@$$float3 vN = surf_norm@$$float3
|
|
vR1 = cross( vSigmaT , vN )@$float3 vR2 = cross( vN , vSigmaS )@$$float fDet
|
|
= dot( vSigmaS , vR1 )@$$float dBs = ddx( height )@$float dBt = ddy( height )@$$float3
|
|
vSurfGrad = scale * 0.05 * sign( fDet ) * ( dBs * vR1 + dBt * vR2 )@$$result
|
|
= normalize ( abs( fDet ) * vN - vSurfGrad )@$;0;0\nNode;AmplifyShaderEditor.DdxOpNode,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;111;-336,-784;Inherit;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.DdyOpNode,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;112;-336,-704;Inherit;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.CrossProductOpNode,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;113;-144,-704;Inherit;False;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.DotProductOpNode,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;115;80,-784;Inherit;False;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.SimpleMultiplyOpNode,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;123;144,-384;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.SimpleMultiplyOpNode,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;124;144,-288;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.SimpleMultiplyOpNode,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;126;608,-224;Inherit;False;4;4;0;FLOAT;0;False;1;FLOAT3;0.05,0.05,0.05;False;2;FLOAT;0;False;3;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.SimpleAddOpNode,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;125;368,-304;Inherit;False;2;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.SimpleMultiplyOpNode,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;131;608,-512;Inherit;False;2;2;0;FLOAT;0;False;1;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.AbsOpNode,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;128;448,-560;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.SignOpNode,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;127;368,-384;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.CrossProductOpNode,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;114;-144,-592;Inherit;False;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.FunctionInput,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;20;-480,-288;Inherit;False;Height;1;0;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.DdyOpNode,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;122;-240,-288;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.DdxOpNode,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;121;-240,-384;Inherit;False;1;0;FLOAT;0;False;1;FLOAT;0\nNode;AmplifyShaderEditor.FunctionInput,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;110;352,-160;Inherit;False;Strength;1;1;False;1;0;FLOAT;1;False;1;FLOAT;0\nNode;AmplifyShaderEditor.WorldNormalVector,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;109;-464,-496;Inherit;False;False;1;0;FLOAT3;0,0,1;False;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3\nNode;AmplifyShaderEditor.WorldPosInputsNode,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;108;-608,-736;Inherit;False;0;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3\nNode;AmplifyShaderEditor.SimpleSubtractOpNode,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;132;848,-384;Inherit;False;2;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.NormalizeNode,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;130;1024,-384;Inherit;False;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.TransformDirectionNode,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;42;1216,-384;Inherit;False;World;Tangent;False;Fast;False;1;0;FLOAT3;0,0,0;False;4;FLOAT3;0;FLOAT;1;FLOAT;2;FLOAT;3\nNode;AmplifyShaderEditor.FunctionOutput,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;0;1216,-224;Inherit;False;True;-1;World
|
|
Normal;1;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nNode;AmplifyShaderEditor.FunctionOutput,
|
|
AmplifyShaderEditor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null;40;1456,-384;Inherit;False;False;-1;Tangent
|
|
Normal;0;False;1;0;FLOAT3;0,0,0;False;1;FLOAT3;0\nWireConnection;111;0;108;0\nWireConnection;112;0;108;0\nWireConnection;113;0;112;0\nWireConnection;113;1;109;0\nWireConnection;115;0;111;0\nWireConnection;115;1;113;0\nWireConnection;123;0;121;0\nWireConnection;123;1;113;0\nWireConnection;124;0;122;0\nWireConnection;124;1;114;0\nWireConnection;126;0;110;0\nWireConnection;126;2;127;0\nWireConnection;126;3;125;0\nWireConnection;125;0;123;0\nWireConnection;125;1;124;0\nWireConnection;131;0;128;0\nWireConnection;131;1;109;0\nWireConnection;128;0;115;0\nWireConnection;127;0;115;0\nWireConnection;114;0;109;0\nWireConnection;114;1;111;0\nWireConnection;122;0;20;0\nWireConnection;121;0;20;0\nWireConnection;132;0;131;0\nWireConnection;132;1;126;0\nWireConnection;130;0;132;0\nWireConnection;42;0;130;0\nWireConnection;0;0;130;0\nWireConnection;40;0;42;0\nASEEND*/\n//CHKSM=382C4383C72E6E36C68F12FC439BAEE8C317B1B6"
|
|
m_functionName:
|
|
m_description: Derive a normal vector from a procedural height value.
|
|
m_additionalIncludes:
|
|
m_additionalIncludes: []
|
|
m_outsideIncludes: []
|
|
m_additionalPragmas:
|
|
m_additionalPragmas: []
|
|
m_outsidePragmas: []
|
|
m_additionalDirectives:
|
|
m_validData: 0
|
|
m_isDirty: 0
|
|
m_moduleName: ' Additional Directives'
|
|
m_independentModule: 1
|
|
m_customEdited: 0
|
|
m_additionalDirectives: []
|
|
m_shaderFunctionDirectives: []
|
|
m_nativeDirectives: []
|
|
m_nativeDirectivesIndex: -1
|
|
m_nativeDirectivesFoldout: 0
|
|
m_directivesSaveItems: []
|
|
m_nodeCategory: 3
|
|
m_headerStyle: 1
|
|
m_headerColor: {r: 1, g: 0.4, b: 0, a: 1}
|
|
m_customNodeCategory:
|
|
m_previewPosition: 0
|
|
m_hidden: 0
|
|
m_url:
|