Browse Source

replaced some tabs with spaces

tags/mesa_4_0
Brian Paul 24 years ago
parent
commit
d22554d2ce
1 changed files with 94 additions and 94 deletions
  1. 94
    94
      src/mesa/swrast/s_tritemp.h

+ 94
- 94
src/mesa/swrast/s_tritemp.h View File

/* $Id: s_tritemp.h,v 1.24 2001/08/14 14:08:44 brianp Exp $ */
/* $Id: s_tritemp.h,v 1.25 2001/09/13 21:54:29 brianp Exp $ */


/* /*
* Mesa 3-D graphics library * Mesa 3-D graphics library
{ {
typedef struct { typedef struct {
const SWvertex *v0, *v1; /* Y(v0) < Y(v1) */ const SWvertex *v0, *v1; /* Y(v0) < Y(v1) */
GLfloat dx; /* X(v1) - X(v0) */
GLfloat dy; /* Y(v1) - Y(v0) */
GLfixed fdxdy; /* dx/dy in fixed-point */
GLfixed fsx; /* first sample point x coord */
GLfixed fsy;
GLfloat adjy; /* adjust from v[0]->fy to fsy, scaled */
GLint lines; /* number of lines to be sampled on this edge */
GLfixed fx0; /* fixed pt X of lower endpoint */
GLfloat dx; /* X(v1) - X(v0) */
GLfloat dy; /* Y(v1) - Y(v0) */
GLfixed fdxdy; /* dx/dy in fixed-point */
GLfixed fsx; /* first sample point x coord */
GLfixed fsy;
GLfloat adjy; /* adjust from v[0]->fy to fsy, scaled */
GLint lines; /* number of lines to be sampled on this edge */
GLfixed fx0; /* fixed pt X of lower endpoint */
} EdgeT; } EdgeT;


#ifdef INTERP_Z #ifdef INTERP_Z
const GLfixed fy2 = FloatToFixed(v2->win[1] - 0.5F) & snapMask; const GLfixed fy2 = FloatToFixed(v2->win[1] - 0.5F) & snapMask;


if (fy0 <= fy1) { if (fy0 <= fy1) {
if (fy1 <= fy2) {
if (fy1 <= fy2) {
/* y0 <= y1 <= y2 */ /* y0 <= y1 <= y2 */
vMin = v0; vMid = v1; vMax = v2;
vMin = v0; vMid = v1; vMax = v2;
vMin_fy = fy0; vMid_fy = fy1; vMax_fy = fy2; vMin_fy = fy0; vMid_fy = fy1; vMax_fy = fy2;
}
else if (fy2 <= fy0) {
}
else if (fy2 <= fy0) {
/* y2 <= y0 <= y1 */ /* y2 <= y0 <= y1 */
vMin = v2; vMid = v0; vMax = v1;
vMin = v2; vMid = v0; vMax = v1;
vMin_fy = fy2; vMid_fy = fy0; vMax_fy = fy1; vMin_fy = fy2; vMid_fy = fy0; vMax_fy = fy1;
}
else {
}
else {
/* y0 <= y2 <= y1 */ /* y0 <= y2 <= y1 */
vMin = v0; vMid = v2; vMax = v1;
vMin = v0; vMid = v2; vMax = v1;
vMin_fy = fy0; vMid_fy = fy2; vMax_fy = fy1; vMin_fy = fy0; vMid_fy = fy2; vMax_fy = fy1;
bf = -bf; bf = -bf;
}
}
} }
else { else {
if (fy0 <= fy2) {
if (fy0 <= fy2) {
/* y1 <= y0 <= y2 */ /* y1 <= y0 <= y2 */
vMin = v1; vMid = v0; vMax = v2;
vMin = v1; vMid = v0; vMax = v2;
vMin_fy = fy1; vMid_fy = fy0; vMax_fy = fy2; vMin_fy = fy1; vMid_fy = fy0; vMax_fy = fy2;
bf = -bf; bf = -bf;
}
else if (fy2 <= fy1) {
}
else if (fy2 <= fy1) {
/* y2 <= y1 <= y0 */ /* y2 <= y1 <= y0 */
vMin = v2; vMid = v1; vMax = v0;
vMin = v2; vMid = v1; vMax = v0;
vMin_fy = fy2; vMid_fy = fy1; vMax_fy = fy0; vMin_fy = fy2; vMid_fy = fy1; vMax_fy = fy0;
bf = -bf; bf = -bf;
}
else {
}
else {
/* y1 <= y2 <= y0 */ /* y1 <= y2 <= y0 */
vMin = v1; vMid = v2; vMax = v0;
vMin = v1; vMid = v2; vMax = v0;
vMin_fy = fy1; vMid_fy = fy2; vMax_fy = fy0; vMin_fy = fy1; vMid_fy = fy2; vMax_fy = fy0;
}
}
} }


