aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium
diff options
context:
space:
mode:
authorIcenowy Zheng <[email protected]>2019-10-22 22:14:56 +0800
committerVasily Khoruzhick <[email protected]>2019-10-31 21:56:45 +0000
commit8fa13db25163d36460d779dd4ea0ede19227cdbf (patch)
tree43157b693cf08279680072779bcc7afb25c72799 /src/gallium
parentf60ef0fff4b99c0caf9ae4f0f17637372cf9cd7a (diff)
lima: support indexed draw with bias
When doing an indexed draw with index_bias set to a non-zero value (e.g. by glDrawElementsBaseVertex), the vertex buffer should be offseted by index_bias vertices. Add this offset when setting the vertex buffer address. Signed-off-by: Icenowy Zheng <[email protected]> Reviewed-by: Vasily Khoruzhick <[email protected]>
Diffstat (limited to 'src/gallium')
-rw-r--r--src/gallium/drivers/lima/lima_draw.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gallium/drivers/lima/lima_draw.c b/src/gallium/drivers/lima/lima_draw.c
index 9753343409e..a607e874601 100644
--- a/src/gallium/drivers/lima/lima_draw.c
+++ b/src/gallium/drivers/lima/lima_draw.c
@@ -1154,7 +1154,7 @@ lima_update_gp_attribute_info(struct lima_context *ctx, const struct pipe_draw_i
lima_submit_add_bo(ctx->gp_submit, res->bo, LIMA_SUBMIT_BO_READ);
- unsigned start = info->index_size ? ctx->min_index : info->start;
+ unsigned start = info->index_size ? (ctx->min_index + info->index_bias) : info->start;
attribute[n++] = res->bo->va + pvb->buffer_offset + pve->src_offset
+ start * pvb->stride;
attribute[n++] = (pvb->stride << 11) |