--- a/src/MacSrc/OpenGL.cc +++ b/src/MacSrc/OpenGL.cc @@ -566,7 +566,11 @@ glDisableVertexAttribArray(0); glDisableVertexAttribArray(tcAttrib); glDisableVertexAttribArray(lightAttrib); - glFlush(); + // glFinish(), not glFlush(): xr_swapchain_release() (called by our + // caller right after this returns) hands the image to the OpenXR + // runtime for cross-process consumption, which requires the GPU write + // to have actually landed, not just be queued. + glFinish(); SDL_FreeSurface(uiRgba); }