summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrian Paul <[email protected]>2011-01-21 17:34:42 -0700
committerBrian Paul <[email protected]>2011-01-22 18:33:35 -0700
commitbd67962c5e8469062516da396e9c466a9446e00d (patch)
treeb49cc431e660f2751075074124d7ba6ecf3cc907
parentbb770af3a59e5935c108c05ee45490fc5668d4a3 (diff)
st/mesa: comments in update_viewport()
-rw-r--r--src/mesa/state_tracker/st_atom_viewport.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/mesa/state_tracker/st_atom_viewport.c b/src/mesa/state_tracker/st_atom_viewport.c
index d10f1840df6..133cc49eaf0 100644
--- a/src/mesa/state_tracker/st_atom_viewport.c
+++ b/src/mesa/state_tracker/st_atom_viewport.c
@@ -47,10 +47,14 @@ update_viewport( struct st_context *st )
/* _NEW_BUFFERS
*/
if (st_fb_orientation(ctx->DrawBuffer) == Y_0_TOP) {
+ /* Drawing to a window. The corresponding gallium surface uses
+ * Y=0=TOP but OpenGL is Y=0=BOTTOM. So we need to invert the viewport.
+ */
yScale = -1;
yBias = (GLfloat)ctx->DrawBuffer->Height;
}
else {
+ /* Drawing to an FBO where Y=0=BOTTOM, like OpenGL - don't invert */
yScale = 1.0;
yBias = 0.0;
}