vega: adapt to new vertex element cso
This commit is contained in:
parent
711476be29
commit
1f57069c68
|
@ -86,6 +86,8 @@ draw_clear_quad(struct vg_context *st,
|
|||
|
||||
/* draw */
|
||||
if (buf) {
|
||||
cso_set_vertex_elements(st->cso_context, 2, st->velems);
|
||||
|
||||
util_draw_vertex_buffer(pipe, buf, 0,
|
||||
PIPE_PRIM_TRIANGLE_FAN,
|
||||
4, /* verts */
|
||||
|
|
|
@ -292,11 +292,12 @@ static void draw_polygon(struct vg_context *ctx,
|
|||
pipe->set_vertex_buffers(pipe, 1, &vbuffer);
|
||||
|
||||
/* tell pipe about the vertex attributes */
|
||||
memset(&velement, 0, sizeof(velement));
|
||||
velement.src_offset = 0;
|
||||
velement.instance_divisor = 0;
|
||||
velement.vertex_buffer_index = 0;
|
||||
velement.src_format = PIPE_FORMAT_R32G32_FLOAT;
|
||||
pipe->set_vertex_elements(pipe, 1, &velement);
|
||||
cso_set_vertex_elements(ctx->cso_context, 1, &velement);
|
||||
|
||||
/* draw */
|
||||
pipe->draw_arrays(pipe, PIPE_PRIM_TRIANGLE_FAN,
|
||||
|
|
|
@ -210,6 +210,7 @@ void renderer_draw_quad(struct renderer *r,
|
|||
buf = setup_vertex_data(r, x1, y1, x2, y2, depth);
|
||||
|
||||
if (buf) {
|
||||
cso_set_vertex_elements(r->cso, 2, r->owner->velems);
|
||||
util_draw_vertex_buffer(r->pipe, buf, 0,
|
||||
PIPE_PRIM_TRIANGLE_FAN,
|
||||
4, /* verts */
|
||||
|
@ -248,6 +249,7 @@ void renderer_draw_texture(struct renderer *r,
|
|||
s0, t0, s1, t1, 0.0f);
|
||||
|
||||
if (buf) {
|
||||
cso_set_vertex_elements(r->cso, 2, r->owner->velems);
|
||||
util_draw_vertex_buffer(pipe, buf, 0,
|
||||
PIPE_PRIM_TRIANGLE_FAN,
|
||||
4, /* verts */
|
||||
|
@ -370,6 +372,7 @@ void renderer_copy_texture(struct renderer *ctx,
|
|||
0.0f);
|
||||
|
||||
if (buf) {
|
||||
cso_set_vertex_elements(ctx->cso, 2, ctx->owner->velems);
|
||||
util_draw_vertex_buffer(ctx->pipe, buf, 0,
|
||||
PIPE_PRIM_TRIANGLE_FAN,
|
||||
4, /* verts */
|
||||
|
@ -535,6 +538,7 @@ void renderer_copy_surface(struct renderer *ctx,
|
|||
(float) dstX1, (float) dstY1, z);
|
||||
|
||||
if (buf) {
|
||||
cso_set_vertex_elements(ctx->cso, 2, ctx->owner->velems);
|
||||
util_draw_vertex_buffer(ctx->pipe, buf, 0,
|
||||
PIPE_PRIM_TRIANGLE_FAN,
|
||||
4, /* verts */
|
||||
|
@ -587,6 +591,7 @@ void renderer_texture_quad(struct renderer *r,
|
|||
s0, t0, s1, t1, 0.0f);
|
||||
|
||||
if (buf) {
|
||||
cso_set_vertex_elements(r->cso, 2, r->owner->velems);
|
||||
util_draw_vertex_buffer(pipe, buf, 0,
|
||||
PIPE_PRIM_TRIANGLE_FAN,
|
||||
4, /* verts */
|
||||
|
|
|
@ -72,6 +72,7 @@ struct vg_context * vg_create_context(struct pipe_context *pipe,
|
|||
struct vg_context *share)
|
||||
{
|
||||
struct vg_context *ctx;
|
||||
unsigned i;
|
||||
|
||||
ctx = CALLOC_STRUCT(vg_context);
|
||||
|
||||
|
@ -103,6 +104,13 @@ struct vg_context * vg_create_context(struct pipe_context *pipe,
|
|||
ctx->blend_sampler.mag_img_filter = PIPE_TEX_FILTER_NEAREST;
|
||||
ctx->blend_sampler.normalized_coords = 0;
|
||||
|
||||
for (i = 0; i < 2; i++) {
|
||||
ctx->velems[i].src_offset = i * 4 * sizeof(float);
|
||||
ctx->velems[i].instance_divisor = 0;
|
||||
ctx->velems[i].vertex_buffer_index = 0;
|
||||
ctx->velems[i].src_format = PIPE_FORMAT_R32G32B32A32_FLOAT;
|
||||
}
|
||||
|
||||
vg_set_error(ctx, VG_NO_ERROR);
|
||||
|
||||
ctx->owned_objects[VG_OBJECT_PAINT] = cso_hash_create();
|
||||
|
|
|
@ -146,6 +146,7 @@ struct vg_context
|
|||
struct vg_shader *clear_vs;
|
||||
struct vg_shader *texture_vs;
|
||||
struct pipe_buffer *vs_const_buffer;
|
||||
struct pipe_vertex_element velems[2];
|
||||
};
|
||||
|
||||
struct vg_object {
|
||||
|
|
Loading…
Reference in New Issue