GL: Don't pull papersprites towards camera

This commit is contained in:
AJ Martinez 2024-02-13 18:19:52 -07:00
parent 796e2b9517
commit 77617c9d31
3 changed files with 6 additions and 2 deletions

View file

@ -143,6 +143,7 @@ enum
SHADER_FLOOR, SHADER_FLOOR,
SHADER_WALL, SHADER_WALL,
SHADER_SPRITE, SHADER_SPRITE,
SHADER_SPRITECLIPHACK,
SHADER_MODEL, SHADER_MODEL_LIGHTING, SHADER_MODEL, SHADER_MODEL_LIGHTING,
SHADER_WATER, SHADER_WATER,
SHADER_FOG, SHADER_FOG,

View file

@ -3423,7 +3423,7 @@ static void HWR_SplitSprite(gl_vissprite_t *spr)
if (HWR_UseShader()) if (HWR_UseShader())
{ {
shader = SHADER_SPRITE; shader = (spr->mobj->frame & FF_PAPERSPRITE) ? SHADER_SPRITE : SHADER_SPRITECLIPHACK;
blend |= PF_ColorMapped; blend |= PF_ColorMapped;
} }
@ -3916,7 +3916,7 @@ static void HWR_DrawSprite(gl_vissprite_t *spr)
if (HWR_UseShader()) if (HWR_UseShader())
{ {
shader = SHADER_SPRITE; shader = (spr->mobj->frame & FF_PAPERSPRITE) ? SHADER_SPRITE : SHADER_SPRITECLIPHACK;;
blend |= PF_ColorMapped; blend |= PF_ColorMapped;
} }

View file

@ -922,6 +922,9 @@ static struct {
{GLSL_DEFAULT_VERTEX_SHADER, GLSL_SOFTWARE_FRAGMENT_SHADER}, {GLSL_DEFAULT_VERTEX_SHADER, GLSL_SOFTWARE_FRAGMENT_SHADER},
// Sprite shader // Sprite shader
{GLSL_DEFAULT_VERTEX_SHADER, GLSL_SOFTWARE_FRAGMENT_SHADER},
// Sprite clipping hack shader (for pulling things out of the floor)
{GLSL_SPRITECLIP_HACK_VERTEX_SHADER, GLSL_SOFTWARE_FRAGMENT_SHADER}, {GLSL_SPRITECLIP_HACK_VERTEX_SHADER, GLSL_SOFTWARE_FRAGMENT_SHADER},
// Model shader // Model shader