Mesa (master): meta: Fix the BufferSubData in meta clear to be BufferData.
Eric Anholt
anholt at kemper.freedesktop.org
Tue Oct 20 20:07:37 UTC 2009
Module: Mesa
Branch: master
Commit: cbd20e18a0f82a653513d165694ed7bbb336e765
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=cbd20e18a0f82a653513d165694ed7bbb336e765
Author: Eric Anholt <eric at anholt.net>
Date: Mon Oct 19 17:54:42 2009 -0700
meta: Fix the BufferSubData in meta clear to be BufferData.
Fixes a 3.4% +/- 1.3% performance regression in my GL demo (n=3). The
other meta code could probably also use the same treatment.
---
src/mesa/drivers/common/meta.c | 5 ++---
1 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c
index ceb929f..b38f22e 100644
--- a/src/mesa/drivers/common/meta.c
+++ b/src/mesa/drivers/common/meta.c
@@ -1346,8 +1346,6 @@ _mesa_meta_Clear(GLcontext *ctx, GLbitfield buffers)
/* create vertex array buffer */
_mesa_GenBuffersARB(1, &clear->VBO);
_mesa_BindBufferARB(GL_ARRAY_BUFFER_ARB, clear->VBO);
- _mesa_BufferDataARB(GL_ARRAY_BUFFER_ARB, sizeof(verts),
- NULL, GL_DYNAMIC_DRAW_ARB);
/* setup vertex arrays */
_mesa_VertexPointer(3, GL_FLOAT, sizeof(struct vertex), OFFSET(x));
@@ -1423,7 +1421,8 @@ _mesa_meta_Clear(GLcontext *ctx, GLbitfield buffers)
}
/* upload new vertex data */
- _mesa_BufferSubDataARB(GL_ARRAY_BUFFER_ARB, 0, sizeof(verts), verts);
+ _mesa_BufferDataARB(GL_ARRAY_BUFFER_ARB, sizeof(verts), verts,
+ GL_DYNAMIC_DRAW_ARB);
}
/* draw quad */
More information about the mesa-commit
mailing list