util/blitter: kill the draw_quad callback
This commit is contained in:
parent
85bf420a78
commit
80e8156394
|
@ -385,20 +385,15 @@ static void blitter_set_texcoords_cube(struct blitter_context_priv *ctx,
|
||||||
|
|
||||||
static void blitter_draw_quad(struct blitter_context_priv *ctx)
|
static void blitter_draw_quad(struct blitter_context_priv *ctx)
|
||||||
{
|
{
|
||||||
struct blitter_context *blitter = &ctx->blitter;
|
|
||||||
struct pipe_context *pipe = ctx->pipe;
|
struct pipe_context *pipe = ctx->pipe;
|
||||||
|
|
||||||
if (blitter->draw_quad) {
|
/* write vertices and draw them */
|
||||||
blitter->draw_quad(pipe, &ctx->vertices[0][0][0]);
|
pipe_buffer_write(pipe->screen, ctx->vbuf,
|
||||||
} else {
|
0, sizeof(ctx->vertices), ctx->vertices);
|
||||||
/* write vertices and draw them */
|
|
||||||
pipe_buffer_write(pipe->screen, ctx->vbuf,
|
|
||||||
0, sizeof(ctx->vertices), ctx->vertices);
|
|
||||||
|
|
||||||
util_draw_vertex_buffer(ctx->pipe, ctx->vbuf, 0, PIPE_PRIM_TRIANGLE_FAN,
|
util_draw_vertex_buffer(pipe, ctx->vbuf, 0, PIPE_PRIM_TRIANGLE_FAN,
|
||||||
4, /* verts */
|
4, /* verts */
|
||||||
2); /* attribs/vert */
|
2); /* attribs/vert */
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static INLINE
|
static INLINE
|
||||||
|
|
|
@ -40,20 +40,6 @@ struct pipe_context;
|
||||||
|
|
||||||
struct blitter_context
|
struct blitter_context
|
||||||
{
|
{
|
||||||
/**
|
|
||||||
* Draw a quad.
|
|
||||||
*
|
|
||||||
* The pipe driver can set this to provide a more efficient way of drawing
|
|
||||||
* a quad. If it's NULL, the quad is drawn using a vertex buffer.
|
|
||||||
*
|
|
||||||
* There are always 4 vertices with interleaved vertex elements of type
|
|
||||||
* RGBA32F. See the vertex shader _output_ semantics to know what those are.
|
|
||||||
* The primitive type is always PIPE_PRIM_TRIANGLE_FAN and VS/clip/viewport
|
|
||||||
* is bypasssed.
|
|
||||||
*/
|
|
||||||
void (*draw_quad)(struct pipe_context *pipe,
|
|
||||||
const float *vertices);
|
|
||||||
|
|
||||||
/* Private members, really. */
|
/* Private members, really. */
|
||||||
void *saved_blend_state; /**< blend state */
|
void *saved_blend_state; /**< blend state */
|
||||||
void *saved_dsa_state; /**< depth stencil alpha state */
|
void *saved_dsa_state; /**< depth stencil alpha state */
|
||||||
|
|
Loading…
Reference in New Issue