-/* $Id: s_aaline.c,v 1.10 2001/05/17 09:32:17 keithw Exp $ */
+/* $Id: s_aaline.c,v 1.11 2001/05/21 18:13:43 brianp Exp $ */
/*
* Mesa 3-D graphics library
#define DO_Z
#define DO_RGBA
#define DO_MULTITEX
+#include "s_aalinetemp.h"
+
+
+#define NAME(x) aa_multitex_spec_##x
+#define DO_Z
+#define DO_RGBA
+#define DO_MULTITEX
#define DO_SPEC
#include "s_aalinetemp.h"
if (ctx->Visual.rgbMode) {
/* RGBA */
if (ctx->Texture._ReallyEnabled) {
- if (ctx->Texture._ReallyEnabled > TEXTURE0_ANY ||
- ctx->Light.Model.ColorControl==GL_SEPARATE_SPECULAR_COLOR ||
- ctx->Fog.ColorSumEnabled)
+ if (ctx->Texture._ReallyEnabled > TEXTURE0_ANY) {
/* Multitextured! */
- swrast->Line = aa_multitex_rgba_line;
- else
+ if (ctx->Light.Model.ColorControl==GL_SEPARATE_SPECULAR_COLOR ||
+ ctx->Fog.ColorSumEnabled)
+ swrast->Line = aa_multitex_spec_line;
+ else
+ swrast->Line = aa_multitex_rgba_line;
+ }
+ else {
swrast->Line = aa_tex_rgba_line;
+ }
}
else {
swrast->Line = aa_rgba_line;
-/* $Id: s_aalinetemp.h,v 1.11 2001/05/17 14:49:38 brianp Exp $ */
+/* $Id: s_aalinetemp.h,v 1.12 2001/05/21 18:13:43 brianp Exp $ */
/*
* Mesa 3-D graphics library
PB_WRITE_MULTITEX_SPEC_PIXEL(pb, ix, iy, z, fog, red, green, blue, alpha,
specRed, specGreen, specBlue, tex);
#else
- PB_WRITE_MULTITEX_PIXEL(pb, ix, iy, z, fog, red, green, blue, alpha, texcoords);
+ PB_WRITE_MULTITEX_PIXEL(pb, ix, iy, z, fog, red, green, blue, alpha, tex);
#endif
#elif defined(DO_TEX)
PB_WRITE_TEX_PIXEL(pb, ix, iy, z, fog, red, green, blue, alpha,
line.texWidth[0] = (GLfloat) texImage->Width;
line.texHeight[0] = (GLfloat) texImage->Height;
}
-#elif defined(DO_MULITEX)
+#elif defined(DO_MULTITEX)
{
GLuint u;
for (u = 0; u < ctx->Const.MaxTextureUnits; u++) {
- if (ctx->Texture.Unit[u].ReallyEnabled) {
- const struct gl_texture_object *obj = ctx->Texture.Unit[u].Current;
+ if (ctx->Texture.Unit[u]._ReallyEnabled) {
+ const struct gl_texture_object *obj = ctx->Texture.Unit[u]._Current;
const struct gl_texture_image *texImage = obj->Image[obj->BaseLevel];
const GLfloat invW0 = v0->win[3];
const GLfloat invW1 = v1->win[3];
- GLfloat (*texCoord)[4] = VB->TexCoordPtr[u]->data;
const GLfloat s0 = v0->texcoord[u][0] * invW0;
const GLfloat s1 = v1->texcoord[u][0] * invW1;
const GLfloat t0 = v0->texcoord[u][1] * invW0;
const GLfloat q1 = v1->texcoord[u][3] * invW0;
compute_plane(line.x0, line.y0, line.x1, line.y1, s0, s1, line.sPlane[u]);
compute_plane(line.x0, line.y0, line.x1, line.y1, t0, t1, line.tPlane[u]);
- compute_plane(line.x0, line.y0, line.x1, line.y1, u0, u1, line.uPlane[u]);
- compute_plane(line.x0, line.y0, line.x1, line.y1, v0, v1, line.vPlane[u]);
+ compute_plane(line.x0, line.y0, line.x1, line.y1, r0, r1, line.uPlane[u]);
+ compute_plane(line.x0, line.y0, line.x1, line.y1, q0, q1, line.vPlane[u]);
line.texWidth[u] = (GLfloat) texImage->Width;
line.texHeight[u] = (GLfloat) texImage->Height;
}
-/* $Id: s_lines.c,v 1.17 2001/05/17 09:32:17 keithw Exp $ */
+/* $Id: s_lines.c,v 1.18 2001/05/21 18:13:43 brianp Exp $ */
/*
* Mesa 3-D graphics library
pbspec[count][BCOMP] = FixedToInt(sb0); \
for (u = 0; u < ctx->Const.MaxTextureUnits; u++) { \
if (ctx->Texture.Unit[u]._ReallyEnabled) { \
- PB->s[u][0] = fragTexcoord[u][0]; \
- PB->s[u][1] = fragTexcoord[u][1]; \
- PB->s[u][2] = fragTexcoord[u][2]; \
- PB->s[u][3] = fragTexcoord[u][3]; \
+ PB->s[u][count] = fragTexcoord[u][0]; \
+ PB->t[u][count] = fragTexcoord[u][1]; \
+ PB->u[u][count] = fragTexcoord[u][2]; \
} \
} \
count++; \
pbspec[count][BCOMP] = FixedToInt(sb0); \
for (u = 0; u < ctx->Const.MaxTextureUnits; u++) { \
if (ctx->Texture.Unit[u]._ReallyEnabled) { \
- PB->s[u][0] = fragTexcoord[u][0]; \
- PB->s[u][1] = fragTexcoord[u][1]; \
- PB->s[u][2] = fragTexcoord[u][2]; \
- PB->s[u][3] = fragTexcoord[u][3]; \
+ PB->s[u][count] = fragTexcoord[u][0]; \
+ PB->t[u][count] = fragTexcoord[u][1]; \
+ PB->u[u][count] = fragTexcoord[u][2]; \
} \
} \
count++; \
pbspec[count][BCOMP] = sBlue; \
for (u = 0; u < ctx->Const.MaxTextureUnits; u++) { \
if (ctx->Texture.Unit[u]._ReallyEnabled) { \
- PB->s[u][0] = fragTexcoord[u][0]; \
- PB->s[u][1] = fragTexcoord[u][1]; \
- PB->s[u][2] = fragTexcoord[u][2]; \
- PB->s[u][3] = fragTexcoord[u][3]; \
+ PB->s[u][count] = fragTexcoord[u][0]; \
+ PB->t[u][count] = fragTexcoord[u][1]; \
+ PB->u[u][count] = fragTexcoord[u][2]; \
} \
} \
count++; \
pbspec[count][BCOMP] = sBlue; \
for (u = 0; u < ctx->Const.MaxTextureUnits; u++) { \
if (ctx->Texture.Unit[u]._ReallyEnabled) { \
- PB->s[u][0] = fragTexcoord[u][0]; \
- PB->s[u][1] = fragTexcoord[u][1]; \
- PB->s[u][2] = fragTexcoord[u][2]; \
- PB->s[u][3] = fragTexcoord[u][3]; \
+ PB->s[u][count] = fragTexcoord[u][0]; \
+ PB->t[u][count] = fragTexcoord[u][1]; \
+ PB->u[u][count] = fragTexcoord[u][2]; \
} \
} \
count++; \