From 6a663e9d53912a85c9a5faebbaa31255b508cfcc Mon Sep 17 00:00:00 2001 From: Spoike Date: Sat, 16 Jul 2016 14:24:06 +0000 Subject: [PATCH] fix player skins using a cached skin if one is invalid. fix corona occlusion queries getting messed up by water effects. git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5004 fc73d0e0-1445-4013-8a0c-d673dee63da5 --- engine/gl/gl_alias.c | 2 +- engine/gl/gl_rlight.c | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/engine/gl/gl_alias.c b/engine/gl/gl_alias.c index d7c56df7..54e7e891 100644 --- a/engine/gl/gl_alias.c +++ b/engine/gl/gl_alias.c @@ -627,7 +627,7 @@ static shader_t *GL_ChooseSkin(galiasinfo_t *inf, model_t *model, int surfnum, e else plskin = NULL; - if (plskin && plskin->loadstate != SKIN_LOADED) + if (plskin && plskin->loadstate < SKIN_LOADED) { Skin_Cache8(plskin); //we're not going to use it, but make sure its status is updated when it is finally loaded.. plskin = cl.players[e->playerindex].lastskin; diff --git a/engine/gl/gl_rlight.c b/engine/gl/gl_rlight.c index 9df0b58f..46f549b6 100644 --- a/engine/gl/gl_rlight.c +++ b/engine/gl/gl_rlight.c @@ -474,7 +474,9 @@ void R_RenderDlights (void) { GLuint res; qboolean requery = true; - if (l->coronaocclusionquery) + if (r_refdef.recurse) + requery = false; + else if (l->coronaocclusionquery) { qglGetQueryObjectuivARB(l->coronaocclusionquery, GL_QUERY_RESULT_AVAILABLE_ARB, &res); if (res)