182 #if defined(__i386__) 186 #if defined(USE_IEEE) && !defined(DEBUG) && 0 188 #define IEEE_ONE 0x3f7f0000 195 #define FLOAT_COLOR_TO_UBYTE_COLOR(b, f) \ 197 GLfloat tmp = f + 32768.0F; \ 198 b = ((*(GLuint *)&f >= IEEE_ONE) \ 199 ? (*(GLint *)&f < 0) ? (GLubyte)0 : (GLubyte)255 \ 200 : (GLubyte)*(GLuint *)&tmp); \ 205 #define FLOAT_COLOR_TO_UBYTE_COLOR(b, f) \ 206 b = FloatToInt(CLAMP(f, 0.0F, 1.0F) * 255.0F) 236 ctx->
Current.ByteColor[3] = 255;
266 ctx->
Current.ByteColor[3] = 255;
1124 ctx->
Current.TexCoord[2] = 0.0F;
1125 ctx->
Current.TexCoord[3] = 1.0F;
1138 if (ctx->
VB->TexCoordSize==2) {
1140 ctx->
VB->TexCoordSize = 4;
1168 if (ctx->
VB->TexCoordSize==2) {
1188 if (ctx->
VB->TexCoordSize==2) {
1208 if (ctx->
Light.Enabled) {
1222 ctx->
API.Vertex2f = ctx->
Exec.Vertex2f;
1223 ctx->
API.Vertex3f = ctx->
Exec.Vertex3f;
1224 ctx->
API.Vertex4f = ctx->
Exec.Vertex4f;
1225 ctx->
API.Vertex3fv = ctx->
Exec.Vertex3fv;
1240 if (ctx->
Light.ColorMaterialEnabled) {
1265 ctx->
API.Color3f = ctx->
Exec.Color3f;
1266 ctx->
API.Color3fv = ctx->
Exec.Color3fv;
1267 ctx->
API.Color4f = ctx->
Exec.Color4f;
1268 ctx->
API.Color4fv = ctx->
Exec.Color4fv;
1269 ctx->
API.Color4ub = ctx->
Exec.Color4ub;
1270 ctx->
API.Color4ubv = ctx->
Exec.Color4ubv;
1305 #ifdef GL_VERSION_1_1 1306 if (ctx->
Light.ColorMaterialEnabled
1307 && (ctx->
Eval.Map1Color4 || ctx->
Eval.Map2Color4)) {
1346 begin_time = gl_time();
1367 (*ctx->
Driver.Begin)( ctx,
p );
1371 VB->Start =
VB->Count = 0;
1375 if (
VB->MonoColor) {
1392 VB->Color =
VB->Fcolor;
1393 VB->Index =
VB->Findex;
1435 if (
VB->Count >
VB->Start) {
1449 ctx->BeginEndTime += gl_time() - begin_time;
1450 ctx->BeginEndCount++;
void gl_ColorMat4f(GLcontext *ctx, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
void gl_Color3fv8bit(GLcontext *ctx, const GLfloat *c)
void gl_flush_pb(GLcontext *ctx)
GLubyte GLubyte GLubyte GLubyte w
static void vertex2f_normal_color_tex4(GLcontext *ctx, GLfloat x, GLfloat y)
void gl_set_vertex_function(GLcontext *ctx)
void gl_Color4ub(GLcontext *ctx, GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
static void vertex3f_color_tex4(GLcontext *ctx, GLfloat x, GLfloat y, GLfloat z)
static void vertex3f_index(GLcontext *ctx, GLfloat x, GLfloat y, GLfloat z)
GLdouble GLdouble GLdouble r
static void vertex4(GLcontext *ctx, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
GLuint GLuint GLsizei count
void gl_set_material(GLcontext *ctx, GLuint bitmask, const GLfloat *params)
#define PB_INIT(PB, PRIM)
static void vertex2f_color_tex4(GLcontext *ctx, GLfloat x, GLfloat y)
static void vertex3fv_feedback(GLcontext *ctx, const GLfloat v[3])
GLboolean NewProjectionMatrix
GLboolean NewModelViewMatrix
void gl_eval_vertex(GLcontext *ctx, const GLfloat vertex[4], const GLfloat normal[3], const GLubyte color[4], GLuint index, const GLfloat texcoord[4])
GLint GLint GLint GLint GLint x
struct gl_current_attrib Current
void gl_Color4ubv(GLcontext *ctx, const GLubyte *c)
void gl_ColorMat3fv(GLcontext *ctx, const GLfloat *c)
static void vertex3f_normal(GLcontext *ctx, GLfloat x, GLfloat y, GLfloat z)
void gl_Color4f8bit(GLcontext *ctx, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
void gl_TexCoord2f(GLcontext *ctx, GLfloat s, GLfloat t)
static void vertex3f_normal_color_tex2(GLcontext *ctx, GLfloat x, GLfloat y, GLfloat z)
void gl_Color4ubv8bit(GLcontext *ctx, const GLubyte *c)
void gl_set_color_function(GLcontext *ctx)
static void vertex2f_normal(GLcontext *ctx, GLfloat x, GLfloat y)
#define INSIDE_BEGIN_END(CTX)
void gl_vertex4f_nop(GLcontext *ctx, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
void gl_ColorMat4fv(GLcontext *ctx, const GLfloat *c)
void gl_Normal3f(GLcontext *ctx, GLfloat nx, GLfloat ny, GLfloat nz)
struct dd_function_table Driver
void gl_Color3f8bit(GLcontext *ctx, GLfloat red, GLfloat green, GLfloat blue)
static void vertex3f_color(GLcontext *ctx, GLfloat x, GLfloat y, GLfloat z)
void gl_Color4fv8bit(GLcontext *ctx, const GLfloat *c)
static void vertex2f_color(GLcontext *ctx, GLfloat x, GLfloat y)
#define CLAMP(f, min, max)
static void vertex2f_normal_color_tex2(GLcontext *ctx, GLfloat x, GLfloat y)
void gl_Indexf(GLcontext *ctx, GLfloat c)
void gl_Normal3fv(GLcontext *ctx, const GLfloat *n)
static void vertex3fv_color(GLcontext *ctx, const GLfloat v[3])
static void vertex2f_index(GLcontext *ctx, GLfloat x, GLfloat y)
void gl_ColorMat4ubv(GLcontext *ctx, const GLubyte *c)
void gl_Color3fv(GLcontext *ctx, const GLfloat *c)
void gl_Color4ub8bit(GLcontext *ctx, GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
static void vertex3fv_index(GLcontext *ctx, const GLfloat v[3])
#define COPY_3V(DST, SRC)
#define ASSIGN_4V(V, V0, V1, V2, V3)
struct gl_texture_attrib Texture
#define FLOAT_COLOR_TO_UBYTE_COLOR(b, f)
static void vertex3fv_color_tex2(GLcontext *ctx, const GLfloat v[3])
struct gl_eval_attrib Eval
GLboolean GLboolean GLboolean b
static void vertex3fv_normal_color_tex4(GLcontext *ctx, const GLfloat v[3])
static void vertex3f_color_tex2(GLcontext *ctx, GLfloat x, GLfloat y, GLfloat z)
static void vertex2f_feedback(GLcontext *ctx, GLfloat x, GLfloat y)
static void vertex3f_normal_color_tex4(GLcontext *ctx, GLfloat x, GLfloat y, GLfloat z)
void gl_vertex3fv_nop(GLcontext *ctx, const GLfloat v[3])
void gl_ColorMat3f(GLcontext *ctx, GLfloat red, GLfloat green, GLfloat blue)
GLdouble GLdouble GLdouble GLdouble q
ASSERT((InvokeOnSuccess||InvokeOnError||InvokeOnCancel) ?(CompletionRoutine !=NULL) :TRUE)
static void vertex3fv_normal(GLcontext *ctx, const GLfloat v[3])
static void vertex3f_feedback(GLcontext *ctx, GLfloat x, GLfloat y, GLfloat z)
#define GL_INVALID_OPERATION
struct vertex_buffer * VB
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean flag
static void vertex3fv_color_tex4(GLcontext *ctx, const GLfloat v[3])
void gl_Color4f(GLcontext *ctx, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
GLfloat GLfloat GLfloat GLfloat nx
#define COPY_4UBV(DST, SRC)
void gl_error(GLcontext *ctx, GLenum error, const char *s)
void gl_update_state(GLcontext *ctx)
void gl_End(GLcontext *ctx)
void gl_ColorMat4ub(GLcontext *ctx, GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
void gl_Color3f(GLcontext *ctx, GLfloat red, GLfloat green, GLfloat blue)
#define ASSIGN_3V(V, V0, V1, V2)
GLint GLint GLint GLint GLint GLint y
#define COPY_2V(DST, SRC)
void gl_Indexi(GLcontext *ctx, GLint c)
void gl_EdgeFlag(GLcontext *ctx, GLboolean flag)
void gl_vertex2f_nop(GLcontext *ctx, GLfloat x, GLfloat y)
void gl_vertex3f_nop(GLcontext *ctx, GLfloat x, GLfloat y, GLfloat z)
void gl_Color4fv(GLcontext *ctx, const GLfloat *c)
GLclampf GLclampf GLclampf alpha
void gl_Begin(GLcontext *ctx, GLenum p)
void gl_analyze_modelview_matrix(GLcontext *ctx)
#define GL_TRIANGLE_STRIP
GLboolean GLboolean GLboolean GLboolean a
struct gl_light_attrib Light
struct vertex_buffer * VB
static void vertex4f_feedback(GLcontext *ctx, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
void gl_analyze_projection_matrix(GLcontext *ctx)
static void vertex3fv_normal_color_tex2(GLcontext *ctx, const GLfloat v[3])
void gl_TexCoord4f(GLcontext *ctx, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
void gl_TexCoord2f4(GLcontext *ctx, GLfloat s, GLfloat t)
#define COPY_4V(DST, SRC)
static void vertex2f_color_tex2(GLcontext *ctx, GLfloat x, GLfloat y)