r300: Use util_draw_multi() helper
Signed-off-by: Rob Clark <robdclark@chromium.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9742>
This commit is contained in:
parent
e200da1f02
commit
0634abbeb7
|
@ -30,6 +30,7 @@
|
||||||
#include "util/u_inlines.h"
|
#include "util/u_inlines.h"
|
||||||
|
|
||||||
#include "util/format/u_format.h"
|
#include "util/format/u_format.h"
|
||||||
|
#include "util/u_draw.h"
|
||||||
#include "util/u_memory.h"
|
#include "util/u_memory.h"
|
||||||
#include "util/u_upload_mgr.h"
|
#include "util/u_upload_mgr.h"
|
||||||
#include "util/u_prim.h"
|
#include "util/u_prim.h"
|
||||||
|
@ -791,16 +792,10 @@ static void r300_draw_vbo(struct pipe_context* pipe,
|
||||||
const struct pipe_draw_start_count *draws,
|
const struct pipe_draw_start_count *draws,
|
||||||
unsigned num_draws)
|
unsigned num_draws)
|
||||||
{
|
{
|
||||||
if (num_draws > 1) {
|
if (num_draws > 1) {
|
||||||
struct pipe_draw_info tmp_info = *dinfo;
|
util_draw_multi(pipe, dinfo, indirect, draws, num_draws);
|
||||||
|
return;
|
||||||
for (unsigned i = 0; i < num_draws; i++) {
|
}
|
||||||
r300_draw_vbo(pipe, &tmp_info, indirect, &draws[i], 1);
|
|
||||||
if (tmp_info.increment_draw_id)
|
|
||||||
tmp_info.drawid++;
|
|
||||||
}
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
struct r300_context* r300 = r300_context(pipe);
|
struct r300_context* r300 = r300_context(pipe);
|
||||||
struct pipe_draw_info info = *dinfo;
|
struct pipe_draw_info info = *dinfo;
|
||||||
|
@ -864,16 +859,10 @@ static void r300_swtcl_draw_vbo(struct pipe_context* pipe,
|
||||||
const struct pipe_draw_start_count *draws,
|
const struct pipe_draw_start_count *draws,
|
||||||
unsigned num_draws)
|
unsigned num_draws)
|
||||||
{
|
{
|
||||||
if (num_draws > 1) {
|
if (num_draws > 1) {
|
||||||
struct pipe_draw_info tmp_info = *info;
|
util_draw_multi(pipe, info, indirect, draws, num_draws);
|
||||||
|
return;
|
||||||
for (unsigned i = 0; i < num_draws; i++) {
|
}
|
||||||
r300_swtcl_draw_vbo(pipe, &tmp_info, indirect, &draws[i], 1);
|
|
||||||
if (tmp_info.increment_draw_id)
|
|
||||||
tmp_info.drawid++;
|
|
||||||
}
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
struct r300_context* r300 = r300_context(pipe);
|
struct r300_context* r300 = r300_context(pipe);
|
||||||
struct pipe_draw_start_count draw = draws[0];
|
struct pipe_draw_start_count draw = draws[0];
|
||||||
|
|
Loading…
Reference in New Issue