summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r300/r300_screen_buffer.c
diff options
context:
space:
mode:
authorMarek Olšák <maraeo@gmail.com>2011-01-29 13:58:02 +0100
committerMarek Olšák <maraeo@gmail.com>2011-01-30 03:29:48 +0100
commit8d0a540020f6389ca5efcd0e1fbef45a4a1f5b6a (patch)
tree54070b8a3580e174536d742a6a273a0add5b6cb1 /src/gallium/drivers/r300/r300_screen_buffer.c
parent77900843b42d9672c6b10f49c177a172041f6a8d (diff)
r300g: rework vertex format fallback
1) Only translate the [min_index, max_index] range. 2) Upload translated vertices via the uploader. 3) Rename valid_vertex_buffer[] to real_vertex_buffer[]
Diffstat (limited to 'src/gallium/drivers/r300/r300_screen_buffer.c')
-rw-r--r--src/gallium/drivers/r300/r300_screen_buffer.c13
1 files changed, 3 insertions, 10 deletions
diff --git a/src/gallium/drivers/r300/r300_screen_buffer.c b/src/gallium/drivers/r300/r300_screen_buffer.c
index cc3c1d7687..af6fa1048c 100644
--- a/src/gallium/drivers/r300/r300_screen_buffer.c
+++ b/src/gallium/drivers/r300/r300_screen_buffer.c
@@ -87,7 +87,7 @@ void r300_upload_user_buffers(struct r300_context *r300,
int i, nr = r300->velems->count;
unsigned count = max_index + 1 - min_index;
boolean flushed;
- boolean uploaded[16] = {0};
+ boolean uploaded[32] = {0};
for (i = 0; i < nr; i++) {
unsigned index = r300->velems->velem[i].vertex_buffer_index;
@@ -105,16 +105,10 @@ void r300_upload_user_buffers(struct r300_context *r300,
size = r300->velems->hw_format_size[i];
}
- DBG(r300, DBG_UPLOAD,
- "Uploading %i bytes, index: %i, buffer: %p, userptr: %p "
- "offset: %i, stride: %i.\n",
- size, index, userbuf, userbuf->user_buffer,
- vb->buffer_offset, vb->stride);
-
u_upload_data(r300->upload_vb, first, size,
userbuf->user_buffer + first,
&vb->buffer_offset,
- &r300->valid_vertex_buffer[index],
+ &r300->real_vertex_buffer[index],
&flushed);
vb->buffer_offset -= first;
@@ -127,10 +121,9 @@ void r300_upload_user_buffers(struct r300_context *r300,
}
uploaded[index] = TRUE;
} else {
- assert(r300->valid_vertex_buffer[index]);
+ assert(r300->real_vertex_buffer[index]);
}
}
- DBG(r300, DBG_UPLOAD, "-------\n");
}
static void r300_buffer_destroy(struct pipe_screen *screen,