12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- Shader "Hidden/WorldPosInputsNode"
- {
- CGINCLUDE
- #pragma vertex vert_img
- #pragma fragment frag
- #include "UnityCG.cginc"
- #include "Preview.cginc"
- ENDCG
- SubShader
- {
- // Object
- Pass
- {
- CGPROGRAM
- float4 frag( v2f_img i ) : SV_Target
- {
- float3 positionOS = PreviewFragmentPositionOS( i.uv );
- return float4( positionOS, 1 );
- }
- ENDCG
- }
- // World
- Pass
- {
- CGPROGRAM
- float4 frag( v2f_img i ) : SV_Target
- {
- float3 positionOS = PreviewFragmentPositionOS( i.uv );
- float3 positionWS = mul( unity_ObjectToWorld, positionOS );
- return float4( positionWS, 1 );
- }
- ENDCG
- }
- // Relative World
- Pass
- {
- CGPROGRAM
- float4 frag( v2f_img i ) : SV_Target
- {
- float3 positionOS = PreviewFragmentPositionOS( i.uv );
- float3 positionWS = mul( unity_ObjectToWorld, positionOS );
- float3 positionRWS = positionWS - preview_WorldSpaceCameraPos.xyz;
- return float4( positionRWS, 1 );
- }
- ENDCG
- }
- // View
- Pass
- {
- CGPROGRAM
- float4 frag( v2f_img i ) : SV_Target
- {
- float3 positionOS = PreviewFragmentPositionOS( i.uv );
- float3 positionVS = UnityObjectToViewPos( positionOS );
- return float4( positionVS, 1 );
- }
- ENDCG
- }
- }
- }
|