/* fixed point X coords */ /* fixed point X coords */


/* Do backface culling */ /* Do backface culling */
if (area * bf < 0.0) if (area * bf < 0.0)
return;
return;


if (area == 0.0F) if (area == 0.0F)
return; return;
span.redStep = SignedFloatToFixed(drdx); span.redStep = SignedFloatToFixed(drdx);
drdy = oneOverArea * (eMaj.dx * eBot_dr - eMaj_dr * eBot.dx); drdy = oneOverArea * (eMaj.dx * eBot_dr - eMaj_dr * eBot.dx);
eMaj_dg = (GLint) vMax->color[GCOMP] - (GLint) vMin->color[GCOMP]; eMaj_dg = (GLint) vMax->color[GCOMP] - (GLint) vMin->color[GCOMP];
eBot_dg = (GLint) vMid->color[GCOMP] - (GLint) vMin->color[GCOMP];
eBot_dg = (GLint) vMid->color[GCOMP] - (GLint) vMin->color[GCOMP];
dgdx = oneOverArea * (eMaj_dg * eBot.dy - eMaj.dy * eBot_dg); dgdx = oneOverArea * (eMaj_dg * eBot.dy - eMaj.dy * eBot_dg);
span.greenStep = SignedFloatToFixed(dgdx); span.greenStep = SignedFloatToFixed(dgdx);
dgdy = oneOverArea * (eMaj.dx * eBot_dg - eMaj_dg * eBot.dx); dgdy = oneOverArea * (eMaj.dx * eBot_dg - eMaj_dg * eBot.dx);
eBot_db = (GLint) vMid->color[BCOMP] - (GLint) vMin->color[BCOMP]; eBot_db = (GLint) vMid->color[BCOMP] - (GLint) vMin->color[BCOMP];
dbdx = oneOverArea * (eMaj_db * eBot.dy - eMaj.dy * eBot_db); dbdx = oneOverArea * (eMaj_db * eBot.dy - eMaj.dy * eBot_db);
span.blueStep = SignedFloatToFixed(dbdx); span.blueStep = SignedFloatToFixed(dbdx);
dbdy = oneOverArea * (eMaj.dx * eBot_db - eMaj_db * eBot.dx);
dbdy = oneOverArea * (eMaj.dx * eBot_db - eMaj_db * eBot.dx);
# ifdef INTERP_ALPHA # ifdef INTERP_ALPHA
eMaj_da = (GLint) vMax->color[ACOMP] - (GLint) vMin->color[ACOMP]; eMaj_da = (GLint) vMax->color[ACOMP] - (GLint) vMin->color[ACOMP];
eBot_da = (GLint) vMid->color[ACOMP] - (GLint) vMin->color[ACOMP]; eBot_da = (GLint) vMid->color[ACOMP] - (GLint) vMin->color[ACOMP];
span.redStep = drdx; span.redStep = drdx;
drdy = oneOverArea * (eMaj.dx * eBot_dr - eMaj_dr * eBot.dx); drdy = oneOverArea * (eMaj.dx * eBot_dr - eMaj_dr * eBot.dx);
eMaj_dg = vMax->color[GCOMP] - vMin->color[GCOMP]; eMaj_dg = vMax->color[GCOMP] - vMin->color[GCOMP];
eBot_dg = vMid->color[GCOMP] - vMin->color[GCOMP];
eBot_dg = vMid->color[GCOMP] - vMin->color[GCOMP];
dgdx = oneOverArea * (eMaj_dg * eBot.dy - eMaj.dy * eBot_dg); dgdx = oneOverArea * (eMaj_dg * eBot.dy - eMaj.dy * eBot_dg);
span.greenStep = dgdx; span.greenStep = dgdx;
dgdy = oneOverArea * (eMaj.dx * eBot_dg - eMaj_dg * eBot.dx); dgdy = oneOverArea * (eMaj.dx * eBot_dg - eMaj_dg * eBot.dx);
eBot_db = vMid->color[BCOMP] - vMin->color[BCOMP]; eBot_db = vMid->color[BCOMP] - vMin->color[BCOMP];
dbdx = oneOverArea * (eMaj_db * eBot.dy - eMaj.dy * eBot_db); dbdx = oneOverArea * (eMaj_db * eBot.dy - eMaj.dy * eBot_db);
span.blueStep = dbdx; span.blueStep = dbdx;
dbdy = oneOverArea * (eMaj.dx * eBot_db - eMaj_db * eBot.dx);
dbdy = oneOverArea * (eMaj.dx * eBot_db - eMaj_db * eBot.dx);
eMaj_da = vMax->color[ACOMP] - vMin->color[ACOMP]; eMaj_da = vMax->color[ACOMP] - vMin->color[ACOMP];
eBot_da = vMid->color[ACOMP] - vMin->color[ACOMP]; eBot_da = vMid->color[ACOMP] - vMin->color[ACOMP];
dadx = oneOverArea * (eMaj_da * eBot.dy - eMaj.dy * eBot_da); dadx = oneOverArea * (eMaj_da * eBot.dy - eMaj.dy * eBot_da);
span.specRedStep = SignedFloatToFixed(dsrdx); span.specRedStep = SignedFloatToFixed(dsrdx);
dsrdy = oneOverArea * (eMaj.dx * eBot_dsr - eMaj_dsr * eBot.dx); dsrdy = oneOverArea * (eMaj.dx * eBot_dsr - eMaj_dsr * eBot.dx);
eMaj_dsg = (GLint) vMax->specular[GCOMP] - (GLint) vMin->specular[GCOMP]; eMaj_dsg = (GLint) vMax->specular[GCOMP] - (GLint) vMin->specular[GCOMP];
eBot_dsg = (GLint) vMid->specular[GCOMP] - (GLint) vMin->specular[GCOMP];
eBot_dsg = (GLint) vMid->specular[GCOMP] - (GLint) vMin->specular[GCOMP];
dsgdx = oneOverArea * (eMaj_dsg * eBot.dy - eMaj.dy * eBot_dsg); dsgdx = oneOverArea * (eMaj_dsg * eBot.dy - eMaj.dy * eBot_dsg);
span.specGreenStep = SignedFloatToFixed(dsgdx); span.specGreenStep = SignedFloatToFixed(dsgdx);
dsgdy = oneOverArea * (eMaj.dx * eBot_dsg - eMaj_dsg * eBot.dx); dsgdy = oneOverArea * (eMaj.dx * eBot_dsg - eMaj_dsg * eBot.dx);
eBot_dsb = (GLint) vMid->specular[BCOMP] - (GLint) vMin->specular[BCOMP]; eBot_dsb = (GLint) vMid->specular[BCOMP] - (GLint) vMin->specular[BCOMP];
dsbdx = oneOverArea * (eMaj_dsb * eBot.dy - eMaj.dy * eBot_dsb); dsbdx = oneOverArea * (eMaj_dsb * eBot.dy - eMaj.dy * eBot_dsb);
span.specBlueStep = SignedFloatToFixed(dsbdx); span.specBlueStep = SignedFloatToFixed(dsbdx);
dsbdy = oneOverArea * (eMaj.dx * eBot_dsb - eMaj_dsb * eBot.dx);
dsbdy = oneOverArea * (eMaj.dx * eBot_dsb - eMaj_dsb * eBot.dx);
} }
else { else {
dsrdx = dsrdy = 0.0F; dsrdx = dsrdy = 0.0F;
span.specRedStep = dsrdx; span.specRedStep = dsrdx;
dsrdy = oneOverArea * (eMaj.dx * eBot_dsr - eMaj_dsr * eBot.dx); dsrdy = oneOverArea * (eMaj.dx * eBot_dsr - eMaj_dsr * eBot.dx);
eMaj_dsg = vMax->specular[GCOMP] - vMin->specular[GCOMP]; eMaj_dsg = vMax->specular[GCOMP] - vMin->specular[GCOMP];
eBot_dsg = vMid->specular[GCOMP] - vMin->specular[GCOMP];
eBot_dsg = vMid->specular[GCOMP] - vMin->specular[GCOMP];
dsgdx = oneOverArea * (eMaj_dsg * eBot.dy - eMaj.dy * eBot_dsg); dsgdx = oneOverArea * (eMaj_dsg * eBot.dy - eMaj.dy * eBot_dsg);
span.specGreenStep = dsgdx; span.specGreenStep = dsgdx;
dsgdy = oneOverArea * (eMaj.dx * eBot_dsg - eMaj_dsg * eBot.dx); dsgdy = oneOverArea * (eMaj.dx * eBot_dsg - eMaj_dsg * eBot.dx);
eBot_dsb = vMid->specular[BCOMP] - vMin->specular[BCOMP]; eBot_dsb = vMid->specular[BCOMP] - vMin->specular[BCOMP];
dsbdx = oneOverArea * (eMaj_dsb * eBot.dy - eMaj.dy * eBot_dsb); dsbdx = oneOverArea * (eMaj_dsb * eBot.dy - eMaj.dy * eBot_dsb);
span.specBlueStep = dsbdx; span.specBlueStep = dsbdx;
dsbdy = oneOverArea * (eMaj.dx * eBot_dsb - eMaj_dsb * eBot.dx);
dsbdy = oneOverArea * (eMaj.dx * eBot_dsb - eMaj_dsb * eBot.dx);
} }
else { else {
dsrdx = dsrdy = span.specRedStep = 0; dsrdx = dsrdy = span.specRedStep = 0;
- eMaj.dy * eBot_ds); - eMaj.dy * eBot_ds);
dsdy = oneOverArea * (eMaj.dx * eBot_ds - eMaj_ds * eBot.dx); dsdy = oneOverArea * (eMaj.dx * eBot_ds - eMaj_ds * eBot.dx);


eMaj_dt = vMax->texcoord[0][1] * wMax - vMin->texcoord[0][1] * wMin;
eBot_dt = vMid->texcoord[0][1] * wMid - vMin->texcoord[0][1] * wMin;
span.texStep[0][1] = oneOverArea * (eMaj_dt * eBot.dy
eMaj_dt = vMax->texcoord[0][1] * wMax - vMin->texcoord[0][1] * wMin;
eBot_dt = vMid->texcoord[0][1] * wMid - vMin->texcoord[0][1] * wMin;
span.texStep[0][1] = oneOverArea * (eMaj_dt * eBot.dy
- eMaj.dy * eBot_dt); - eMaj.dy * eBot_dt);
dtdy = oneOverArea * (eMaj.dx * eBot_dt - eMaj_dt * eBot.dx);
dtdy = oneOverArea * (eMaj.dx * eBot_dt - eMaj_dt * eBot.dx);


eMaj_du = vMax->texcoord[0][2] * wMax - vMin->texcoord[0][2] * wMin;
eBot_du = vMid->texcoord[0][2] * wMid - vMin->texcoord[0][2] * wMin;
span.texStep[0][2] = oneOverArea * (eMaj_du * eBot.dy
eMaj_du = vMax->texcoord[0][2] * wMax - vMin->texcoord[0][2] * wMin;
eBot_du = vMid->texcoord[0][2] * wMid - vMin->texcoord[0][2] * wMin;
span.texStep[0][2] = oneOverArea * (eMaj_du * eBot.dy
- eMaj.dy * eBot_du); - eMaj.dy * eBot_du);
dudy = oneOverArea * (eMaj.dx * eBot_du - eMaj_du * eBot.dx);
dudy = oneOverArea * (eMaj.dx * eBot_du - eMaj_du * eBot.dx);


