- fixed dynamic light profiling counters.

The draw counters were never incremented and this should be reset only once per scene, not once per viewpoint.
This commit is contained in:
Christoph Oelckers 2018-10-29 10:36:48 +01:00
parent 361bb688c8
commit 8a0596893b
5 changed files with 5 additions and 4 deletions

View file

@ -229,6 +229,8 @@ sector_t *FGLRenderer::RenderView(player_t* player)
} }
else else
{ {
iter_dlightf = iter_dlight = draw_dlight = draw_dlightf = 0;
checkBenchActive(); checkBenchActive();
// reset statistics counters // reset statistics counters

View file

@ -148,7 +148,6 @@ void FDrawInfo::DrawScene(int drawmode)
void FDrawInfo::ProcessScene(bool toscreen) void FDrawInfo::ProcessScene(bool toscreen)
{ {
iter_dlightf = iter_dlight = draw_dlight = draw_dlightf = 0;
screen->mPortalState->BeginScene(); screen->mPortalState->BeginScene();
int mapsection = R_PointInSubsector(Viewpoint.Pos)->mapsection; int mapsection = R_PointInSubsector(Viewpoint.Pos)->mapsection;

View file

@ -167,7 +167,7 @@ void GLFlat::SetupLights(HWDrawInfo *di, FLightNode * node, FDynLightData &light
} }
p.Set(plane.plane.Normal(), plane.plane.fD()); p.Set(plane.plane.Normal(), plane.plane.fD());
lightdata.GetLight(portalgroup, p, light, false); draw_dlightf += lightdata.GetLight(portalgroup, p, light, false);
node = node->nextLight; node = node->nextLight;
} }

View file

@ -69,7 +69,7 @@ int HWDrawInfo::SetupLightsForOtherPlane(subsector_t * sub, FDynLightData &light
iter_dlightf++; iter_dlightf++;
p.Set(plane->Normal(), plane->fD()); p.Set(plane->Normal(), plane->fD());
lightdata.GetLight(sub->sector->PortalGroup, p, light, true); draw_dlightf += lightdata.GetLight(sub->sector->PortalGroup, p, light, true);
node = node->nextLight; node = node->nextLight;
} }

View file

@ -354,7 +354,7 @@ void GLWall::SetupLights(HWDrawInfo *di, FDynLightData &lightdata)
} }
if (outcnt[0]!=4 && outcnt[1]!=4 && outcnt[2]!=4 && outcnt[3]!=4) if (outcnt[0]!=4 && outcnt[1]!=4 && outcnt[2]!=4 && outcnt[3]!=4)
{ {
lightdata.GetLight(seg->frontsector->PortalGroup, p, node->lightsource, true); draw_dlight += lightdata.GetLight(seg->frontsector->PortalGroup, p, node->lightsource, true);
} }
} }
} }