Removed all attempts to stop the sprite from appearing in portals. This may likely require a fundamental breakdown of the system itself in order to address the problem.

This commit is contained in:
Major Cooke 2021-12-06 02:13:40 -06:00 committed by Rachael Alexanderson
commit 046799db68
4 changed files with 2 additions and 69 deletions

View file

@ -734,12 +734,6 @@ void HWSprite::Process(HWDrawInfo *di, AActor* thing, sector_t * sector, area_t
DVector3 thingorigin = thing->Pos();
if (thruportal == 1) thingorigin += di->Level->Displacements.getOffset(thing->Sector->PortalGroup, sector->PortalGroup);
if (fabs(thingorigin.X - vp.ActorPos.X) < 2 && fabs(thingorigin.Y - vp.ActorPos.Y) < 2) return;
// Try to do an inverted trace to get to the camera's body. This way, we know exactly behind which line to disable.
// Currently doesn't work.
FViewPosition *vpos = camera->ViewPos;
if (vpos && vpos->TraceBack(camera))
return;
}
// Thing is invisible if close to the camera.
if (thing->renderflags & RF_MAYBEINVISIBLE)

View file

@ -794,7 +794,6 @@ void R_SetupFrame (FRenderViewpoint &viewpoint, FViewWindow &viewwindow, AActor
{
AActor *mo = viewpoint.camera;
FViewPosition *VP = mo->ViewPos;
if (VP) VP->ResetTraceInfo();
const DVector3 orig = { mo->Pos().XY(), mo->player ? mo->player->viewz : mo->Z() + mo->GetCameraHeight() };
viewpoint.ActorPos = orig;
@ -879,10 +878,6 @@ void R_SetupFrame (FRenderViewpoint &viewpoint, FViewWindow &viewwindow, AActor
DefaultDraw = false;
viewpoint.NoPortalPath = true;
P_AdjustViewPos(mo, orig, next, viewpoint.sector, unlinked, VP);
VP->PlrPos = orig;
VP->CamPos = next;
VP->CamSec = viewpoint.sector;
if (viewpoint.sector->PortalGroup != oldsector->PortalGroup || (unlinked && ((iview->New.Pos.XY() - iview->Old.Pos.XY()).LengthSquared()) > 256 * 256))
{