/*
* Mesa 3-D graphics library
- * Version: 6.5
+ * Version: 6.5.2
*
* Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
*
* These arrays are separated out of sw_span to conserve memory.
*/
struct span_arrays {
- /* XXX the next three fields could go into a union */
- GLchan rgb[MAX_WIDTH][3];
GLchan rgba[MAX_WIDTH][4];
- GLuint index[MAX_WIDTH];
GLchan spec[MAX_WIDTH][4]; /* specular color */
+ GLuint index[MAX_WIDTH];
GLint x[MAX_WIDTH]; /**< X/Y used for point/line rendering only */
GLint y[MAX_WIDTH]; /**< X/Y used for point/line rendering only */
GLuint z[MAX_WIDTH];
/*
* Mesa 3-D graphics library
- * Version: 6.5.1
+ * Version: 6.5.2
*
* Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
*
GLint row;
ASSERT(drawWidth <= MAX_WIDTH);
for (row=0; row<drawHeight; row++) {
+ GLchan rgb[MAX_WIDTH][3];
GLint i;
for (i=0;i<drawWidth;i++) {
- span.array->rgb[i][0] = src[i];
- span.array->rgb[i][1] = src[i];
- span.array->rgb[i][2] = src[i];
+ rgb[i][0] = src[i];
+ rgb[i][1] = src[i];
+ rgb[i][2] = src[i];
}
- rb->PutRowRGB(ctx, rb, drawWidth, destX, destY,
- span.array->rgb, NULL);
+ rb->PutRowRGB(ctx, rb, drawWidth, destX, destY, rgb, NULL);
src += rowLength;
destY++;
}
GLint row;
ASSERT(drawWidth <= MAX_WIDTH);
for (row=0; row<drawHeight; row++) {
+ GLchan rgb[MAX_WIDTH][3];
GLint i;
for (i=0;i<drawWidth;i++) {
- span.array->rgb[i][0] = src[i];
- span.array->rgb[i][1] = src[i];
- span.array->rgb[i][2] = src[i];
+ rgb[i][0] = src[i];
+ rgb[i][1] = src[i];
+ rgb[i][2] = src[i];
}
destY--;
- rb->PutRow(ctx, rb, drawWidth, destX, destY,
- span.array->rgb, NULL);
+ rb->PutRow(ctx, rb, drawWidth, destX, destY, rgb, NULL);
src += rowLength;
}
}
GLint row;
ASSERT(drawWidth <= MAX_WIDTH);
for (row=0; row<drawHeight; row++) {
+ GLchan rgb[MAX_WIDTH][3];
GLint i;
for (i=0;i<drawWidth;i++) {
- span.array->rgb[i][0] = src[i];
- span.array->rgb[i][1] = src[i];
- span.array->rgb[i][2] = src[i];
+ rgb[i][0] = src[i];
+ rgb[i][1] = src[i];
+ rgb[i][2] = src[i];
}
span.x = destX;
span.y = destY;
span.end = drawWidth;
_swrast_write_zoomed_rgb_span(ctx, imgX, imgY, &span,
- (CONST GLchan (*)[3]) span.array->rgb);
+ (CONST GLchan (*)[3]) rgb);
src += rowLength;
destY++;
}
/*
* Mesa 3-D graphics library
- * Version: 6.5
+ * Version: 6.5.2
*
* Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
*
#define RENDER_SPAN( span ) \
GLuint i; \
+ GLchan rgb[MAX_WIDTH][3]; \
span.intTex[0] -= FIXED_HALF; /* off-by-one error? */ \
span.intTex[1] -= FIXED_HALF; \
for (i = 0; i < span.end; i++) { \
GLint t = FixedToInt(span.intTex[1]) & tmask; \
GLint pos = (t << twidth_log2) + s; \
pos = pos + pos + pos; /* multiply by 3 */ \
- span.array->rgb[i][RCOMP] = texture[pos]; \
- span.array->rgb[i][GCOMP] = texture[pos+1]; \
- span.array->rgb[i][BCOMP] = texture[pos+2]; \
+ rgb[i][RCOMP] = texture[pos]; \
+ rgb[i][GCOMP] = texture[pos+1]; \
+ rgb[i][BCOMP] = texture[pos+2]; \
span.intTex[0] += span.intTexStep[0]; \
span.intTex[1] += span.intTexStep[1]; \
} \
- rb->PutRowRGB(ctx, rb, span.end, span.x, span.y, span.array->rgb, NULL);
+ rb->PutRowRGB(ctx, rb, span.end, span.x, span.y, rgb, NULL);
#include "s_tritemp.h"
#define RENDER_SPAN( span ) \
GLuint i; \
+ GLchan rgb[MAX_WIDTH][3]; \
span.intTex[0] -= FIXED_HALF; /* off-by-one error? */ \
span.intTex[1] -= FIXED_HALF; \
for (i = 0; i < span.end; i++) { \
GLint t = FixedToInt(span.intTex[1]) & tmask; \
GLint pos = (t << twidth_log2) + s; \
pos = pos + pos + pos; /* multiply by 3 */ \
- span.array->rgb[i][RCOMP] = texture[pos]; \
- span.array->rgb[i][GCOMP] = texture[pos+1]; \
- span.array->rgb[i][BCOMP] = texture[pos+2]; \
+ rgb[i][RCOMP] = texture[pos]; \
+ rgb[i][GCOMP] = texture[pos+1]; \
+ rgb[i][BCOMP] = texture[pos+2]; \
zRow[i] = z; \
span.array->mask[i] = 1; \
} \
span.intTex[1] += span.intTexStep[1]; \
span.z += span.zStep; \
} \
- rb->PutRowRGB(ctx, rb, span.end, span.x, span.y, \
- span.array->rgb, span.array->mask);
+ rb->PutRowRGB(ctx, rb, span.end, span.x, span.y, rgb, span.array->mask);
#include "s_tritemp.h"