Module: Mesa Branch: master Commit: bcf5d5ce403acb05035c42f29cde0000bb7e5d00 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=bcf5d5ce403acb05035c42f29cde0000bb7e5d00
Author: Marek Olšák <[email protected]> Date: Sat Jun 24 03:16:06 2017 +0200 mesa: fix clip plane enable breakage Broken by: commit 00173d91b70ae4dcea7c6324ee4858c498cae14b Author: Marek Olšák <[email protected]> Date: Sat Jun 10 12:09:43 2017 +0200 mesa: don't flag _NEW_TRANSFORM for st/mesa if possible It also optimizes the case slightly for GL core. It doesn't try to fix that glEnable might be a bad place to do the clip plane transformation. Reviewed-by: Nicolai Hähnle <[email protected]> Tested-by: Michel Dänzer <[email protected]> Reviewed-by: Roland Scheidegger <[email protected]> --- src/mesa/main/enable.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c index e1293f9bf1..18a288d35c 100644 --- a/src/mesa/main/enable.c +++ b/src/mesa/main/enable.c @@ -361,8 +361,13 @@ _mesa_set_enable(struct gl_context *ctx, GLenum cap, GLboolean state) if (state) { ctx->Transform.ClipPlanesEnabled |= (1 << p); - if (ctx->API == API_OPENGL_COMPAT || ctx->API == API_OPENGLES) + + /* The projection matrix transforms the clip plane. */ + /* TODO: glEnable might not be the best place to do it. */ + if (ctx->API == API_OPENGL_COMPAT || ctx->API == API_OPENGLES) { _mesa_update_clip_plane(ctx, p); + ctx->NewDriverState |= ctx->DriverFlags.NewClipPlane; + } } else { ctx->Transform.ClipPlanesEnabled &= ~(1 << p); _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
