mirror of
https://github.com/ZDoom/qzdoom.git
synced 2024-11-13 07:57:58 +00:00
- fixed math imprecisions in horizon vertex generation.
Floats are not precise enough to be used as a loop counter.
This commit is contained in:
parent
1c3d4b46c6
commit
1eb1d8d280
1 changed files with 4 additions and 2 deletions
|
@ -343,10 +343,12 @@ GLHorizonPortal::GLHorizonPortal(FPortalSceneState *s, GLHorizonInfo * pt, FRend
|
||||||
// Draw to some far away boundary
|
// Draw to some far away boundary
|
||||||
// This is not drawn as larger strips because it causes visual glitches.
|
// This is not drawn as larger strips because it causes visual glitches.
|
||||||
FFlatVertex *ptr = GLRenderer->mVBO->GetBuffer();
|
FFlatVertex *ptr = GLRenderer->mVBO->GetBuffer();
|
||||||
for (float x = -32768 + vx; x<32768 + vx; x += 4096)
|
for (int xx = -32768; xx < 32768; xx += 4096)
|
||||||
{
|
{
|
||||||
for (float y = -32768 + vy; y<32768 + vy; y += 4096)
|
float x = xx + vx;
|
||||||
|
for (int yy = -32768; yy < 32768; yy += 4096)
|
||||||
{
|
{
|
||||||
|
float y = yy + vy;
|
||||||
ptr->Set(x, z, y, x / 64, -y / 64);
|
ptr->Set(x, z, y, x / 64, -y / 64);
|
||||||
ptr++;
|
ptr++;
|
||||||
ptr->Set(x + 4096, z, y, x / 64 + 64, -y / 64);
|
ptr->Set(x + 4096, z, y, x / 64 + 64, -y / 64);
|
||||||
|
|
Loading…
Reference in a new issue