mirror of
https://git.do.srb2.org/STJr/SRB2.git
synced 2024-11-25 22:01:01 +00:00
Merge branch 'floorspriteslope-interp-disable' into 'next'
Disable floor splat slope interpolation See merge request STJr/SRB2!1934
This commit is contained in:
commit
404492cb30
2 changed files with 11 additions and 10 deletions
|
@ -4102,7 +4102,7 @@ static void HWR_DrawSprite(gl_vissprite_t *spr)
|
||||||
scale *= spr->shadowscale;
|
scale *= spr->shadowscale;
|
||||||
|
|
||||||
if (spr->rotateflags & SRF_3D || renderflags & RF_NOSPLATBILLBOARD)
|
if (spr->rotateflags & SRF_3D || renderflags & RF_NOSPLATBILLBOARD)
|
||||||
angle = spr->angle;
|
angle = spr->mobj->angle;
|
||||||
else
|
else
|
||||||
angle = viewangle;
|
angle = viewangle;
|
||||||
|
|
||||||
|
@ -4157,8 +4157,8 @@ static void HWR_DrawSprite(gl_vissprite_t *spr)
|
||||||
// Translate
|
// Translate
|
||||||
for (i = 0; i < 4; i++)
|
for (i = 0; i < 4; i++)
|
||||||
{
|
{
|
||||||
wallVerts[i].x = rotated[i].x + spr->x1;
|
wallVerts[i].x = rotated[i].x + FIXED_TO_FLOAT(spr->mobj->x);
|
||||||
wallVerts[i].z = rotated[i].y + spr->z1;
|
wallVerts[i].z = rotated[i].y + FIXED_TO_FLOAT(spr->mobj->y);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (renderflags & (RF_SLOPESPLAT | RF_OBJECTSLOPESPLAT))
|
if (renderflags & (RF_SLOPESPLAT | RF_OBJECTSLOPESPLAT))
|
||||||
|
|
|
@ -11,6 +11,7 @@
|
||||||
/// \brief Floor splats
|
/// \brief Floor splats
|
||||||
|
|
||||||
#include "r_draw.h"
|
#include "r_draw.h"
|
||||||
|
#include "r_fps.h"
|
||||||
#include "r_main.h"
|
#include "r_main.h"
|
||||||
#include "r_splats.h"
|
#include "r_splats.h"
|
||||||
#include "r_bsp.h"
|
#include "r_bsp.h"
|
||||||
|
@ -185,7 +186,7 @@ void R_DrawFloorSplat(vissprite_t *spr)
|
||||||
splat.scale = FixedMul(splat.scale, ((skin_t *)mobj->skin)->highresscale);
|
splat.scale = FixedMul(splat.scale, ((skin_t *)mobj->skin)->highresscale);
|
||||||
|
|
||||||
if (spr->rotateflags & SRF_3D || renderflags & RF_NOSPLATBILLBOARD)
|
if (spr->rotateflags & SRF_3D || renderflags & RF_NOSPLATBILLBOARD)
|
||||||
splatangle = spr->centerangle;
|
splatangle = mobj->angle;
|
||||||
else
|
else
|
||||||
splatangle = spr->viewpoint.angle;
|
splatangle = spr->viewpoint.angle;
|
||||||
|
|
||||||
|
@ -209,8 +210,8 @@ void R_DrawFloorSplat(vissprite_t *spr)
|
||||||
xoffset = FixedMul(leftoffset, splat.xscale);
|
xoffset = FixedMul(leftoffset, splat.xscale);
|
||||||
yoffset = FixedMul(topoffset, splat.yscale);
|
yoffset = FixedMul(topoffset, splat.yscale);
|
||||||
|
|
||||||
x = spr->gx;
|
x = mobj->x;
|
||||||
y = spr->gy;
|
y = mobj->y;
|
||||||
w = (splat.width * splat.xscale);
|
w = (splat.width * splat.xscale);
|
||||||
h = (splat.height * splat.yscale);
|
h = (splat.height * splat.yscale);
|
||||||
|
|
||||||
|
@ -263,8 +264,8 @@ void R_DrawFloorSplat(vissprite_t *spr)
|
||||||
// Translate
|
// Translate
|
||||||
for (i = 0; i < 4; i++)
|
for (i = 0; i < 4; i++)
|
||||||
{
|
{
|
||||||
tr_x = rotated[i].x + x;
|
tr_x = rotated[i].x + mobj->x;
|
||||||
tr_y = rotated[i].y + y;
|
tr_y = rotated[i].y + mobj->y;
|
||||||
|
|
||||||
if (splat.slope)
|
if (splat.slope)
|
||||||
{
|
{
|
||||||
|
@ -292,8 +293,8 @@ void R_DrawFloorSplat(vissprite_t *spr)
|
||||||
tr_y = v3d->y - spr->viewpoint.y;
|
tr_y = v3d->y - spr->viewpoint.y;
|
||||||
|
|
||||||
// rotation around vertical y axis
|
// rotation around vertical y axis
|
||||||
rot_x = FixedMul(tr_x, sa) - FixedMul(tr_y, ca);
|
rot_x = FixedMul(tr_x - (mobj->x - x), sa) - FixedMul(tr_y - (mobj->y - y), ca);
|
||||||
rot_y = FixedMul(tr_x, ca) + FixedMul(tr_y, sa);
|
rot_y = FixedMul(tr_x - (mobj->x - x), ca) + FixedMul(tr_y - (mobj->y - y), sa);
|
||||||
rot_z = v3d->z - spr->viewpoint.z;
|
rot_z = v3d->z - spr->viewpoint.z;
|
||||||
|
|
||||||
if (rot_y < FRACUNIT)
|
if (rot_y < FRACUNIT)
|
||||||
|
|
Loading…
Reference in a new issue