mirror of
https://github.com/ZDoom/raze-gles.git
synced 2025-01-16 12:40:38 +00:00
- call renderSetRollAngle()
with full precision for Duke.
This commit is contained in:
parent
0d0636b0a7
commit
9fe3af370b
1 changed files with 2 additions and 4 deletions
|
@ -537,12 +537,10 @@ void displayrooms(int snum, int smoothratio)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!synchronized_input)
|
if (!synchronized_input)
|
||||||
renderSetRollAngle(p->getrotscrnang());
|
renderSetRollAngle(p->q16rotscrnang / (float)(FRACUNIT));
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// The fixed point fuckery at play here means we cannot do the interpolation at full precision.
|
renderSetRollAngle((p->oq16rotscrnang + mulscale16(((p->q16rotscrnang - p->oq16rotscrnang + (1024 << FRACBITS)) & 0x7FFFFFF) - (1024 << FRACBITS), smoothratio)) / (float)(FRACUNIT));
|
||||||
auto oa = p->oq16rotscrnang >> FRACBITS;
|
|
||||||
renderSetRollAngle(oa + mulscale16(((p->getrotscrnang() - oa + 1024) & 2047) - 1024, smoothratio));
|
|
||||||
p->oq16rotscrnang = p->q16rotscrnang; // JBF: save it for next time
|
p->oq16rotscrnang = p->q16rotscrnang; // JBF: save it for next time
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue