mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-06 20:18:12 +02:00
llvmpipe: Implement index bias.
This commit is contained in:
parent
382e9cc07b
commit
d27a53d469
2 changed files with 9 additions and 7 deletions
|
|
@ -46,7 +46,7 @@ void
|
|||
llvmpipe_draw_arrays(struct pipe_context *pipe, unsigned mode,
|
||||
unsigned start, unsigned count)
|
||||
{
|
||||
llvmpipe_draw_elements(pipe, NULL, 0, mode, start, count);
|
||||
llvmpipe_draw_elements(pipe, NULL, 0, 0, mode, start, count);
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -59,6 +59,7 @@ void
|
|||
llvmpipe_draw_range_elements(struct pipe_context *pipe,
|
||||
struct pipe_resource *indexBuffer,
|
||||
unsigned indexSize,
|
||||
int indexBias,
|
||||
unsigned min_index,
|
||||
unsigned max_index,
|
||||
unsigned mode, unsigned start, unsigned count)
|
||||
|
|
@ -81,14 +82,14 @@ llvmpipe_draw_range_elements(struct pipe_context *pipe,
|
|||
/* Map index buffer, if present */
|
||||
if (indexBuffer) {
|
||||
void *mapped_indexes = llvmpipe_resource_data(indexBuffer);
|
||||
draw_set_mapped_element_buffer_range(draw, indexSize,
|
||||
draw_set_mapped_element_buffer_range(draw, indexSize, indexBias,
|
||||
min_index,
|
||||
max_index,
|
||||
mapped_indexes);
|
||||
}
|
||||
else {
|
||||
/* no index/element buffer */
|
||||
draw_set_mapped_element_buffer_range(draw, 0, start,
|
||||
draw_set_mapped_element_buffer_range(draw, 0, 0, start,
|
||||
start + count - 1, NULL);
|
||||
}
|
||||
|
||||
|
|
@ -102,7 +103,7 @@ llvmpipe_draw_range_elements(struct pipe_context *pipe,
|
|||
draw_set_mapped_vertex_buffer(draw, i, NULL);
|
||||
}
|
||||
if (indexBuffer) {
|
||||
draw_set_mapped_element_buffer(draw, 0, NULL);
|
||||
draw_set_mapped_element_buffer(draw, 0, 0, NULL);
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
@ -118,10 +119,11 @@ void
|
|||
llvmpipe_draw_elements(struct pipe_context *pipe,
|
||||
struct pipe_resource *indexBuffer,
|
||||
unsigned indexSize,
|
||||
int indexBias,
|
||||
unsigned mode, unsigned start, unsigned count)
|
||||
{
|
||||
llvmpipe_draw_range_elements( pipe, indexBuffer,
|
||||
indexSize,
|
||||
indexSize, indexBias,
|
||||
0, 0xffffffff,
|
||||
mode, start, count );
|
||||
}
|
||||
|
|
|
|||
|
|
@ -228,12 +228,12 @@ void llvmpipe_draw_arrays(struct pipe_context *pipe, unsigned mode,
|
|||
|
||||
void llvmpipe_draw_elements(struct pipe_context *pipe,
|
||||
struct pipe_resource *indexBuffer,
|
||||
unsigned indexSize,
|
||||
unsigned indexSize, int indexBias,
|
||||
unsigned mode, unsigned start, unsigned count);
|
||||
void
|
||||
llvmpipe_draw_range_elements(struct pipe_context *pipe,
|
||||
struct pipe_resource *indexBuffer,
|
||||
unsigned indexSize,
|
||||
unsigned indexSize, int indexBias,
|
||||
unsigned min_index,
|
||||
unsigned max_index,
|
||||
unsigned mode, unsigned start, unsigned count);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue