Make linearized depth data available to translucent material shaders via the texture name SceneLinearDepth. Does it work? Who knows!

This commit is contained in:
Magnus Norddahl 2024-09-08 02:32:01 +02:00
commit 1b8effe1ea
17 changed files with 183 additions and 32 deletions

View file

@ -1126,7 +1126,10 @@ void HWDrawInfo::DrawScene(int drawmode, FRenderState& state)
applySSAO = true;
if (r_dithertransparency && vp.IsAllowedOoB())
{
vp.camera->tracer ? SetDitherTransFlags(vp.camera->tracer) : SetDitherTransFlags(players[consoleplayer].mo);
if (vp.camera->tracer)
SetDitherTransFlags(vp.camera->tracer);
else
SetDitherTransFlags(players[consoleplayer].mo);
}
}
else if (drawmode == DM_OFFSCREEN)
@ -1161,6 +1164,8 @@ void HWDrawInfo::DrawScene(int drawmode, FRenderState& state)
RenderScene(state);
screen->UpdateLinearDepthTexture();
if (applySSAO && state.GetPassType() == GBUFFER_PASS)
{
screen->AmbientOccludeScene(VPUniforms.mProjectionMatrix.get()[5]);