diff options
author | Marek Olšák <[email protected]> | 2013-11-21 15:50:31 +0100 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2013-12-03 19:39:13 +0100 |
commit | e47af58bb411c7779857ad96a7cc3306980311ae (patch) | |
tree | d1a5c8df67dc696c741bd4282b951cba39ccebc3 /src/gallium/auxiliary | |
parent | 6b919b1b2d296f7d7410c2291b7e0332d7bef1a0 (diff) |
st/mesa: implement layered framebuffer clear for the clear_with_quad fallback
Same approach as in u_blitter.
Diffstat (limited to 'src/gallium/auxiliary')
-rw-r--r-- | src/gallium/auxiliary/cso_cache/cso_context.c | 20 | ||||
-rw-r--r-- | src/gallium/auxiliary/cso_cache/cso_context.h | 5 |
2 files changed, 25 insertions, 0 deletions
diff --git a/src/gallium/auxiliary/cso_cache/cso_context.c b/src/gallium/auxiliary/cso_cache/cso_context.c index 33adee8d77a..8d217a4053e 100644 --- a/src/gallium/auxiliary/cso_cache/cso_context.c +++ b/src/gallium/auxiliary/cso_cache/cso_context.c @@ -1416,3 +1416,23 @@ cso_draw_arrays(struct cso_context *cso, uint mode, uint start, uint count) cso_draw_vbo(cso, &info); } + +void +cso_draw_arrays_instanced(struct cso_context *cso, uint mode, + uint start, uint count, + uint start_instance, uint instance_count) +{ + struct pipe_draw_info info; + + util_draw_init_info(&info); + + info.mode = mode; + info.start = start; + info.count = count; + info.min_index = start; + info.max_index = start + count - 1; + info.start_instance = start_instance; + info.instance_count = instance_count; + + cso_draw_vbo(cso, &info); +} diff --git a/src/gallium/auxiliary/cso_cache/cso_context.h b/src/gallium/auxiliary/cso_cache/cso_context.h index 82c8e18def0..4b433b1c7a1 100644 --- a/src/gallium/auxiliary/cso_cache/cso_context.h +++ b/src/gallium/auxiliary/cso_cache/cso_context.h @@ -228,6 +228,11 @@ void cso_draw_vbo(struct cso_context *cso, const struct pipe_draw_info *info); +void +cso_draw_arrays_instanced(struct cso_context *cso, uint mode, + uint start, uint count, + uint start_instance, uint instance_count); + /* helper drawing function */ void cso_draw_arrays(struct cso_context *cso, uint mode, uint start, uint count); |