eMaj_dv = vMax->texcoord[0][3] * wMax - vMin->texcoord[0][3] * wMin;
eBot_dv = vMid->texcoord[0][3] * wMid - vMin->texcoord[0][3] * wMin;
span.texStep[0][3] = oneOverArea * (eMaj_dv * eBot.dy
eMaj_dv = vMax->texcoord[0][3] * wMax - vMin->texcoord[0][3] * wMin;
eBot_dv = vMid->texcoord[0][3] * wMid - vMin->texcoord[0][3] * wMin;
span.texStep[0][3] = oneOverArea * (eMaj_dv * eBot.dy
- eMaj.dy * eBot_dv); - eMaj.dy * eBot_dv);
dvdy = oneOverArea * (eMaj.dx * eBot_dv - eMaj_dv * eBot.dx);
dvdy = oneOverArea * (eMaj.dx * eBot_dv - eMaj_dv * eBot.dx);
} }
# ifdef INTERP_LAMBDA # ifdef INTERP_LAMBDA
{ {
- eMaj.dy * eBot_ds); - eMaj.dy * eBot_ds);
dsdy[u] = oneOverArea * (eMaj.dx * eBot_ds - eMaj_ds * eBot.dx); dsdy[u] = oneOverArea * (eMaj.dx * eBot_ds - eMaj_ds * eBot.dx);


