/* Arrays with buffer objects to copy non-bufferobj arrays into
* for upload:
*/
- struct pipe_vertex_buffer vbo_array[PIPE_ATTRIB_MAX];
+ struct pipe_vertex_buffer *vbo_array[PIPE_ATTRIB_MAX];
struct brw_vertex_element inputs[PIPE_ATTRIB_MAX];
for (i = 0; i < BRW_VEP_MAX; i++)
{
- if (brw->vb.vbo_array[i] == NULL) {
+ if (brw->vb.vbo_array[i]->buffer == NULL) {
nr_enabled = i;
break;
}
- vbp.vb[i].vb0.bits.pitch = brw->vb.vbo_array[i].pitch;
+ vbp.vb[i].vb0.bits.pitch = brw->vb.vbo_array[i]->pitch;
vbp.vb[i].vb0.bits.pad = 0;
vbp.vb[i].vb0.bits.access_type = BRW_VERTEXBUFFER_ACCESS_VERTEXDATA;
vbp.vb[i].vb0.bits.vb_index = i;
- vbp.vb[i].offset = brw->vb.vbo_array[i].buffer_offset;
- vbp.vb[i].buffer = brw->vb.vbo_array[i].buffer;
- vbp.vb[i].max_index = brw->vb.vbo_array[i].max_index;
+ vbp.vb[i].offset = brw->vb.vbo_array[i]->buffer_offset;
+ vbp.vb[i].buffer = brw->vb.vbo_array[i]->buffer;
+ vbp.vb[i].max_index = brw->vb.vbo_array[i]->max_index;
}
for (i = 0; i < nr_enabled; i++) {
struct brw_vertex_element *input = &brw->vb.inputs[i];
- switch (brw->vb.vbo_array[input->vep.ve0.vertex_buffer_index].pitch) {
+ switch (brw->vb.vbo_array[input->vep.ve0.vertex_buffer_index]->pitch) {
case 0: input->vep.ve1.vfcomponent0 = BRW_VFCOMPONENT_STORE_0;
case 1: input->vep.ve1.vfcomponent1 = BRW_VFCOMPONENT_STORE_0;
case 2: input->vep.ve1.vfcomponent2 = BRW_VFCOMPONENT_STORE_0;
OUT_BATCH(((depth_surface->pitch * depth_surface->cpp) - 1) |
(format << 18) |
(BRW_TILEWALK_YMAJOR << 26) |
-#if 0
- (depth_surface->region->tiled << 27) |
-#endif
+// (depth_surface->region->tiled << 27) |
(BRW_SURFACE_2D << 29));
OUT_RELOC(depth_surface->buffer,
PIPE_BUFFER_FLAG_READ | PIPE_BUFFER_FLAG_WRITE, 0);
static void brw_set_vertex_buffer( struct pipe_context *pipe,
- unsigned index,
- const struct pipe_vertex_buffer *buffer )
+ unsigned index,
+ const struct pipe_vertex_buffer *buffer )
{
struct brw_context *brw = brw_context(pipe);
- brw->vb.vbo_array[index] = *buffer;
- if (index > brw->vb.last_vb)
- brw->vb.last_vb = index;
- assert(brw->vb.last_vb < BRW_VEP_MAX);
+ brw->vb.vbo_array[index] = buffer;
}
static void brw_set_vertex_element(struct pipe_context *pipe,