[Mesa-dev] [PATCH 1/3] mesa: Add support for inverted s/w conditional rendering
Chris Forbes
chrisf at ijw.co.nz
Tue Aug 19 04:40:16 PDT 2014
Signed-off-by: Chris Forbes <chrisf at ijw.co.nz>
---
src/mesa/main/condrender.c | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/src/mesa/main/condrender.c b/src/mesa/main/condrender.c
index 54cd423..75f9d74 100644
--- a/src/mesa/main/condrender.c
+++ b/src/mesa/main/condrender.c
@@ -162,12 +162,25 @@ _mesa_check_conditional_render(struct gl_context *ctx)
ctx->Driver.WaitQuery(ctx, q);
}
return q->Result > 0;
+ case GL_QUERY_BY_REGION_WAIT_INVERTED:
+ /* fall-through */
+ case GL_QUERY_WAIT_INVERTED:
+ if (!q->Ready) {
+ ctx->Driver.WaitQuery(ctx, q);
+ }
+ return q->Result == 0;
case GL_QUERY_BY_REGION_NO_WAIT:
/* fall-through */
case GL_QUERY_NO_WAIT:
if (!q->Ready)
ctx->Driver.CheckQuery(ctx, q);
return q->Ready ? (q->Result > 0) : GL_TRUE;
+ case GL_QUERY_BY_REGION_NO_WAIT_INVERTED:
+ /* fall-through */
+ case GL_QUERY_NO_WAIT_INVERTED:
+ if (!q->Ready)
+ ctx->Driver.CheckQuery(ctx, q);
+ return q->Ready ? (q->Result == 0) : GL_TRUE;
default:
_mesa_problem(ctx, "Bad cond render mode %s in "
" _mesa_check_conditional_render()",
--
2.0.4
More information about the mesa-dev
mailing list