eMaj_dt = vMax->texcoord[u][1] * wMax
- vMin->texcoord[u][1] * wMin;
eBot_dt = vMid->texcoord[u][1] * wMid
- vMin->texcoord[u][1] * wMin;
span.texStep[u][1] = oneOverArea * (eMaj_dt * eBot.dy
eMaj_dt = vMax->texcoord[u][1] * wMax
- vMin->texcoord[u][1] * wMin;
eBot_dt = vMid->texcoord[u][1] * wMid
- vMin->texcoord[u][1] * wMin;
span.texStep[u][1] = oneOverArea * (eMaj_dt * eBot.dy
- eMaj.dy * eBot_dt); - eMaj.dy * eBot_dt);
dtdy[u] = oneOverArea * (eMaj.dx * eBot_dt - eMaj_dt * eBot.dx);
dtdy[u] = oneOverArea * (eMaj.dx * eBot_dt - eMaj_dt * eBot.dx);


eMaj_du = vMax->texcoord[u][2] * wMax
eMaj_du = vMax->texcoord[u][2] * wMax
- vMin->texcoord[u][2] * wMin; - vMin->texcoord[u][2] * wMin;
eBot_du = vMid->texcoord[u][2] * wMid
eBot_du = vMid->texcoord[u][2] * wMid
- vMin->texcoord[u][2] * wMin; - vMin->texcoord[u][2] * wMin;
span.texStep[u][2] = oneOverArea * (eMaj_du * eBot.dy
span.texStep[u][2] = oneOverArea * (eMaj_du * eBot.dy
- eMaj.dy * eBot_du); - eMaj.dy * eBot_du);
dudy[u] = oneOverArea * (eMaj.dx * eBot_du - eMaj_du * eBot.dx);
dudy[u] = oneOverArea * (eMaj.dx * eBot_du - eMaj_du * eBot.dx);


