From 86859ad3827bcdb2f36110a5fb6b5e330e2bfd5f Mon Sep 17 00:00:00 2001 From: Saran Tunyasuvunakool Date: Thu, 12 Oct 2023 09:58:07 -0700 Subject: [PATCH] Restore shadows when flex is present. PiperOrigin-RevId: 572936749 Change-Id: I57f8d486810767422bc2874433497eb5073bf63b --- src/render/render_gl3.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/render/render_gl3.c b/src/render/render_gl3.c index affc295c..17ff239f 100644 --- a/src/render/render_gl3.c +++ b/src/render/render_gl3.c @@ -413,8 +413,10 @@ static void renderGeom(const mjvGeom* geom, int mode, const float* headpos, break; case mjGEOM_FLEX: // flex + { // no texture for vertices and edges - if (glIsEnabled(GL_TEXTURE_2D)) { + GLboolean texture_is_enabled = glIsEnabled(GL_TEXTURE_2D); + if (texture_is_enabled == GL_TRUE) { glDisable(GL_TEXTURE_2D); } @@ -468,7 +470,7 @@ static void renderGeom(const mjvGeom* geom, int mode, const float* headpos, } // restore texture for faces - if (glIsEnabled(GL_TEXTURE_2D)) { + if (texture_is_enabled == GL_TRUE) { glEnable(GL_TEXTURE_2D); } @@ -490,6 +492,7 @@ static void renderGeom(const mjvGeom* geom, int mode, const float* headpos, } } break; + } case mjGEOM_SKIN: // skin // vertex positions