diff options
author | Andre Maasikas <amaasikas@gmail.com> | 2010-08-04 12:49:39 +0300 |
---|---|---|
committer | Andre Maasikas <amaasikas@gmail.com> | 2010-08-04 12:49:39 +0300 |
commit | 8ad5b76d52f1c009f48ea90556633e497b40ba87 (patch) | |
tree | 0f3b824a45280df072cf190c7f411509b5b52536 /src/mesa/drivers/dri/r600/r700_assembler.c | |
parent | 5c2f01bbb076af8b8ae6e1803d95a9ae678c2d1c (diff) |
r600: relax stride/alignment requirements for vertices
seems hw can do unaligned accesses and unaligned strides
removes extra conversion when using vbo's
however I needed to switch 3 component byte format to 4 component formats
for tests to pass. Somewhat sililar to GL_SHORT fix done earlier
removes assert and gains +2 piglit especially draw-vertices
Diffstat (limited to 'src/mesa/drivers/dri/r600/r700_assembler.c')
-rw-r--r-- | src/mesa/drivers/dri/r600/r700_assembler.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/r600/r700_assembler.c b/src/mesa/drivers/dri/r600/r700_assembler.c index b555ea683c..9c954cbf70 100644 --- a/src/mesa/drivers/dri/r600/r700_assembler.c +++ b/src/mesa/drivers/dri/r600/r700_assembler.c @@ -275,7 +275,10 @@ GLuint GetSurfaceFormat(GLenum eType, GLuint nChannels, GLuint * pClient_size) case 2: format = FMT_8_8; break; case 3: - format = FMT_8_8_8; break; + /* for some (small/unaligned) strides using 4 comps works + * better, probably same as GL_SHORT below + * test piglit/draw-vertices */ + format = FMT_8_8_8_8; break; case 4: format = FMT_8_8_8_8; break; default: |