eMaj_dv = vMax->texcoord[u][3] * wMax
eMaj_dv = vMax->texcoord[u][3] * wMax
- vMin->texcoord[u][3] * wMin; - vMin->texcoord[u][3] * wMin;
eBot_dv = vMid->texcoord[u][3] * wMid
eBot_dv = vMid->texcoord[u][3] * wMid
- vMin->texcoord[u][3] * wMin; - vMin->texcoord[u][3] * wMin;
span.texStep[u][3] = oneOverArea * (eMaj_dv * eBot.dy
span.texStep[u][3] = oneOverArea * (eMaj_dv * eBot.dy
- eMaj.dy * eBot_dv); - eMaj.dy * eBot_dv);
dvdy[u] = oneOverArea * (eMaj.dx * eBot_dv - eMaj_dv * eBot.dx);
dvdy[u] = oneOverArea * (eMaj.dx * eBot_dv - eMaj_dv * eBot.dx);
# ifdef INTERP_LAMBDA # ifdef INTERP_LAMBDA
{ {
GLfloat dudx = span.texStep[u][0] * span.texWidth[u]; GLfloat dudx = span.texStep[u][0] * span.texWidth[u];
+ dsdy * adjy) + FIXED_HALF; + dsdy * adjy) + FIXED_HALF;
fdsOuter = SignedFloatToFixed(dsdy + dxOuter * dsdx); fdsOuter = SignedFloatToFixed(dsdy + dxOuter * dsdx);


t0 = vLower->texcoord[0][1] * T_SCALE;
ft = (GLfixed)(t0 * FIXED_SCALE + dtdx * adjx
t0 = vLower->texcoord[0][1] * T_SCALE;
ft = (GLfixed)(t0 * FIXED_SCALE + dtdx * adjx
+ dtdy * adjy) + FIXED_HALF; + dtdy * adjy) + FIXED_HALF;
fdtOuter = SignedFloatToFixed(dtdy + dxOuter * dtdx);
}
fdtOuter = SignedFloatToFixed(dtdy + dxOuter * dtdx);
}
#endif #endif
#ifdef INTERP_TEX #ifdef INTERP_TEX
{ {
sLeft = s0 + (span.texStep[0][0] * adjx + dsdy * adjy) sLeft = s0 + (span.texStep[0][0] * adjx + dsdy * adjy)
* (1.0F/FIXED_SCALE); * (1.0F/FIXED_SCALE);
dsOuter = dsdy + dxOuter * span.texStep[0][0]; dsOuter = dsdy + dxOuter * span.texStep[0][0];
t0 = vLower->texcoord[0][1] * invW;
tLeft = t0 + (span.texStep[0][1] * adjx + dtdy * adjy)
t0 = vLower->texcoord[0][1] * invW;
tLeft = t0 + (span.texStep[0][1] * adjx + dtdy * adjy)
* (1.0F/FIXED_SCALE); * (1.0F/FIXED_SCALE);
dtOuter = dtdy + dxOuter * span.texStep[0][1];
u0 = vLower->texcoord[0][2] * invW;
uLeft = u0 + (span.texStep[0][2] * adjx + dudy * adjy)
dtOuter = dtdy + dxOuter * span.texStep[0][1];
u0 = vLower->texcoord[0][2] * invW;
uLeft = u0 + (span.texStep[0][2] * adjx + dudy * adjy)
* (1.0F/FIXED_SCALE); * (1.0F/FIXED_SCALE);
duOuter = dudy + dxOuter * span.texStep[0][2];
v0 = vLower->texcoord[0][3] * invW;
vLeft = v0 + (span.texStep[0][3] * adjx + dvdy * adjy)
duOuter = dudy + dxOuter * span.texStep[0][2];
v0 = vLower->texcoord[0][3] * invW;
vLeft = v0 + (span.texStep[0][3] * adjx + dvdy * adjy)
* (1.0F/FIXED_SCALE); * (1.0F/FIXED_SCALE);
dvOuter = dvdy + dxOuter * span.texStep[0][3];
dvOuter = dvdy + dxOuter * span.texStep[0][3];
} }
#endif #endif
#ifdef INTERP_MULTITEX #ifdef INTERP_MULTITEX
sLeft[u] = s0 + (span.texStep[u][0] * adjx + dsdy[u] sLeft[u] = s0 + (span.texStep[u][0] * adjx + dsdy[u]
* adjy) * (1.0F/FIXED_SCALE); * adjy) * (1.0F/FIXED_SCALE);
dsOuter[u] = dsdy[u] + dxOuter * span.texStep[u][0]; dsOuter[u] = dsdy[u] + dxOuter * span.texStep[u][0];
t0 = vLower->texcoord[u][1] * invW;
tLeft[u] = t0 + (span.texStep[u][1] * adjx + dtdy[u]
t0 = vLower->texcoord[u][1] * invW;
tLeft[u] = t0 + (span.texStep[u][1] * adjx + dtdy[u]
* adjy) * (1.0F/FIXED_SCALE); * adjy) * (1.0F/FIXED_SCALE);
dtOuter[u] = dtdy[u] + dxOuter * span.texStep[u][1];
u0 = vLower->texcoord[u][2] * invW;
uLeft[u] = u0 + (span.texStep[u][2] * adjx + dudy[u]
dtOuter[u] = dtdy[u] + dxOuter * span.texStep[u][1];
u0 = vLower->texcoord[u][2] * invW;
uLeft[u] = u0 + (span.texStep[u][2] * adjx + dudy[u]
* adjy) * (1.0F/FIXED_SCALE); * adjy) * (1.0F/FIXED_SCALE);
duOuter[u] = dudy[u] + dxOuter * span.texStep[u][2];
v0 = vLower->texcoord[u][3] * invW;
duOuter[u] = dudy[u] + dxOuter * span.texStep[u][2];
v0 = vLower->texcoord[u][3] * invW;
vLeft[u] = v0 + (span.texStep[u][3] * adjx + dvdy[u] vLeft[u] = v0 + (span.texStep[u][3] * adjx + dvdy[u]
* adjy) * (1.0F/FIXED_SCALE); * adjy) * (1.0F/FIXED_SCALE);
dvOuter[u] = dvdy[u] + dxOuter * span.texStep[u][3]; dvOuter[u] = dvdy[u] + dxOuter * span.texStep[u][3];
fdtInner = fdtOuter + span.intTexStep[1]; fdtInner = fdtOuter + span.intTexStep[1];
#endif #endif
#ifdef INTERP_TEX #ifdef INTERP_TEX
dsInner = dsOuter + span.texStep[0][0];
dtInner = dtOuter + span.texStep[0][1];
duInner = duOuter + span.texStep[0][2];
dvInner = dvOuter + span.texStep[0][3];
dsInner = dsOuter + span.texStep[0][0];
dtInner = dtOuter + span.texStep[0][1];
duInner = duOuter + span.texStep[0][2];
dvInner = dvOuter + span.texStep[0][3];
#endif #endif
#ifdef INTERP_MULTITEX #ifdef INTERP_MULTITEX
{ {
ft += fdtOuter; ft += fdtOuter;
#endif #endif
#ifdef INTERP_TEX #ifdef INTERP_TEX
sLeft += dsOuter;
tLeft += dtOuter;
uLeft += duOuter;
vLeft += dvOuter;
sLeft += dsOuter;
tLeft += dtOuter;
uLeft += duOuter;
vLeft += dvOuter;
#endif #endif
#ifdef INTERP_MULTITEX #ifdef INTERP_MULTITEX
{ {
ft += fdtInner; ft += fdtInner;
#endif #endif
#ifdef INTERP_TEX #ifdef INTERP_TEX
sLeft += dsInner;
tLeft += dtInner;
uLeft += duInner;
vLeft += dvInner;
sLeft += dsInner;
tLeft += dtInner;
uLeft += duInner;
vLeft += dvInner;
#endif #endif
#ifdef INTERP_MULTITEX #ifdef INTERP_MULTITEX
{ {

Loading…
Cancel
Save