[Mesa-dev] [RFC] Haiku viewport / framebuffer invalidation

Alexander von Gluck IV kallisti5 at unixzen.com
Mon Nov 11 09:29:49 PST 2013


I've been banging my head against a wall for a while now on this.

So the Haiku applications that call glViewport(.. for window
resizes,etc never actually execute the Driver's Viewport call.
(aka ctx->Driver.Viewport:
http://cgit.freedesktop.org/mesa/mesa/tree/src/gallium/targets/haiku-softpipe/GalliumContext.cpp#n346)

I found "void GLAPIENTRY _mesa_Viewport" in viewport.c, however I
have a feeling this never gets called as softpipe is a Gallium
driver not a Mesa driver.

I know there are stamp's in the st_context and st_framebuffer, however
++'ing them on a window resize doesn't seem to solve the issue.

Our libGL actually is aware of window resizes, so I have a fix in that
manually calls the viewport calls on resize.. however I don't think
this is a good long term fix as the viewport is always forced to the
size of the window (which isn't correct was far as I know)

http://cgit.freedesktop.org/mesa/mesa/commit/?id=e759f1c111018949db114e76ebf1a723525fb802

Thoughts?

 -- Alex


More information about the mesa-dev mailing list