mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-07 07:08:04 +02:00
gallium: fix up drivers for edgeflag changes
several drivers which chose to ignore edgeflags might require some more work, while edgeflags never worked there they might now crash.
This commit is contained in:
parent
ff5b0c72db
commit
429f0e3b37
28 changed files with 22 additions and 162 deletions
|
|
@ -171,21 +171,11 @@ cell_draw_arrays(struct pipe_context *pipe, unsigned mode,
|
|||
}
|
||||
|
||||
|
||||
static void
|
||||
cell_set_edgeflags(struct pipe_context *pipe, const unsigned *edgeflags)
|
||||
{
|
||||
struct cell_context *cell = cell_context(pipe);
|
||||
draw_set_edgeflags(cell->draw, edgeflags);
|
||||
}
|
||||
|
||||
|
||||
|
||||
void
|
||||
cell_init_draw_functions(struct cell_context *cell)
|
||||
{
|
||||
cell->pipe.draw_arrays = cell_draw_arrays;
|
||||
cell->pipe.draw_elements = cell_draw_elements;
|
||||
cell->pipe.draw_range_elements = cell_draw_range_elements;
|
||||
cell->pipe.set_edgeflags = cell_set_edgeflags;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -752,16 +752,9 @@ static void i915_set_vertex_elements(struct pipe_context *pipe,
|
|||
}
|
||||
|
||||
|
||||
static void i915_set_edgeflags(struct pipe_context *pipe,
|
||||
const unsigned *bitfield)
|
||||
{
|
||||
/* TODO do something here */
|
||||
}
|
||||
|
||||
void
|
||||
i915_init_state_functions( struct i915_context *i915 )
|
||||
{
|
||||
i915->base.set_edgeflags = i915_set_edgeflags;
|
||||
i915->base.create_blend_state = i915_create_blend_state;
|
||||
i915->base.bind_blend_state = i915_bind_blend_state;
|
||||
i915->base.delete_blend_state = i915_delete_blend_state;
|
||||
|
|
|
|||
|
|
@ -45,17 +45,6 @@ identity_destroy(struct pipe_context *_pipe)
|
|||
free(id_pipe);
|
||||
}
|
||||
|
||||
static void
|
||||
identity_set_edgeflags(struct pipe_context *_pipe,
|
||||
const unsigned *bitfield)
|
||||
{
|
||||
struct identity_context *id_pipe = identity_context(_pipe);
|
||||
struct pipe_context *pipe = id_pipe->pipe;
|
||||
|
||||
pipe->set_edgeflags(pipe,
|
||||
bitfield);
|
||||
}
|
||||
|
||||
static boolean
|
||||
identity_draw_arrays(struct pipe_context *_pipe,
|
||||
unsigned prim,
|
||||
|
|
@ -707,7 +696,6 @@ identity_context_create(struct pipe_screen *_screen, struct pipe_context *pipe)
|
|||
id_pipe->base.draw = NULL;
|
||||
|
||||
id_pipe->base.destroy = identity_destroy;
|
||||
id_pipe->base.set_edgeflags = identity_set_edgeflags;
|
||||
id_pipe->base.draw_arrays = identity_draw_arrays;
|
||||
id_pipe->base.draw_elements = identity_draw_elements;
|
||||
id_pipe->base.draw_range_elements = identity_draw_range_elements;
|
||||
|
|
|
|||
|
|
@ -226,8 +226,6 @@ llvmpipe_create( struct pipe_screen *screen )
|
|||
llvmpipe->pipe.draw_arrays = llvmpipe_draw_arrays;
|
||||
llvmpipe->pipe.draw_elements = llvmpipe_draw_elements;
|
||||
llvmpipe->pipe.draw_range_elements = llvmpipe_draw_range_elements;
|
||||
llvmpipe->pipe.set_edgeflags = llvmpipe_set_edgeflags;
|
||||
|
||||
|
||||
llvmpipe->pipe.clear = llvmpipe_clear;
|
||||
llvmpipe->pipe.flush = llvmpipe_flush;
|
||||
|
|
|
|||
|
|
@ -133,10 +133,3 @@ llvmpipe_draw_elements(struct pipe_context *pipe,
|
|||
mode, start, count );
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
llvmpipe_set_edgeflags(struct pipe_context *pipe, const unsigned *edgeflags)
|
||||
{
|
||||
struct llvmpipe_context *lp = llvmpipe_context(pipe);
|
||||
draw_set_edgeflags(lp->draw, edgeflags);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -212,10 +212,6 @@ llvmpipe_draw_range_elements(struct pipe_context *pipe,
|
|||
unsigned max_index,
|
||||
unsigned mode, unsigned start, unsigned count);
|
||||
|
||||
void
|
||||
llvmpipe_set_edgeflags(struct pipe_context *pipe, const unsigned *edgeflags);
|
||||
|
||||
|
||||
void
|
||||
llvmpipe_map_transfers(struct llvmpipe_context *lp);
|
||||
|
||||
|
|
|
|||
|
|
@ -27,11 +27,6 @@ nv04_destroy(struct pipe_context *pipe)
|
|||
FREE(nv04);
|
||||
}
|
||||
|
||||
static void
|
||||
nv04_set_edgeflags(struct pipe_context *pipe, const unsigned *bitfield)
|
||||
{
|
||||
}
|
||||
|
||||
static boolean
|
||||
nv04_init_hwctx(struct nv04_context *nv04)
|
||||
{
|
||||
|
|
@ -83,7 +78,6 @@ nv04_create(struct pipe_screen *pscreen, unsigned pctx_id)
|
|||
nv04->pipe.winsys = ws;
|
||||
nv04->pipe.screen = pscreen;
|
||||
nv04->pipe.destroy = nv04_destroy;
|
||||
nv04->pipe.set_edgeflags = nv04_set_edgeflags;
|
||||
nv04->pipe.draw_arrays = nv04_draw_arrays;
|
||||
nv04->pipe.draw_elements = nv04_draw_elements;
|
||||
nv04->pipe.clear = nv04_clear;
|
||||
|
|
|
|||
|
|
@ -252,11 +252,6 @@ static void nv10_init_hwctx(struct nv10_context *nv10)
|
|||
FIRE_RING (NULL);
|
||||
}
|
||||
|
||||
static void
|
||||
nv10_set_edgeflags(struct pipe_context *pipe, const unsigned *bitfield)
|
||||
{
|
||||
}
|
||||
|
||||
struct pipe_context *
|
||||
nv10_create(struct pipe_screen *pscreen, unsigned pctx_id)
|
||||
{
|
||||
|
|
@ -276,7 +271,6 @@ nv10_create(struct pipe_screen *pscreen, unsigned pctx_id)
|
|||
nv10->pipe.winsys = ws;
|
||||
nv10->pipe.screen = pscreen;
|
||||
nv10->pipe.destroy = nv10_destroy;
|
||||
nv10->pipe.set_edgeflags = nv10_set_edgeflags;
|
||||
nv10->pipe.draw_arrays = nv10_draw_arrays;
|
||||
nv10->pipe.draw_elements = nv10_draw_elements;
|
||||
nv10->pipe.clear = nv10_clear;
|
||||
|
|
|
|||
|
|
@ -375,11 +375,6 @@ static void nv20_init_hwctx(struct nv20_context *nv20)
|
|||
FIRE_RING (NULL);
|
||||
}
|
||||
|
||||
static void
|
||||
nv20_set_edgeflags(struct pipe_context *pipe, const unsigned *bitfield)
|
||||
{
|
||||
}
|
||||
|
||||
struct pipe_context *
|
||||
nv20_create(struct pipe_screen *pscreen, unsigned pctx_id)
|
||||
{
|
||||
|
|
@ -399,7 +394,6 @@ nv20_create(struct pipe_screen *pscreen, unsigned pctx_id)
|
|||
nv20->pipe.winsys = ws;
|
||||
nv20->pipe.screen = pscreen;
|
||||
nv20->pipe.destroy = nv20_destroy;
|
||||
nv20->pipe.set_edgeflags = nv20_set_edgeflags;
|
||||
nv20->pipe.draw_arrays = nv20_draw_arrays;
|
||||
nv20->pipe.draw_elements = nv20_draw_elements;
|
||||
nv20->pipe.clear = nv20_clear;
|
||||
|
|
|
|||
|
|
@ -530,6 +530,9 @@ nv20_vertprog_parse_decl_output(struct nv20_vpc *vpc,
|
|||
return FALSE;
|
||||
}
|
||||
break;
|
||||
case TGSI_SEMANTIC_EDGEFLAG:
|
||||
NOUVEAU_ERR("cannot handle edgeflag output\n");
|
||||
return FALSE;
|
||||
default:
|
||||
NOUVEAU_ERR("bad output semantic\n");
|
||||
return FALSE;
|
||||
|
|
|
|||
|
|
@ -144,7 +144,6 @@ struct nv30_context {
|
|||
unsigned vtxbuf_nr;
|
||||
struct pipe_vertex_element vtxelt[PIPE_MAX_ATTRIBS];
|
||||
unsigned vtxelt_nr;
|
||||
const unsigned *edgeflags;
|
||||
};
|
||||
|
||||
static INLINE struct nv30_context *
|
||||
|
|
|
|||
|
|
@ -672,16 +672,6 @@ nv30_set_vertex_elements(struct pipe_context *pipe, unsigned count,
|
|||
/*nv30->draw_dirty |= NV30_NEW_ARRAYS;*/
|
||||
}
|
||||
|
||||
static void
|
||||
nv30_set_edgeflags(struct pipe_context *pipe, const unsigned *bitfield)
|
||||
{
|
||||
struct nv30_context *nv30 = nv30_context(pipe);
|
||||
|
||||
nv30->edgeflags = bitfield;
|
||||
nv30->dirty |= NV30_NEW_ARRAYS;
|
||||
/*nv30->draw_dirty |= NV30_NEW_ARRAYS;*/
|
||||
}
|
||||
|
||||
void
|
||||
nv30_init_state_functions(struct nv30_context *nv30)
|
||||
{
|
||||
|
|
@ -721,7 +711,6 @@ nv30_init_state_functions(struct nv30_context *nv30)
|
|||
nv30->pipe.set_scissor_state = nv30_set_scissor_state;
|
||||
nv30->pipe.set_viewport_state = nv30_set_viewport_state;
|
||||
|
||||
nv30->pipe.set_edgeflags = nv30_set_edgeflags;
|
||||
nv30->pipe.set_vertex_buffers = nv30_set_vertex_buffers;
|
||||
nv30->pipe.set_vertex_elements = nv30_set_vertex_elements;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -485,11 +485,6 @@ nv30_vbo_validate(struct nv30_context *nv30)
|
|||
unsigned vb_flags = NOUVEAU_BO_VRAM | NOUVEAU_BO_GART | NOUVEAU_BO_RD;
|
||||
int hw;
|
||||
|
||||
if (nv30->edgeflags) {
|
||||
/*nv30->fallback_swtnl |= NV30_NEW_ARRAYS;*/
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
vtxbuf = so_new(20, 18);
|
||||
so_method(vtxbuf, rankine, NV34TCL_VTXBUF_ADDRESS(0), nv30->vtxelt_nr);
|
||||
vtxfmt = so_new(17, 0);
|
||||
|
|
|
|||
|
|
@ -530,6 +530,9 @@ nv30_vertprog_parse_decl_output(struct nv30_vpc *vpc,
|
|||
return FALSE;
|
||||
}
|
||||
break;
|
||||
case TGSI_SEMANTIC_EDGEFLAG:
|
||||
NOUVEAU_ERR("cannot handle edgeflag output\n");
|
||||
return FALSE;
|
||||
default:
|
||||
NOUVEAU_ERR("bad output semantic\n");
|
||||
return FALSE;
|
||||
|
|
|
|||
|
|
@ -159,7 +159,6 @@ struct nv40_context {
|
|||
unsigned vtxbuf_nr;
|
||||
struct pipe_vertex_element vtxelt[PIPE_MAX_ATTRIBS];
|
||||
unsigned vtxelt_nr;
|
||||
const unsigned *edgeflags;
|
||||
};
|
||||
|
||||
static INLINE struct nv40_context *
|
||||
|
|
|
|||
|
|
@ -687,16 +687,6 @@ nv40_set_vertex_elements(struct pipe_context *pipe, unsigned count,
|
|||
nv40->draw_dirty |= NV40_NEW_ARRAYS;
|
||||
}
|
||||
|
||||
static void
|
||||
nv40_set_edgeflags(struct pipe_context *pipe, const unsigned *bitfield)
|
||||
{
|
||||
struct nv40_context *nv40 = nv40_context(pipe);
|
||||
|
||||
nv40->edgeflags = bitfield;
|
||||
nv40->dirty |= NV40_NEW_ARRAYS;
|
||||
nv40->draw_dirty |= NV40_NEW_ARRAYS;
|
||||
}
|
||||
|
||||
void
|
||||
nv40_init_state_functions(struct nv40_context *nv40)
|
||||
{
|
||||
|
|
@ -736,7 +726,6 @@ nv40_init_state_functions(struct nv40_context *nv40)
|
|||
nv40->pipe.set_scissor_state = nv40_set_scissor_state;
|
||||
nv40->pipe.set_viewport_state = nv40_set_viewport_state;
|
||||
|
||||
nv40->pipe.set_edgeflags = nv40_set_edgeflags;
|
||||
nv40->pipe.set_vertex_buffers = nv40_set_vertex_buffers;
|
||||
nv40->pipe.set_vertex_elements = nv40_set_vertex_elements;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -160,7 +160,6 @@ nv40_state_validate_swtnl(struct nv40_context *nv40)
|
|||
draw_set_viewport_state(draw, &nv40->viewport);
|
||||
|
||||
if (nv40->draw_dirty & NV40_NEW_ARRAYS) {
|
||||
draw_set_edgeflags(draw, nv40->edgeflags);
|
||||
draw_set_vertex_buffers(draw, nv40->vtxbuf_nr, nv40->vtxbuf);
|
||||
draw_set_vertex_elements(draw, nv40->vtxelt_nr, nv40->vtxelt);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -484,11 +484,6 @@ nv40_vbo_validate(struct nv40_context *nv40)
|
|||
unsigned vb_flags = NOUVEAU_BO_VRAM | NOUVEAU_BO_GART | NOUVEAU_BO_RD;
|
||||
int hw;
|
||||
|
||||
if (nv40->edgeflags) {
|
||||
nv40->fallback_swtnl |= NV40_NEW_ARRAYS;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
vtxbuf = so_new(20, 18);
|
||||
so_method(vtxbuf, curie, NV40TCL_VTXBUF_ADDRESS(0), nv40->vtxelt_nr);
|
||||
vtxfmt = so_new(17, 0);
|
||||
|
|
|
|||
|
|
@ -621,6 +621,10 @@ nv40_vertprog_parse_decl_output(struct nv40_vpc *vpc,
|
|||
return FALSE;
|
||||
}
|
||||
break;
|
||||
case TGSI_SEMANTIC_EDGEFLAG:
|
||||
/* not really an error just a fallback */
|
||||
NOUVEAU_ERR("cannot handle edgeflag output\n");
|
||||
return FALSE;
|
||||
default:
|
||||
NOUVEAU_ERR("bad output semantic\n");
|
||||
return FALSE;
|
||||
|
|
|
|||
|
|
@ -48,11 +48,6 @@ nv50_destroy(struct pipe_context *pipe)
|
|||
}
|
||||
|
||||
|
||||
static void
|
||||
nv50_set_edgeflags(struct pipe_context *pipe, const unsigned *bitfield)
|
||||
{
|
||||
}
|
||||
|
||||
struct pipe_context *
|
||||
nv50_create(struct pipe_screen *pscreen, unsigned pctx_id)
|
||||
{
|
||||
|
|
@ -71,7 +66,6 @@ nv50_create(struct pipe_screen *pscreen, unsigned pctx_id)
|
|||
|
||||
nv50->pipe.destroy = nv50_destroy;
|
||||
|
||||
nv50->pipe.set_edgeflags = nv50_set_edgeflags;
|
||||
nv50->pipe.draw_arrays = nv50_draw_arrays;
|
||||
nv50->pipe.draw_elements = nv50_draw_elements;
|
||||
nv50->pipe.clear = nv50_clear;
|
||||
|
|
|
|||
|
|
@ -283,13 +283,6 @@ static void r300_delete_dsa_state(struct pipe_context* pipe,
|
|||
FREE(state);
|
||||
}
|
||||
|
||||
static void r300_set_edgeflags(struct pipe_context* pipe,
|
||||
const unsigned* bitfield)
|
||||
{
|
||||
/* XXX you know it's bad when i915 has this blank too */
|
||||
/* XXX and even worse, I have no idea WTF the bitfield is */
|
||||
}
|
||||
|
||||
static void r300_set_scissor_regs(const struct pipe_scissor_state* state,
|
||||
struct r300_scissor_regs *scissor,
|
||||
boolean is_r500)
|
||||
|
|
@ -840,8 +833,6 @@ void r300_init_state_functions(struct r300_context* r300)
|
|||
r300->context.bind_depth_stencil_alpha_state = r300_bind_dsa_state;
|
||||
r300->context.delete_depth_stencil_alpha_state = r300_delete_dsa_state;
|
||||
|
||||
r300->context.set_edgeflags = r300_set_edgeflags;
|
||||
|
||||
r300->context.set_framebuffer_state = r300_set_framebuffer_state;
|
||||
|
||||
r300->context.create_fs_state = r300_create_fs_state;
|
||||
|
|
|
|||
|
|
@ -77,6 +77,11 @@ static void r300_shader_read_vs_outputs(
|
|||
vs_outputs->fog = i;
|
||||
break;
|
||||
|
||||
case TGSI_SEMANTIC_EDGEFLAG:
|
||||
assert(index == 0);
|
||||
fprintf(stderr, "r300 VP: cannot handle edgeflag output\n");
|
||||
assert(0);
|
||||
break;
|
||||
default:
|
||||
assert(0);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -202,8 +202,6 @@ struct svga_state
|
|||
struct pipe_clip_state clip;
|
||||
struct pipe_viewport_state viewport;
|
||||
|
||||
const unsigned *edgeflags;
|
||||
|
||||
unsigned num_samplers;
|
||||
unsigned num_textures;
|
||||
unsigned num_vertex_elements;
|
||||
|
|
@ -380,9 +378,8 @@ struct svga_context
|
|||
#define SVGA_NEW_NEED_SWTNL 0x400000
|
||||
#define SVGA_NEW_FS_RESULT 0x800000
|
||||
#define SVGA_NEW_VS_RESULT 0x1000000
|
||||
#define SVGA_NEW_EDGEFLAGS 0x2000000
|
||||
#define SVGA_NEW_ZERO_STRIDE 0x4000000
|
||||
#define SVGA_NEW_TEXTURE_FLAGS 0x8000000
|
||||
#define SVGA_NEW_ZERO_STRIDE 0x2000000
|
||||
#define SVGA_NEW_TEXTURE_FLAGS 0x4000000
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -84,18 +84,6 @@ static void svga_set_vertex_elements(struct pipe_context *pipe,
|
|||
}
|
||||
|
||||
|
||||
static void svga_set_edgeflags(struct pipe_context *pipe,
|
||||
const unsigned *bitfield)
|
||||
{
|
||||
struct svga_context *svga = svga_context(pipe);
|
||||
|
||||
if (bitfield != NULL || svga->curr.edgeflags != NULL) {
|
||||
svga->curr.edgeflags = bitfield;
|
||||
svga->dirty |= SVGA_NEW_EDGEFLAGS;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void svga_cleanup_vertex_state( struct svga_context *svga )
|
||||
{
|
||||
unsigned i;
|
||||
|
|
@ -109,7 +97,6 @@ void svga_init_vertex_functions( struct svga_context *svga )
|
|||
{
|
||||
svga->pipe.set_vertex_buffers = svga_set_vertex_buffers;
|
||||
svga->pipe.set_vertex_elements = svga_set_vertex_elements;
|
||||
svga->pipe.set_edgeflags = svga_set_edgeflags;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -108,6 +108,7 @@ static int update_need_pipeline( struct svga_context *svga,
|
|||
{
|
||||
|
||||
boolean need_pipeline = FALSE;
|
||||
struct svga_vertex_shader *vs = svga->curr.vs;
|
||||
|
||||
/* SVGA_NEW_RAST, SVGA_NEW_REDUCED_PRIMITIVE
|
||||
*/
|
||||
|
|
@ -119,11 +120,9 @@ static int update_need_pipeline( struct svga_context *svga,
|
|||
need_pipeline = TRUE;
|
||||
}
|
||||
|
||||
/* SVGA_NEW_EDGEFLAGS
|
||||
/* EDGEFLAGS
|
||||
*/
|
||||
if (svga->curr.rast->hw_unfilled != PIPE_POLYGON_MODE_FILL &&
|
||||
svga->curr.reduced_prim == PIPE_PRIM_TRIANGLES &&
|
||||
svga->curr.edgeflags != NULL) {
|
||||
if (vs->base.info.writes_edgeflag) {
|
||||
SVGA_DBG(DEBUG_SWTNL, "%s: edgeflags\n", __FUNCTION__);
|
||||
need_pipeline = TRUE;
|
||||
}
|
||||
|
|
@ -150,6 +149,7 @@ struct svga_tracked_state svga_update_need_pipeline =
|
|||
"need pipeline",
|
||||
(SVGA_NEW_RAST |
|
||||
SVGA_NEW_CLIP |
|
||||
SVGA_NEW_VS |
|
||||
SVGA_NEW_REDUCED_PRIMITIVE),
|
||||
update_need_pipeline
|
||||
};
|
||||
|
|
|
|||
|
|
@ -120,10 +120,6 @@ static int update_swtnl_draw( struct svga_context *svga,
|
|||
draw_set_mrd(svga->swtnl.draw,
|
||||
svga->curr.depthscale);
|
||||
|
||||
if (dirty & SVGA_NEW_EDGEFLAGS)
|
||||
draw_set_edgeflags( svga->swtnl.draw,
|
||||
svga->curr.edgeflags );
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
@ -138,8 +134,7 @@ struct svga_tracked_state svga_update_swtnl_draw =
|
|||
SVGA_NEW_VIEWPORT |
|
||||
SVGA_NEW_RAST |
|
||||
SVGA_NEW_FRAME_BUFFER |
|
||||
SVGA_NEW_REDUCED_PRIMITIVE |
|
||||
SVGA_NEW_EDGEFLAGS),
|
||||
SVGA_NEW_REDUCED_PRIMITIVE),
|
||||
update_swtnl_draw
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -94,25 +94,6 @@ trace_surface_unwrap(struct trace_context *tr_ctx,
|
|||
}
|
||||
|
||||
|
||||
static INLINE void
|
||||
trace_context_set_edgeflags(struct pipe_context *_pipe,
|
||||
const unsigned *bitfield)
|
||||
{
|
||||
struct trace_context *tr_ctx = trace_context(_pipe);
|
||||
struct pipe_context *pipe = tr_ctx->pipe;
|
||||
|
||||
trace_dump_call_begin("pipe_context", "set_edgeflags");
|
||||
|
||||
trace_dump_arg(ptr, pipe);
|
||||
/* FIXME: we don't know how big this array is */
|
||||
trace_dump_arg(ptr, bitfield);
|
||||
|
||||
pipe->set_edgeflags(pipe, bitfield);
|
||||
|
||||
trace_dump_call_end();
|
||||
}
|
||||
|
||||
|
||||
static INLINE void
|
||||
trace_context_draw_block(struct trace_context *tr_ctx, int flag)
|
||||
{
|
||||
|
|
@ -1298,7 +1279,6 @@ trace_context_create(struct pipe_screen *_screen,
|
|||
tr_ctx->base.winsys = _screen->winsys;
|
||||
tr_ctx->base.screen = _screen;
|
||||
tr_ctx->base.destroy = trace_context_destroy;
|
||||
tr_ctx->base.set_edgeflags = trace_context_set_edgeflags;
|
||||
tr_ctx->base.draw_arrays = trace_context_draw_arrays;
|
||||
tr_ctx->base.draw_elements = trace_context_draw_elements;
|
||||
tr_ctx->base.draw_range_elements = trace_context_draw_range_elements;
|
||||
|
|
|
|||
|
|
@ -507,10 +507,6 @@ class Context(Object):
|
|||
self.real.set_vertex_element(i, elements[i])
|
||||
self.real.set_vertex_elements(num_elements)
|
||||
|
||||
def set_edgeflags(self, bitfield):
|
||||
# FIXME
|
||||
pass
|
||||
|
||||
def dump_vertices(self, start, count):
|
||||
if not self.interpreter.verbosity(2):
|
||||
return
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue