|
|
|
@ -28,7 +28,7 @@
|
|
|
|
|
#include "../p_local.h"
|
|
|
|
|
#include "../p_setup.h"
|
|
|
|
|
#include "../r_local.h"
|
|
|
|
|
#include "../r_bsp.h"
|
|
|
|
|
#include "../r_bsp.h" // R_NoEncore
|
|
|
|
|
#include "../r_main.h" // cv_fov
|
|
|
|
|
#include "../d_clisrv.h"
|
|
|
|
|
#include "../w_wad.h"
|
|
|
|
@ -416,7 +416,7 @@ void HWR_RenderPlane(extrasubsector_t *xsub, boolean isceiling, fixed_t fixedhei
|
|
|
|
|
if (angle) // Only needs to be done if there's an altered angle
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
angle = InvAngle(angle)>>ANGLETOFINESHIFT;
|
|
|
|
|
angle = (InvAngle(angle)+ANGLE_180)>>ANGLETOFINESHIFT;
|
|
|
|
|
|
|
|
|
|
// This needs to be done so that it scrolls in a different direction after rotation like software
|
|
|
|
|
/*tempxsow = FLOAT_TO_FIXED(scrollx);
|
|
|
|
@ -1492,7 +1492,7 @@ void HWR_ProcessSeg(void) // Sort of like GLWall::Process in GZDoom
|
|
|
|
|
{
|
|
|
|
|
// Single sided line... Deal only with the middletexture (if one exists)
|
|
|
|
|
gr_midtexture = R_GetTextureNum(gr_sidedef->midtexture);
|
|
|
|
|
if (gr_midtexture)
|
|
|
|
|
if (gr_midtexture && gr_linedef->special != 41) // (Ignore horizon line for OGL)
|
|
|
|
|
{
|
|
|
|
|
{
|
|
|
|
|
fixed_t texturevpeg;
|
|
|
|
@ -2305,7 +2305,7 @@ void HWR_AddPolyObjectPlanes(void)
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
HWR_GetFlat(levelflats[polyobjsector->floorpic].lumpnum);
|
|
|
|
|
HWR_GetFlat(levelflats[polyobjsector->floorpic].lumpnum, R_NoEncore(polyobjsector, false));
|
|
|
|
|
HWR_RenderPolyObjectPlane(po_ptrs[i], false, polyobjsector->floorheight, PF_Occlude,
|
|
|
|
|
polyobjsector->lightlevel, levelflats[polyobjsector->floorpic].lumpnum,
|
|
|
|
|
polyobjsector, 255, NULL);
|
|
|
|
@ -2327,7 +2327,7 @@ void HWR_AddPolyObjectPlanes(void)
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
HWR_GetFlat(levelflats[polyobjsector->ceilingpic].lumpnum);
|
|
|
|
|
HWR_GetFlat(levelflats[polyobjsector->ceilingpic].lumpnum, R_NoEncore(polyobjsector, true));
|
|
|
|
|
HWR_RenderPolyObjectPlane(po_ptrs[i], true, polyobjsector->ceilingheight, PF_Occlude,
|
|
|
|
|
polyobjsector->lightlevel, levelflats[polyobjsector->floorpic].lumpnum,
|
|
|
|
|
polyobjsector, 255, NULL);
|
|
|
|
@ -2463,7 +2463,7 @@ void HWR_Subsector(size_t num)
|
|
|
|
|
{
|
|
|
|
|
if (sub->validcount != validcount)
|
|
|
|
|
{
|
|
|
|
|
HWR_GetFlat(levelflats[gr_frontsector->floorpic].lumpnum);
|
|
|
|
|
HWR_GetFlat(levelflats[gr_frontsector->floorpic].lumpnum, R_NoEncore(gr_frontsector, false));
|
|
|
|
|
HWR_RenderPlane(&extrasubsectors[num], false,
|
|
|
|
|
// Hack to make things continue to work around slopes.
|
|
|
|
|
locFloorHeight == cullFloorHeight ? locFloorHeight : gr_frontsector->floorheight,
|
|
|
|
@ -2479,7 +2479,7 @@ void HWR_Subsector(size_t num)
|
|
|
|
|
{
|
|
|
|
|
if (sub->validcount != validcount)
|
|
|
|
|
{
|
|
|
|
|
HWR_GetFlat(levelflats[gr_frontsector->ceilingpic].lumpnum);
|
|
|
|
|
HWR_GetFlat(levelflats[gr_frontsector->ceilingpic].lumpnum, R_NoEncore(gr_frontsector, true));
|
|
|
|
|
HWR_RenderPlane(&extrasubsectors[num], true,
|
|
|
|
|
// Hack to make things continue to work around slopes.
|
|
|
|
|
locCeilingHeight == cullCeilingHeight ? locCeilingHeight : gr_frontsector->ceilingheight,
|
|
|
|
@ -2551,7 +2551,7 @@ void HWR_Subsector(size_t num)
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
HWR_GetFlat(levelflats[*rover->bottompic].lumpnum);
|
|
|
|
|
HWR_GetFlat(levelflats[*rover->bottompic].lumpnum, R_NoEncore(gr_frontsector, false));
|
|
|
|
|
light = R_GetPlaneLight(gr_frontsector, centerHeight, viewz < cullHeight ? true : false);
|
|
|
|
|
HWR_RenderPlane(&extrasubsectors[num], false, *rover->bottomheight, (rover->flags & FF_RIPPLE ? PF_Ripple : 0)|PF_Occlude, *gr_frontsector->lightlist[light].lightlevel, levelflats[*rover->bottompic].lumpnum,
|
|
|
|
|
rover->master->frontsector, 255, gr_frontsector->lightlist[light].extra_colormap);
|
|
|
|
@ -2606,7 +2606,7 @@ void HWR_Subsector(size_t num)
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
HWR_GetFlat(levelflats[*rover->toppic].lumpnum);
|
|
|
|
|
HWR_GetFlat(levelflats[*rover->toppic].lumpnum, R_NoEncore(gr_frontsector, true));
|
|
|
|
|
light = R_GetPlaneLight(gr_frontsector, centerHeight, viewz < cullHeight ? true : false);
|
|
|
|
|
HWR_RenderPlane(&extrasubsectors[num], true, *rover->topheight, (rover->flags & FF_RIPPLE ? PF_Ripple : 0)|PF_Occlude, *gr_frontsector->lightlist[light].lightlevel, levelflats[*rover->toppic].lumpnum,
|
|
|
|
|
rover->master->frontsector, 255, gr_frontsector->lightlist[light].extra_colormap);
|
|
|
|
@ -3979,7 +3979,7 @@ void HWR_RenderDrawNodes(void)
|
|
|
|
|
gr_frontsector = NULL;
|
|
|
|
|
|
|
|
|
|
if (!(sortnode[sortindex[i]].plane->blend & PF_NoTexture))
|
|
|
|
|
HWR_GetFlat(sortnode[sortindex[i]].plane->lumpnum);
|
|
|
|
|
HWR_GetFlat(sortnode[sortindex[i]].plane->lumpnum, false);
|
|
|
|
|
HWR_RenderPlane(sortnode[sortindex[i]].plane->xsub, sortnode[sortindex[i]].plane->isceiling, sortnode[sortindex[i]].plane->fixedheight, sortnode[sortindex[i]].plane->blend, sortnode[sortindex[i]].plane->lightlevel,
|
|
|
|
|
sortnode[sortindex[i]].plane->lumpnum, sortnode[sortindex[i]].plane->FOFSector, sortnode[sortindex[i]].plane->alpha, /*sortnode[sortindex[i]].plane->fogplane,*/ sortnode[sortindex[i]].plane->planecolormap);
|
|
|
|
|
}
|
|
|
|
@ -3989,7 +3989,7 @@ void HWR_RenderDrawNodes(void)
|
|
|
|
|
gr_frontsector = NULL;
|
|
|
|
|
|
|
|
|
|
if (!(sortnode[sortindex[i]].polyplane->blend & PF_NoTexture))
|
|
|
|
|
HWR_GetFlat(sortnode[sortindex[i]].polyplane->lumpnum);
|
|
|
|
|
HWR_GetFlat(sortnode[sortindex[i]].polyplane->lumpnum, false);
|
|
|
|
|
HWR_RenderPolyObjectPlane(sortnode[sortindex[i]].polyplane->polysector, sortnode[sortindex[i]].polyplane->isceiling, sortnode[sortindex[i]].polyplane->fixedheight, sortnode[sortindex[i]].polyplane->blend, sortnode[sortindex[i]].polyplane->lightlevel,
|
|
|
|
|
sortnode[sortindex[i]].polyplane->lumpnum, sortnode[sortindex[i]].polyplane->FOFSector, sortnode[sortindex[i]].polyplane->alpha, sortnode[sortindex[i]].polyplane->planecolormap);
|
|
|
|
|
}
|
|
|
|
|