summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/zink/zink_draw.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/drivers/zink/zink_draw.cpp')
-rw-r--r--src/gallium/drivers/zink/zink_draw.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/gallium/drivers/zink/zink_draw.cpp b/src/gallium/drivers/zink/zink_draw.cpp
index 875b45ab992..c3f5ab16134 100644
--- a/src/gallium/drivers/zink/zink_draw.cpp
+++ b/src/gallium/drivers/zink/zink_draw.cpp
@@ -134,16 +134,16 @@ zink_bind_vertex_buffers(struct zink_batch *batch, struct zink_context *ctx)
return;
for (unsigned i = 0; i < elems->hw_state.num_bindings; i++) {
- const unsigned buffer_id = ctx->element_state->binding_map[i];
- struct pipe_vertex_buffer *vb = ctx->vertex_buffers + buffer_id;
+ struct pipe_vertex_buffer *vb = ctx->vertex_buffers + ctx->element_state->binding_map[i];
assert(vb);
if (vb->buffer.resource) {
- buffers[i] = ctx->vbufs[buffer_id];
- assert(buffers[i]);
+ struct zink_resource *res = zink_resource(vb->buffer.resource);
+ assert(res->obj->buffer);
+ buffers[i] = res->obj->buffer;
+ buffer_offsets[i] = vb->buffer_offset;
+ buffer_strides[i] = vb->stride;
if (DYNAMIC_STATE == ZINK_DYNAMIC_VERTEX_INPUT)
elems->hw_state.dynbindings[i].stride = vb->stride;
- buffer_offsets[i] = ctx->vbuf_offsets[buffer_id];
- buffer_strides[i] = vb->stride;
zink_batch_resource_usage_set(&ctx->batch, zink_resource(vb->buffer.resource), false);
} else {
buffers[i] = zink_resource(ctx->dummy_vertex_buffer)->obj->buffer;