diff options
author | Brian Paul <[email protected]> | 2013-11-19 13:09:57 -0700 |
---|---|---|
committer | Brian Paul <[email protected]> | 2013-11-19 13:21:35 -0700 |
commit | 15d8e05e1e98a9bfd5a365d0fda222668f24261f (patch) | |
tree | aeb53c8728aca6f0f7d98e0b68de558ced8d51a9 /src/mesa/state_tracker | |
parent | e7a5905d8a3960b0981750f8131e3af9acbfcdb8 (diff) |
st/mesa: fix GL_FEEDBACK mode inverted Y coordinate bug
We need to check the drawbuffer's orientation before inverting Y
coordinates. Fixes piglit feedback tests when running with the
-fbo option.
Cc: "9.2" "10.0" <[email protected]>
Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/mesa/state_tracker')
-rw-r--r-- | src/mesa/state_tracker/st_cb_feedback.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/mesa/state_tracker/st_cb_feedback.c b/src/mesa/state_tracker/st_cb_feedback.c index d2e4346b7ea..34a16ccf938 100644 --- a/src/mesa/state_tracker/st_cb_feedback.c +++ b/src/mesa/state_tracker/st_cb_feedback.c @@ -85,9 +85,11 @@ feedback_vertex(struct gl_context *ctx, const struct draw_context *draw, const GLfloat *color, *texcoord; GLuint slot; - /* Recall that Y=0=Top of window for Gallium wincoords */ win[0] = v->data[0][0]; - win[1] = ctx->DrawBuffer->Height - v->data[0][1]; + if (st_fb_orientation(ctx->DrawBuffer) == Y_0_TOP) + win[1] = ctx->DrawBuffer->Height - v->data[0][1]; + else + win[1] = v->data[0][1]; win[2] = v->data[0][2]; win[3] = 1.0F / v->data[0][3]; |