mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 09:38:07 +02:00
pull-in changes from DRI/Mesa-4.0.4
This commit is contained in:
parent
e1cb2fb571
commit
a9be374f82
6 changed files with 112 additions and 46 deletions
|
|
@ -1,4 +1,3 @@
|
|||
/* $Id: t_dd_vb.c,v 1.16 2001/12/13 10:51:41 keithw Exp $ */
|
||||
|
||||
/*
|
||||
* Mesa 3-D graphics library
|
||||
|
|
@ -195,22 +194,78 @@ void TAG(print_vertex)( GLcontext *ctx, const VERTEX *v )
|
|||
LOCALVARS
|
||||
GLuint format = GET_VERTEX_FORMAT();
|
||||
|
||||
if (format == TINY_VERTEX_FORMAT) {
|
||||
fprintf(stderr, "x %f y %f z %f\n", v->v.x, v->v.y, v->v.z);
|
||||
fprintf(stderr, "r %d g %d b %d a %d\n",
|
||||
fprintf(stderr, "(%x) ", format);
|
||||
|
||||
switch (format) {
|
||||
#if HAVE_TINY_VERTICES
|
||||
case TINY_VERTEX_FORMAT:
|
||||
fprintf(stderr, "xyz %.4f,%.4f,%.4f rgba %x:%x:%x:%x\n",
|
||||
v->v.x, v->v.y, v->v.z,
|
||||
v->tv.color.red,
|
||||
v->tv.color.green,
|
||||
v->tv.color.blue,
|
||||
v->tv.color.alpha);
|
||||
}
|
||||
else {
|
||||
fprintf(stderr, "x %f y %f z %f oow %f\n",
|
||||
v->v.x, v->v.y, v->v.z, v->v.w);
|
||||
fprintf(stderr, "r %d g %d b %d a %d\n",
|
||||
break;
|
||||
#endif
|
||||
#if HAVE_NOTEX_VERTICES
|
||||
case NOTEX_VERTEX_FORMAT:
|
||||
fprintf(stderr, "xyzw %.4f,%.4f,%.4f,%.4f rgba %x:%x:%x:%x spec %x:%x:%x:%x\n",
|
||||
v->v.x, v->v.y, v->v.z, v->v.w,
|
||||
v->v.color.red,
|
||||
v->v.color.green,
|
||||
v->v.color.blue,
|
||||
v->v.color.alpha);
|
||||
v->v.color.alpha,
|
||||
v->v.specular.red,
|
||||
v->v.specular.green,
|
||||
v->v.specular.blue,
|
||||
v->v.specular.alpha);
|
||||
break;
|
||||
#endif
|
||||
#if HAVE_TEX0_VERTICES
|
||||
case TEX0_VERTEX_FORMAT:
|
||||
fprintf(stderr, "xyzw %.4f,%.4f,%.4f,%.4f rgba %x:%x:%x:%x st %.4f,%.4f\n",
|
||||
v->v.x, v->v.y, v->v.z, v->v.w,
|
||||
v->v.color.red,
|
||||
v->v.color.green,
|
||||
v->v.color.blue,
|
||||
v->v.color.alpha,
|
||||
v->v.u0,
|
||||
v->v.v0);
|
||||
break;
|
||||
#endif
|
||||
#if HAVE_TEX1_VERTICES
|
||||
case TEX1_VERTEX_FORMAT:
|
||||
fprintf(stderr, "xyzw %.4f,%.4f,%.4f,%.4f rgba %x:%x:%x:%x st %.4f,%.4f st %.4f,%.4f\n",
|
||||
v->v.x, v->v.y, v->v.z, v->v.w,
|
||||
v->v.color.red,
|
||||
v->v.color.green,
|
||||
v->v.color.blue,
|
||||
v->v.color.alpha,
|
||||
v->v.u0,
|
||||
v->v.v0,
|
||||
v->v.u1,
|
||||
v->v.u2);
|
||||
break;
|
||||
#endif
|
||||
#if HAVE_PTEX_VERTICES
|
||||
case PROJ_TEX1_VERTEX_FORMAT:
|
||||
fprintf(stderr, "xyzw %.4f,%.4f,%.4f,%.4f rgba %x:%x:%x:%x stq %.4f,%.4f,%.4f stq %.4f,%.4f,%.4f\n",
|
||||
v->v.x, v->v.y, v->v.z, v->v.w,
|
||||
v->v.color.red,
|
||||
v->v.color.green,
|
||||
v->v.color.blue,
|
||||
v->v.color.alpha,
|
||||
v->pv.u0,
|
||||
v->pv.v0,
|
||||
v->pv.q0,
|
||||
v->pv.u1,
|
||||
v->pv.v1,
|
||||
v->pv.q1);
|
||||
break;
|
||||
#endif
|
||||
default:
|
||||
fprintf(stderr, "???\n");
|
||||
break;
|
||||
}
|
||||
|
||||
fprintf(stderr, "\n");
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: t_dd_vbtmp.h,v 1.19 2002/08/21 02:59:00 brianp Exp $ */
|
||||
/* $Id: t_dd_vbtmp.h,v 1.20 2002/09/17 15:46:37 brianp Exp $ */
|
||||
|
||||
/*
|
||||
* Mesa 3-D graphics library
|
||||
|
|
@ -61,7 +61,10 @@
|
|||
* unsigned char ub4[4][16];
|
||||
* }
|
||||
*
|
||||
|
||||
|
||||
* VERTEX: hw vertex type as above
|
||||
* VERTEX_COLOR: hw color struct type in VERTEX
|
||||
*
|
||||
* DO_XYZW: Emit xyz and maybe w coordinates.
|
||||
* DO_RGBA: Emit color.
|
||||
* DO_SPEC: Emit specular color.
|
||||
|
|
@ -459,11 +462,11 @@ static void TAG(emit)( GLcontext *ctx, GLuint start, GLuint end,
|
|||
*(GLuint *)&v[3] = LE32_TO_CPU(*(GLuint *)col);
|
||||
}
|
||||
else {
|
||||
GLubyte *b = (GLubyte *)&v[3];
|
||||
b[0] = col[0][2];
|
||||
b[1] = col[0][1];
|
||||
b[2] = col[0][0];
|
||||
b[3] = col[0][3];
|
||||
VERTEX_COLOR *c = (VERTEX_COLOR *)&v[3];
|
||||
c->blue = col[0][2];
|
||||
c->green = col[0][1];
|
||||
c->red = col[0][0];
|
||||
c->alpha = col[0][3];
|
||||
}
|
||||
STRIDE_4UB( col, col_stride );
|
||||
}
|
||||
|
|
@ -483,11 +486,11 @@ static void TAG(emit)( GLcontext *ctx, GLuint start, GLuint end,
|
|||
*(GLuint *)&v[3] = LE32_TO_CPU(*(GLuint *)&col[i]);
|
||||
}
|
||||
else {
|
||||
GLubyte *b = (GLubyte *)&v[3];
|
||||
b[0] = col[i][2];
|
||||
b[1] = col[i][1];
|
||||
b[2] = col[i][0];
|
||||
b[3] = col[i][3];
|
||||
VERTEX_COLOR *c = (VERTEX_COLOR *)&v[3];
|
||||
c->blue = col[i][2];
|
||||
c->green = col[i][1];
|
||||
c->red = col[i][0];
|
||||
c->alpha = col[i][3];
|
||||
}
|
||||
}
|
||||
/* fprintf(stderr, "vert %d: %.2f %.2f %.2f %x\n", */
|
||||
|
|
@ -528,11 +531,11 @@ static void TAG(emit)( GLcontext *ctx, GLuint start, GLuint end,
|
|||
*(GLuint *)v = LE32_TO_CPU(*(GLuint *)col[0]);
|
||||
}
|
||||
else {
|
||||
GLubyte *b = (GLubyte *)v;
|
||||
b[0] = col[0][2];
|
||||
b[1] = col[0][1];
|
||||
b[2] = col[0][0];
|
||||
b[3] = col[0][3];
|
||||
VERTEX_COLOR *c = (VERTEX_COLOR *)v;
|
||||
c->blue = col[0][2];
|
||||
c->green = col[0][1];
|
||||
c->red = col[0][0];
|
||||
c->alpha = col[0][3];
|
||||
}
|
||||
STRIDE_4UB( col, col_stride );
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: s_context.c,v 1.37 2002/08/07 00:45:07 brianp Exp $ */
|
||||
/* $Id: s_context.c,v 1.38 2002/09/17 15:46:34 brianp Exp $ */
|
||||
|
||||
/*
|
||||
* Mesa 3-D graphics library
|
||||
|
|
@ -559,6 +559,24 @@ _swrast_GetDeviceDriverReference( GLcontext *ctx )
|
|||
return &swrast->Driver;
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
_swrast_render_start( GLcontext *ctx )
|
||||
{
|
||||
SWcontext *swrast = SWRAST_CONTEXT(ctx);
|
||||
if (swrast->Driver.SpanRenderStart)
|
||||
swrast->Driver.SpanRenderStart( ctx );
|
||||
}
|
||||
|
||||
void
|
||||
_swrast_render_finish( GLcontext *ctx )
|
||||
{
|
||||
SWcontext *swrast = SWRAST_CONTEXT(ctx);
|
||||
if (swrast->Driver.SpanRenderFinish)
|
||||
swrast->Driver.SpanRenderFinish( ctx );
|
||||
}
|
||||
|
||||
|
||||
#define SWRAST_DEBUG_VERTICES 0
|
||||
|
||||
void
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: swrast.h,v 1.26 2002/08/07 00:45:07 brianp Exp $ */
|
||||
/* $Id: swrast.h,v 1.27 2002/09/17 15:46:36 brianp Exp $ */
|
||||
|
||||
/*
|
||||
* Mesa 3-D graphics library
|
||||
|
|
@ -302,6 +302,11 @@ _swrast_Quad( GLcontext *ctx,
|
|||
extern void
|
||||
_swrast_flush( GLcontext *ctx );
|
||||
|
||||
extern void
|
||||
_swrast_render_start( GLcontext *ctx );
|
||||
|
||||
extern void
|
||||
_swrast_render_finish( GLcontext *ctx );
|
||||
|
||||
/* Tell the software rasterizer about core state changes.
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
/* $Id: ss_context.c,v 1.16 2002/08/08 00:41:11 brianp Exp $ */
|
||||
|
||||
/*
|
||||
* Mesa 3-D graphics library
|
||||
|
|
@ -49,7 +48,6 @@
|
|||
#define _SWSETUP_NEW_RENDERINDEX (_NEW_POLYGON|_NEW_LIGHT)
|
||||
|
||||
|
||||
|
||||
GLboolean
|
||||
_swsetup_CreateContext( GLcontext *ctx )
|
||||
{
|
||||
|
|
@ -117,19 +115,13 @@ _swsetup_RenderStart( GLcontext *ctx )
|
|||
|
||||
swsetup->NewState = 0;
|
||||
|
||||
if (swsetup->Driver.Start)
|
||||
swsetup->Driver.Start( ctx );
|
||||
_swrast_render_start( ctx );
|
||||
}
|
||||
|
||||
static void
|
||||
_swsetup_RenderFinish( GLcontext *ctx )
|
||||
{
|
||||
SScontext *swsetup = SWSETUP_CONTEXT(ctx);
|
||||
|
||||
_swrast_flush( ctx );
|
||||
|
||||
if (swsetup->Driver.Finish)
|
||||
swsetup->Driver.Finish( ctx );
|
||||
_swrast_render_finish( ctx );
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
/* $Id: ss_context.h,v 1.9 2001/07/17 19:39:32 keithw Exp $ */
|
||||
|
||||
/*
|
||||
* Mesa 3-D graphics library
|
||||
|
|
@ -44,12 +43,6 @@ typedef struct {
|
|||
*/
|
||||
struct gl_client_array ChanColor;
|
||||
struct gl_client_array ChanSecondaryColor;
|
||||
|
||||
|
||||
struct {
|
||||
void (*Start)( GLcontext * );
|
||||
void (*Finish)( GLcontext * );
|
||||
} Driver;
|
||||
} SScontext;
|
||||
|
||||
#define SWSETUP_CONTEXT(ctx) ((SScontext *)ctx->swsetup_context)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue