mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-09 06:48:06 +02:00
Replace GL_POLYGON+1 with PRIM_OUTSIDE_BEGIN_END
This commit is contained in:
parent
62620d349b
commit
738f501f73
3 changed files with 13 additions and 10 deletions
|
|
@ -51,7 +51,7 @@ static void fallback_drawarrays( GLcontext *ctx, GLenum mode, GLint start,
|
|||
GLint i;
|
||||
|
||||
assert(!ctx->CompileFlag);
|
||||
assert(ctx->Driver.CurrentExecPrimitive == GL_POLYGON+1);
|
||||
assert(ctx->Driver.CurrentExecPrimitive == PRIM_OUTSIDE_BEGIN_END);
|
||||
|
||||
CALL_Begin(GET_DISPATCH(), (mode));
|
||||
for (i = 0; i < count; i++)
|
||||
|
|
@ -66,7 +66,7 @@ static void fallback_drawelements( GLcontext *ctx, GLenum mode, GLsizei count,
|
|||
GLint i;
|
||||
|
||||
assert(!ctx->CompileFlag);
|
||||
assert(ctx->Driver.CurrentExecPrimitive == GL_POLYGON+1);
|
||||
assert(ctx->Driver.CurrentExecPrimitive == PRIM_OUTSIDE_BEGIN_END);
|
||||
|
||||
/* Here, indices will already reflect the buffer object if active */
|
||||
|
||||
|
|
|
|||
|
|
@ -68,7 +68,7 @@ static void _tnl_wrap_buffers( GLcontext *ctx )
|
|||
GLuint last_prim = tnl->vtx.prim[tnl->vtx.prim_count-1].mode;
|
||||
GLuint last_count;
|
||||
|
||||
if (ctx->Driver.CurrentExecPrimitive != GL_POLYGON+1) {
|
||||
if (ctx->Driver.CurrentExecPrimitive != PRIM_OUTSIDE_BEGIN_END) {
|
||||
GLint i = tnl->vtx.prim_count - 1;
|
||||
assert(i >= 0);
|
||||
tnl->vtx.prim[i].count = ((tnl->vtx.initial_counter -
|
||||
|
|
@ -91,7 +91,7 @@ static void _tnl_wrap_buffers( GLcontext *ctx )
|
|||
*/
|
||||
assert(tnl->vtx.prim_count == 0);
|
||||
|
||||
if (ctx->Driver.CurrentExecPrimitive != GL_POLYGON+1) {
|
||||
if (ctx->Driver.CurrentExecPrimitive != PRIM_OUTSIDE_BEGIN_END) {
|
||||
tnl->vtx.prim[0].mode = ctx->Driver.CurrentExecPrimitive;
|
||||
tnl->vtx.prim[0].start = 0;
|
||||
tnl->vtx.prim[0].count = 0;
|
||||
|
|
@ -735,7 +735,8 @@ static void GLAPIENTRY _tnl_Begin( GLenum mode )
|
|||
{
|
||||
GET_CURRENT_CONTEXT( ctx );
|
||||
|
||||
if (ctx->Driver.CurrentExecPrimitive == GL_POLYGON+1) {
|
||||
if (ctx->Driver.CurrentExecPrimitive == PRIM_OUTSIDE_BEGIN_END) {
|
||||
/* we're not inside a glBegin/End pair */
|
||||
TNLcontext *tnl = TNL_CONTEXT(ctx);
|
||||
int i;
|
||||
|
||||
|
|
@ -768,16 +769,18 @@ static void GLAPIENTRY _tnl_Begin( GLenum mode )
|
|||
|
||||
ctx->Driver.CurrentExecPrimitive = mode;
|
||||
}
|
||||
else
|
||||
else {
|
||||
/* already inside glBegin/End */
|
||||
_mesa_error( ctx, GL_INVALID_OPERATION, "glBegin" );
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static void GLAPIENTRY _tnl_End( void )
|
||||
{
|
||||
GET_CURRENT_CONTEXT( ctx );
|
||||
|
||||
if (ctx->Driver.CurrentExecPrimitive != GL_POLYGON+1) {
|
||||
if (ctx->Driver.CurrentExecPrimitive != PRIM_OUTSIDE_BEGIN_END) {
|
||||
TNLcontext *tnl = TNL_CONTEXT(ctx);
|
||||
int idx = tnl->vtx.initial_counter - tnl->vtx.counter;
|
||||
int i = tnl->vtx.prim_count - 1;
|
||||
|
|
@ -785,7 +788,7 @@ static void GLAPIENTRY _tnl_End( void )
|
|||
tnl->vtx.prim[i].mode |= PRIM_END;
|
||||
tnl->vtx.prim[i].count = idx - tnl->vtx.prim[i].start;
|
||||
|
||||
ctx->Driver.CurrentExecPrimitive = GL_POLYGON+1;
|
||||
ctx->Driver.CurrentExecPrimitive = PRIM_OUTSIDE_BEGIN_END;
|
||||
|
||||
/* Two choices which effect the way vertex attributes are
|
||||
* carried over (or not) between adjacent primitives.
|
||||
|
|
|
|||
|
|
@ -248,7 +248,7 @@ static GLuint _tnl_copy_vertices( GLcontext *ctx )
|
|||
for (i = 0 ; i < ovf ; i++)
|
||||
_mesa_memcpy( dst+i*sz, src+(nr-ovf+i)*sz, sz * sizeof(GLfloat) );
|
||||
return i;
|
||||
case GL_POLYGON+1:
|
||||
case PRIM_OUTSIDE_BEGIN_END:
|
||||
return 0;
|
||||
default:
|
||||
assert(0);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue