mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-06-19 04:08:25 +02:00
Remove old ubyte-color support code. Update interp, copy_pv for float
colors in VB arrays.
This commit is contained in:
parent
2e5ec27845
commit
10637fed22
1 changed files with 12 additions and 61 deletions
|
|
@ -271,56 +271,7 @@ void TAG(print_vertex)( GLcontext *ctx, const VERTEX *v )
|
|||
fprintf(stderr, "\n");
|
||||
}
|
||||
|
||||
static void do_import( struct vertex_buffer *VB,
|
||||
struct gl_client_array *to,
|
||||
struct gl_client_array *from )
|
||||
{
|
||||
GLuint count = VB->Count;
|
||||
|
||||
if (!to->Ptr) {
|
||||
to->Ptr = ALIGN_MALLOC( VB->Size * 4 * sizeof(GLubyte), 32 );
|
||||
to->Type = GL_UNSIGNED_BYTE;
|
||||
}
|
||||
|
||||
/* No need to transform the same value 3000 times.
|
||||
*/
|
||||
if (!from->StrideB) {
|
||||
to->StrideB = 0;
|
||||
count = 1;
|
||||
}
|
||||
else
|
||||
to->StrideB = 4 * sizeof(GLubyte);
|
||||
|
||||
_math_trans_4ub( (GLubyte (*)[4]) to->Ptr,
|
||||
from->Ptr,
|
||||
from->StrideB,
|
||||
from->Type,
|
||||
from->Size,
|
||||
0,
|
||||
count);
|
||||
}
|
||||
|
||||
#ifndef IMPORT_QUALIFIER
|
||||
#define IMPORT_QUALIFIER static
|
||||
#endif
|
||||
|
||||
IMPORT_QUALIFIER void TAG(import_float_colors)( GLcontext *ctx )
|
||||
{
|
||||
LOCALVARS
|
||||
struct vertex_buffer *VB = &TNL_CONTEXT(ctx)->vb;
|
||||
struct gl_client_array *to = GET_UBYTE_COLOR_STORE();
|
||||
do_import( VB, to, VB->ColorPtr[0] );
|
||||
VB->ColorPtr[0] = to;
|
||||
}
|
||||
|
||||
IMPORT_QUALIFIER void TAG(import_float_spec_colors)( GLcontext *ctx )
|
||||
{
|
||||
LOCALVARS
|
||||
struct vertex_buffer *VB = &TNL_CONTEXT(ctx)->vb;
|
||||
struct gl_client_array *to = GET_UBYTE_SPEC_COLOR_STORE();
|
||||
do_import( VB, to, VB->SecondaryColorPtr[0] );
|
||||
VB->SecondaryColorPtr[0] = to;
|
||||
}
|
||||
|
||||
/* Interpolate the elements of the VB not included in typical hardware
|
||||
* vertices.
|
||||
|
|
@ -344,16 +295,16 @@ INTERP_QUALIFIER void TAG(interp_extras)( GLcontext *ctx,
|
|||
struct vertex_buffer *VB = &TNL_CONTEXT(ctx)->vb;
|
||||
|
||||
if (VB->ColorPtr[1]) {
|
||||
INTERP_4CHAN( t,
|
||||
GET_COLOR(VB->ColorPtr[1], dst),
|
||||
GET_COLOR(VB->ColorPtr[1], out),
|
||||
GET_COLOR(VB->ColorPtr[1], in) );
|
||||
INTERP_4F( t,
|
||||
GET_COLOR(VB->ColorPtr[1], dst),
|
||||
GET_COLOR(VB->ColorPtr[1], out),
|
||||
GET_COLOR(VB->ColorPtr[1], in) );
|
||||
|
||||
if (VB->SecondaryColorPtr[1]) {
|
||||
INTERP_3CHAN( t,
|
||||
GET_COLOR(VB->SecondaryColorPtr[1], dst),
|
||||
GET_COLOR(VB->SecondaryColorPtr[1], out),
|
||||
GET_COLOR(VB->SecondaryColorPtr[1], in) );
|
||||
INTERP_3F( t,
|
||||
GET_COLOR(VB->SecondaryColorPtr[1], dst),
|
||||
GET_COLOR(VB->SecondaryColorPtr[1], out),
|
||||
GET_COLOR(VB->SecondaryColorPtr[1], in) );
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -371,12 +322,12 @@ INTERP_QUALIFIER void TAG(copy_pv_extras)( GLcontext *ctx,
|
|||
struct vertex_buffer *VB = &TNL_CONTEXT(ctx)->vb;
|
||||
|
||||
if (VB->ColorPtr[1]) {
|
||||
COPY_CHAN4( GET_COLOR(VB->ColorPtr[1], dst),
|
||||
GET_COLOR(VB->ColorPtr[1], src) );
|
||||
COPY_4FV( GET_COLOR(VB->ColorPtr[1], dst),
|
||||
GET_COLOR(VB->ColorPtr[1], src) );
|
||||
|
||||
if (VB->SecondaryColorPtr[1]) {
|
||||
COPY_CHAN4( GET_COLOR(VB->SecondaryColorPtr[1], dst),
|
||||
GET_COLOR(VB->SecondaryColorPtr[1], src) );
|
||||
COPY_4FV( GET_COLOR(VB->SecondaryColorPtr[1], dst),
|
||||
GET_COLOR(VB->SecondaryColorPtr[1], src) );
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue