43 q[0].
op = OP_Material;
68 v->
scale.Z = -((zsize - 0.5) / 2.0);
98 if (m[12] == 0.0 && m[13] == 0.0 && m[14] == 0.0)
155 v->
coord.Z * m[2] + m[3]);
157 v->
coord.Z * m[6] + m[7]);
159 v->
coord.Z * m[10] + m[11]);
161 v->
coord.Z * m[14] + m[15]);
165 v->
pc.X = (v->
ec.X * m[0] + v->
ec.Y * m[1] +
166 v->
ec.Z * m[2] + v->
ec.W * m[3]);
167 v->
pc.Y = (v->
ec.X * m[4] + v->
ec.Y * m[5] +
168 v->
ec.Z * m[6] + v->
ec.W * m[7]);
169 v->
pc.Z = (v->
ec.X * m[8] + v->
ec.Y * m[9] +
170 v->
ec.Z * m[10] + v->
ec.W * m[11]);
171 v->
pc.W = (v->
ec.X * m[12] + v->
ec.Y * m[13] +
172 v->
ec.Z * m[14] + v->
ec.W * m[15]);
177 v->
normal.X = (n->X * m[0] + n->Y * m[1] + n->Z * m[2]);
178 v->
normal.Y = (n->X * m[4] + n->Y * m[5] + n->Z * m[6]);
179 v->
normal.Z = (n->X * m[8] + n->Y * m[9] + n->Z * m[10]);
190 v->
coord.Z * m[2] + m[3]);
192 v->
coord.Z * m[6] + m[7]);
194 v->
coord.Z * m[10] + m[11]);
199 v->
coord.Z * m[14] + m[15]);
239 gl_vertex_transform(c, v);
334 for (i = 0; i < 2; i++)
void gl_draw_triangle(GLContext *c, GLVertex *p0, GLVertex *p1, GLVertex *p2)
void gl_draw_point(GLContext *c, GLVertex *p0)
void gl_draw_triangle_fill(GLContext *c, GLVertex *p0, GLVertex *p1, GLVertex *p2)
void gl_transform_to_viewport(GLContext *c, GLVertex *v)
void gl_draw_triangle_point(GLContext *c, GLVertex *p0, GLVertex *p1, GLVertex *p2)
void gl_draw_line(GLContext *c, GLVertex *p1, GLVertex *p2)
void gl_draw_triangle_select(GLContext *c, GLVertex *p0, GLVertex *p1, GLVertex *p2)
void gl_draw_triangle_line(GLContext *c, GLVertex *p0, GLVertex *p1, GLVertex *p2)
void gl_fatal_error(char *format,...)
void gl_shade_vertex(GLContext *c, GLVertex *v)
void glopMaterial(GLContext *c, GLParam *p)
void * gl_malloc(int size)
int matrix_model_projection_updated
int color_material_enabled
int matrix_model_projection_no_w_transform
int current_color_material_mode
int current_color_material_type
M4 matrix_model_projection
gl_draw_triangle_func draw_triangle_back
unsigned int longcurrent_color[3]
gl_draw_triangle_func draw_triangle_front
void glopTexCoord(GLContext *c, GLParam *p)
void gl_eval_viewport(GLContext *c)
void glopNormal(GLContext *c, GLParam *p)
void glopVertex(GLContext *c, GLParam *p)
void glopBegin(GLContext *c, GLParam *p)
void glopColor(GLContext *c, GLParam *p)
void glopEnd(GLContext *c, GLParam *param)
void glopEdgeFlag(GLContext *c, GLParam *p)
#define ZB_POINT_Z_FRAC_BITS
void gl_M4_Transpose(M4 *a, M4 *b)
void gl_M4_MulV4(V4 *a, M4 *b, V4 *c)
void gl_M4_Inv(M4 *a, M4 *b)
void gl_M4_Mul(M4 *c, M4 *a, M4 *b)