mirror of
https://github.com/ZDoom/Raze.git
synced 2025-06-04 11:11:04 +00:00
- use the smooth ratio from the game logic in the renderer instead of calling I_GetTimeFrac again.
Unlike the higher level code this does not check for game over conditions.
This commit is contained in:
parent
2b1072eb91
commit
f83e678ea0
6 changed files with 7 additions and 7 deletions
|
@ -275,7 +275,7 @@ static void CheckTimer(FRenderState &state, uint64_t ShaderStartTime)
|
||||||
|
|
||||||
void animatecamsprite(double s);
|
void animatecamsprite(double s);
|
||||||
|
|
||||||
void render_drawrooms(spritetype* playersprite, const vec3_t& position, int sectnum, binangle angle, fixedhoriz horizon, binangle rollang)
|
void render_drawrooms(spritetype* playersprite, const vec3_t& position, int sectnum, binangle angle, fixedhoriz horizon, binangle rollang, double smoothratio)
|
||||||
{
|
{
|
||||||
checkRotatedWalls();
|
checkRotatedWalls();
|
||||||
|
|
||||||
|
@ -295,7 +295,7 @@ void render_drawrooms(spritetype* playersprite, const vec3_t& position, int sect
|
||||||
// Get this before everything else
|
// Get this before everything else
|
||||||
FRenderViewpoint r_viewpoint = SetupViewpoint(playersprite, position, sectnum, angle, horizon, rollang);
|
FRenderViewpoint r_viewpoint = SetupViewpoint(playersprite, position, sectnum, angle, horizon, rollang);
|
||||||
if (cl_capfps) r_viewpoint.TicFrac = 1.;
|
if (cl_capfps) r_viewpoint.TicFrac = 1.;
|
||||||
else r_viewpoint.TicFrac = I_GetTimeFrac();
|
else r_viewpoint.TicFrac = smoothratio * (1/65536.);
|
||||||
|
|
||||||
screen->mLights->Clear();
|
screen->mLights->Clear();
|
||||||
screen->mViewpoints->Clear();
|
screen->mViewpoints->Clear();
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
class FSerializer;
|
class FSerializer;
|
||||||
struct IntRect;
|
struct IntRect;
|
||||||
|
|
||||||
void render_drawrooms(spritetype* playersprite, const vec3_t& position, int sectnum, binangle angle, fixedhoriz horizon, binangle rollang);
|
void render_drawrooms(spritetype* playersprite, const vec3_t& position, int sectnum, binangle angle, fixedhoriz horizon, binangle rollang, double smoothratio);
|
||||||
void render_camtex(spritetype* playersprite, const vec3_t& position, int sectnum, binangle angle, fixedhoriz horizon, binangle rollang, FGameTexture* camtex, IntRect& rect, double smoothratio);
|
void render_camtex(spritetype* playersprite, const vec3_t& position, int sectnum, binangle angle, fixedhoriz horizon, binangle rollang, FGameTexture* camtex, IntRect& rect, double smoothratio);
|
||||||
|
|
||||||
struct PortalDesc
|
struct PortalDesc
|
||||||
|
|
|
@ -772,7 +772,7 @@ void viewDrawScreen(bool sceneonly)
|
||||||
fixedhoriz deliriumPitchI = q16horiz(interpolatedvalue(IntToFixed(deliriumPitchO), IntToFixed(deliriumPitch), gInterpolate));
|
fixedhoriz deliriumPitchI = q16horiz(interpolatedvalue(IntToFixed(deliriumPitchO), IntToFixed(deliriumPitch), gInterpolate));
|
||||||
int bakCstat = gView->pSprite->cstat;
|
int bakCstat = gView->pSprite->cstat;
|
||||||
gView->pSprite->cstat |= (gViewPos == 0) ? CSTAT_SPRITE_INVISIBLE : CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_TRANSLUCENT_INVERT;
|
gView->pSprite->cstat |= (gViewPos == 0) ? CSTAT_SPRITE_INVISIBLE : CSTAT_SPRITE_TRANSLUCENT | CSTAT_SPRITE_TRANSLUCENT_INVERT;
|
||||||
render_drawrooms(gView->pSprite, { cX, cY, cZ }, nSectnum, cA, cH + deliriumPitchI, rotscrnang);
|
render_drawrooms(gView->pSprite, { cX, cY, cZ }, nSectnum, cA, cH + deliriumPitchI, rotscrnang, gInterpolate);
|
||||||
gView->pSprite->cstat = bakCstat;
|
gView->pSprite->cstat = bakCstat;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
|
@ -83,7 +83,7 @@ void renderView(spritetype* playersprite, int sectnum, int x, int y, int z, bina
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
render_drawrooms(playersprite, { x, y, z }, sectnum, a, h, rotscrnang);
|
render_drawrooms(playersprite, { x, y, z }, sectnum, a, h, rotscrnang, smoothratio);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -367,7 +367,7 @@ void DrawView(double smoothRatio, bool sceneonly)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
render_drawrooms(nullptr, { nCamerax, nCameray, viewz }, nSector, nCameraa, nCamerapan, rotscrnang);
|
render_drawrooms(nullptr, { nCamerax, nCameray, viewz }, nSector, nCameraa, nCamerapan, rotscrnang, smoothRatio);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (HavePLURemap())
|
if (HavePLURemap())
|
||||||
|
|
|
@ -1615,7 +1615,7 @@ drawscreen(PLAYERp pp, double smoothratio)
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
UpdateWallPortalState();
|
UpdateWallPortalState();
|
||||||
render_drawrooms(pp->SpriteP, { tx, ty, tz }, tsectnum, tang, thoriz, trotscrnang);
|
render_drawrooms(pp->SpriteP, { tx, ty, tz }, tsectnum, tang, thoriz, trotscrnang, smoothratio);
|
||||||
RestorePortalState();
|
RestorePortalState();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue