mirror of
https://github.com/ZDoom/raze-gles.git
synced 2024-12-25 03:00:46 +00:00
Don't do interpolations if they're already being done. This would cause problems when using showview inside EVENT_DISPLAYROOMS.
git-svn-id: https://svn.eduke32.com/eduke32@1531 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
parent
256c729910
commit
53691113d4
3 changed files with 13 additions and 0 deletions
|
@ -66,6 +66,11 @@ void G_DoInterpolations(int32_t smoothratio) //Stick at beginning of draws
|
||||||
{
|
{
|
||||||
int32_t i=g_numInterpolations-1, j = 0, odelta, ndelta = 0;
|
int32_t i=g_numInterpolations-1, j = 0, odelta, ndelta = 0;
|
||||||
|
|
||||||
|
if (g_interpolationLock++)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
for (; i>=0; i--)
|
for (; i>=0; i--)
|
||||||
{
|
{
|
||||||
bakipos[i] = *curipos[i];
|
bakipos[i] = *curipos[i];
|
||||||
|
@ -79,6 +84,12 @@ void G_DoInterpolations(int32_t smoothratio) //Stick at beginning of draws
|
||||||
inline void G_RestoreInterpolations(void) //Stick at end of drawscreen
|
inline void G_RestoreInterpolations(void) //Stick at end of drawscreen
|
||||||
{
|
{
|
||||||
int32_t i=g_numInterpolations-1;
|
int32_t i=g_numInterpolations-1;
|
||||||
|
|
||||||
|
if (--g_interpolationLock)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
for (; i>=0; i--) *curipos[i] = bakipos[i];
|
for (; i>=0; i--) *curipos[i] = bakipos[i];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -699,6 +699,7 @@ extern int32_t everyothertime;
|
||||||
extern int32_t mymaxlag, otherminlag, bufferjitter;
|
extern int32_t mymaxlag, otherminlag, bufferjitter;
|
||||||
|
|
||||||
extern int32_t g_numInterpolations, startofdynamicinterpolations;
|
extern int32_t g_numInterpolations, startofdynamicinterpolations;
|
||||||
|
extern int32_t g_interpolationLock;
|
||||||
extern int32_t oldipos[MAXINTERPOLATIONS];
|
extern int32_t oldipos[MAXINTERPOLATIONS];
|
||||||
extern int32_t bakipos[MAXINTERPOLATIONS];
|
extern int32_t bakipos[MAXINTERPOLATIONS];
|
||||||
extern int32_t *curipos[MAXINTERPOLATIONS];
|
extern int32_t *curipos[MAXINTERPOLATIONS];
|
||||||
|
|
|
@ -172,6 +172,7 @@ int32_t mymaxlag, otherminlag, bufferjitter = 1;
|
||||||
int16_t g_numClouds,clouds[128],cloudx[128],cloudy[128];
|
int16_t g_numClouds,clouds[128],cloudx[128],cloudy[128];
|
||||||
int32_t cloudtotalclock = 0,totalmemory = 0;
|
int32_t cloudtotalclock = 0,totalmemory = 0;
|
||||||
int32_t g_numInterpolations = 0, startofdynamicinterpolations = 0;
|
int32_t g_numInterpolations = 0, startofdynamicinterpolations = 0;
|
||||||
|
int32_t g_interpolationLock = 0;
|
||||||
int32_t oldipos[MAXINTERPOLATIONS];
|
int32_t oldipos[MAXINTERPOLATIONS];
|
||||||
int32_t bakipos[MAXINTERPOLATIONS];
|
int32_t bakipos[MAXINTERPOLATIONS];
|
||||||
int32_t *curipos[MAXINTERPOLATIONS];
|
int32_t *curipos[MAXINTERPOLATIONS];
|
||||||
|
|
Loading…
Reference in a new issue