From 6779c508e743054cccab0de8c883ef3d70c773f8 Mon Sep 17 00:00:00 2001 From: Jaime Passos <lazymyuutsu@gmail.com> Date: Mon, 23 Dec 2019 12:17:39 -0300 Subject: [PATCH] Satisfy rollangle table with a 3deg angle --- src/r_patch.c | 3 +-- src/r_things.c | 8 +++++--- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/r_patch.c b/src/r_patch.c index 7c9d0ea83..69d5ad1a2 100644 --- a/src/r_patch.c +++ b/src/r_patch.c @@ -1180,8 +1180,7 @@ void R_CacheRotSprite(spritenum_t sprnum, UINT8 frame, spriteinfo_t *sprinfo, sp leftoffset = width - leftoffset; } - // Don't cache angle = 0 - for (angle = 1; angle < ROTANGLES; angle++) + for (angle = 0; angle < ROTANGLES; angle++) { INT32 newwidth, newheight; diff --git a/src/r_things.c b/src/r_things.c index aa2a73515..d29baa711 100644 --- a/src/r_things.c +++ b/src/r_things.c @@ -500,7 +500,7 @@ void R_InitSprites(void) { size_t i; #ifdef ROTSPRITE - INT32 angle, realangle = 0; + INT32 angle, ra; float fa; #endif @@ -510,10 +510,12 @@ void R_InitSprites(void) #ifdef ROTSPRITE for (angle = 0; angle < ROTANGLES; angle++) { - fa = ANG2RAD(FixedAngle(realangle<<FRACBITS)); + ra = (ROTANGDIFF * angle); + if (!ra) + ra = (ROTANGDIFF / 2) + 1; + fa = ANG2RAD(FixedAngle(ra<<FRACBITS)); cosang2rad[angle] = FLOAT_TO_FIXED(cos(-fa)); sinang2rad[angle] = FLOAT_TO_FIXED(sin(-fa)); - realangle += ROTANGDIFF; } #endif -- GitLab