Custom Shader Compatibility
Shader Graph




Amplify Shader Editor



Text Shaders
Last updated







Last updated
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
#include "Assets/AdaptiveGI/Shaders/Utilities/SampleAdaptiveGI.hlsl"float3 positionWS : TEXCOORD0;
float3 normalWS : TEXCOORD1;OUT.positionWS = TransformObjectToWorld(IN.positionOS.xyz);
OUT.normalWS = TransformObjectToWorldNormal(IN.normalOS);float3 giColor = SampleAdaptiveGI(IN.positionWS, IN.normalWS, sampler_LinearClamp);half3 finalColor = _BaseColor.rgb * giColor;
return half4(finalColor, _BaseColor.a);Shader "Custom/AdaptiveGISample"
{
Properties
{
_BaseColor ("Base Color", Color) = (1,1,1,1)
}
SubShader
{
Tags { "RenderPipeline"="UniversalPipeline" }
// Forward
Pass
{
Name "Unlit"
Tags { "LightMode"="UniversalForward" }
HLSLPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
#include "Assets/AdaptiveGI/Shaders/Utilities/SampleAdaptiveGI.hlsl"
struct Attributes
{
float4 positionOS : POSITION;
float3 normalOS : NORMAL;
};
struct Varyings
{
float4 positionHCS : SV_POSITION;
float3 positionWS : TEXCOORD0;
float3 normalWS : TEXCOORD1;
};
half4 _BaseColor;
Varyings vert (Attributes IN)
{
Varyings OUT;
OUT.positionHCS = TransformObjectToHClip(IN.positionOS.xyz);
OUT.positionWS = TransformObjectToWorld(IN.positionOS.xyz);
OUT.normalWS = TransformObjectToWorldNormal(IN.normalOS);
return OUT;
}
half4 frag (Varyings IN) : SV_Target
{
float3 giColor = SampleAdaptiveGI(IN.positionWS, IN.normalWS, sampler_LinearClamp);
float3 finalColor = _BaseColor.rgb * giColor;
return float4(finalColor, _BaseColor.a);
}
ENDHLSL
}
// DepthNormals (Used for SSAO)
Pass
{
Name "DepthNormals"
Tags { "LightMode"="DepthNormals" }
ZWrite On
ZTest LEqual
HLSLPROGRAM
#pragma vertex DepthNormalsVertex
#pragma fragment DepthNormalsFragment
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/SurfaceInput.hlsl"
#include "Packages/com.unity.render-pipelines.universal/Shaders/DepthNormalsPass.hlsl"
ENDHLSL
}
}
FallBack "Hidden/Universal Render Pipeline/FallbackError"
}