Files
YachtDice/Assets/Plugins/AllIn1SpriteShader/Shaders/ShaderLibrary/AllIn1SpriteShaderSRP_HDRPHelper.hlsl
T
2026-02-23 22:01:07 +07:00

32 lines
774 B
HLSL

#ifndef ALLIN1SPRITESHADERSRP_HDRPHELPER
#define ALLIN1SPRITESHADERSRP_HDRPHELPER
//fogCoord only used in URP. It's here to make both functions have the same parameters
float4 AllIn1MixFog(float4 inputColor, float4 clipPos, float3 positionWS, float fogCoord)
{
float4 res = inputColor;
if (_FogEnabled)
{
PositionInputs posInput = GetPositionInput(
clipPos.xy,
_ScreenSize.zw,
clipPos.z,
clipPos.w,
positionWS, //In HDRP is RWS
0
);
float3 V = GetWorldSpaceNormalizeViewDir(positionWS);
float3 fogColor;
float3 fogOpacity;
EvaluateAtmosphericScattering(posInput, V, fogColor, fogOpacity);
res.rgb = (res.rgb * fogOpacity) + fogColor;
res.a *= (1 - fogOpacity);
}
return res;
}
#endif //ALLIN1SPRITESHADERSRP_HDRPHELPER