diff --git a/direct/src/showbase/ShowBase.py b/direct/src/showbase/ShowBase.py index 23b1554ecd..a76645c997 100644 --- a/direct/src/showbase/ShowBase.py +++ b/direct/src/showbase/ShowBase.py @@ -2512,6 +2512,8 @@ class ShowBase(DirectObject.DirectObject): rig.reparentTo(camera) self.graphicsEngine.openWindows() self.graphicsEngine.renderFrame() + self.graphicsEngine.renderFrame() + self.graphicsEngine.syncFrame() tex = buffer.getTexture() saved = self.screenshot(namePrefix = namePrefix, @@ -2602,6 +2604,7 @@ class ShowBase(DirectObject.DirectObject): # One more frame for luck. self.graphicsEngine.renderFrame() + self.graphicsEngine.syncFrame() saved = self.screenshot(namePrefix = namePrefix, defaultFilename = defaultFilename, diff --git a/panda/src/glstuff/glGraphicsStateGuardian_src.I b/panda/src/glstuff/glGraphicsStateGuardian_src.I index 636a80864c..b01aa417ec 100644 --- a/panda/src/glstuff/glGraphicsStateGuardian_src.I +++ b/panda/src/glstuff/glGraphicsStateGuardian_src.I @@ -624,10 +624,10 @@ INLINE void CLP(GraphicsStateGuardian):: set_color_write_mask(int mask) { if (gl_color_mask && _active_color_write_mask != mask) { _active_color_write_mask = mask; - glColorMask((_color_write_mask & ColorWriteAttrib::C_red) != 0, - (_color_write_mask & ColorWriteAttrib::C_green) != 0, - (_color_write_mask & ColorWriteAttrib::C_blue) != 0, - (_color_write_mask & ColorWriteAttrib::C_alpha) != 0); + glColorMask((mask & ColorWriteAttrib::C_red) != 0, + (mask & ColorWriteAttrib::C_green) != 0, + (mask & ColorWriteAttrib::C_blue) != 0, + (mask & ColorWriteAttrib::C_alpha) != 0); } }