From 65d6b04fd283a76bc505b1aab81abe3583038ea3 Mon Sep 17 00:00:00 2001
From: Monster Iestyn <iestynjealous@ntlworld.com>
Date: Tue, 19 May 2020 18:54:39 +0100
Subject: [PATCH] change limits for tx based on fov, by multiplying by fovtan

this makes it so that higher fov values can actually let you see all the sprites that should be in the view
---
 src/r_things.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/r_things.c b/src/r_things.c
index 6bdb7cae8c..a29fb6cb7d 100644
--- a/src/r_things.c
+++ b/src/r_things.c
@@ -1407,7 +1407,7 @@ static void R_ProjectSprite(mobj_t *thing)
 	basetx = tx = FixedMul(tr_x, viewsin) - FixedMul(tr_y, viewcos); // sideways distance
 
 	// too far off the side?
-	if (!papersprite && abs(tx) > tz<<2) // papersprite clipping is handled later
+	if (!papersprite && abs(tx) > FixedMul(tz, fovtan)<<2) // papersprite clipping is handled later
 		return;
 
 	// aspect ratio stuff
@@ -1600,7 +1600,7 @@ static void R_ProjectSprite(mobj_t *thing)
 			xscale2 = FixedDiv(projection, tz2);
 		}
 
-		if (tx2 < -(tz2<<2) || tx > tz<<2) // too far off the side?
+		if (tx2 < -(FixedMul(tz2, fovtan)<<2) || tx > FixedMul(tz, fovtan)<<2) // too far off the side?
 			return;
 
 		// TODO: tx clamping
-- 
GitLab