[Mesa-dev] [PATCH 4/4] mesa: only flush vertices when the viewport is different
Nicolai Hähnle
nhaehnle at gmail.com
Sat Jun 24 10:01:04 UTC 2017
Patches 3 & 4:
Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>
On 22.06.2017 16:35, Samuel Pitoiset wrote:
> This prevents glViewport() and friends to always flush and
> trigger _NEW_VIEWPORT.
>
> Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
> ---
> src/mesa/main/viewport.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/src/mesa/main/viewport.c b/src/mesa/main/viewport.c
> index 33aa1269520..ae03d6a5dd2 100644
> --- a/src/mesa/main/viewport.c
> +++ b/src/mesa/main/viewport.c
> @@ -40,9 +40,6 @@ set_viewport_no_notify(struct gl_context *ctx, unsigned idx,
> GLfloat x, GLfloat y,
> GLfloat width, GLfloat height)
> {
> - FLUSH_VERTICES(ctx, ctx->DriverFlags.NewViewport ? 0 : _NEW_VIEWPORT);
> - ctx->NewDriverState |= ctx->DriverFlags.NewViewport;
> -
> /* clamp width and height to the implementation dependent range */
> width = MIN2(width, (GLfloat) ctx->Const.MaxViewportWidth);
> height = MIN2(height, (GLfloat) ctx->Const.MaxViewportHeight);
> @@ -70,6 +67,9 @@ set_viewport_no_notify(struct gl_context *ctx, unsigned idx,
> ctx->ViewportArray[idx].Height == height)
> return;
>
> + FLUSH_VERTICES(ctx, ctx->DriverFlags.NewViewport ? 0 : _NEW_VIEWPORT);
> + ctx->NewDriverState |= ctx->DriverFlags.NewViewport;
> +
> ctx->ViewportArray[idx].X = x;
> ctx->ViewportArray[idx].Width = width;
> ctx->ViewportArray[idx].Y = y;
>
--
Lerne, wie die Welt wirklich ist,
Aber vergiss niemals, wie sie sein sollte.
More information about the mesa-dev
mailing list