Use a const for the contrast, and double it for extra impact.

This commit is contained in:
Sryder 2020-05-21 17:55:33 +01:00
parent 195920acdc
commit 8d34ca0533

View file

@ -452,15 +452,16 @@ static inline float P_SegLengthFloat(seg_t *seg)
*/
void P_UpdateSegLightOffset(seg_t *li)
{
const UINT8 contrast = 16;
fixed_t extralight = 0;
extralight = -(8*FRACUNIT) +
extralight = -((fixed_t)contrast*FRACUNIT) +
FixedDiv(AngleFixed(R_PointToAngle2(0, 0,
abs(li->v1->x - li->v2->x),
abs(li->v1->y - li->v2->y))), 90*FRACUNIT) * 16;
abs(li->v1->y - li->v2->y))), 90*FRACUNIT) * ((fixed_t)contrast * 2);
// Between -1 and 1 for software, -8 and 8 for hardware
li->lightOffset = FixedFloor((extralight / 8) + (FRACUNIT / 2)) / FRACUNIT;
// Between -2 and 2 for software, -16 and 16 for hardware
li->lightOffset = FixedFloor((extralight / contrast) + (FRACUNIT / 2)) / FRACUNIT;
#ifdef HWRENDER
li->hwLightOffset = FixedFloor(extralight + (FRACUNIT / 2)) / FRACUNIT;
#endif
@ -477,7 +478,6 @@ static void P_LoadRawSegs(UINT8 *data, size_t i)
mapseg_t *ml;
seg_t *li;
line_t *ldef;
fixed_t extralight = 0;
numsegs = i / sizeof (mapseg_t);
if (numsegs <= 0)