replaced some tabs with spaces
authorBrian Paul <brian.paul@tungstengraphics.com>
Thu, 13 Sep 2001 21:54:29 +0000 (21:54 +0000)
committerBrian Paul <brian.paul@tungstengraphics.com>
Thu, 13 Sep 2001 21:54:29 +0000 (21:54 +0000)
src/mesa/swrast/s_tritemp.h

index ae381d3..08a725c 100644 (file)
@@ -1,4 +1,4 @@
-/* $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
 {
    typedef struct {
         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;
 
 #ifdef INTERP_Z
       const GLfixed fy2 = FloatToFixed(v2->win[1] - 0.5F) & snapMask;
 
       if (fy0 <= fy1) {
-        if (fy1 <= fy2) {
+         if (fy1 <= fy2) {
             /* y0 <= y1 <= y2 */
-           vMin = v0;   vMid = v1;   vMax = v2;
+            vMin = v0;   vMid = v1;   vMax = v2;
             vMin_fy = fy0;  vMid_fy = fy1;  vMax_fy = fy2;
-        }
-        else if (fy2 <= fy0) {
+         }
+         else if (fy2 <= fy0) {
             /* y2 <= y0 <= y1 */
-           vMin = v2;   vMid = v0;   vMax = v1;
+            vMin = v2;   vMid = v0;   vMax = v1;
             vMin_fy = fy2;  vMid_fy = fy0;  vMax_fy = fy1;
-        }
-        else {
+         }
+         else {
             /* y0 <= y2 <= y1 */
-           vMin = v0;   vMid = v2;   vMax = v1;
+            vMin = v0;   vMid = v2;   vMax = v1;
             vMin_fy = fy0;  vMid_fy = fy2;  vMax_fy = fy1;
             bf = -bf;
-        }
+         }
       }
       else {
-        if (fy0 <= fy2) {
+         if (fy0 <= fy2) {
             /* y1 <= y0 <= y2 */
-           vMin = v1;   vMid = v0;   vMax = v2;
+            vMin = v1;   vMid = v0;   vMax = v2;
             vMin_fy = fy1;  vMid_fy = fy0;  vMax_fy = fy2;
             bf = -bf;
-        }
-        else if (fy2 <= fy1) {
+         }
+         else if (fy2 <= fy1) {
             /* y2 <= y1 <= y0 */
-           vMin = v2;   vMid = v1;   vMax = v0;
+            vMin = v2;   vMid = v1;   vMax = v0;
             vMin_fy = fy2;  vMid_fy = fy1;  vMax_fy = fy0;
             bf = -bf;
-        }
-        else {
+         }
+         else {
             /* y1 <= y2 <= y0 */
-           vMin = v1;   vMid = v2;   vMax = v0;
+            vMin = v1;   vMid = v2;   vMax = v0;
             vMin_fy = fy1;  vMid_fy = fy2;  vMax_fy = fy0;
-        }
+         }
       }
 
       /* fixed point X coords */
 
       /* Do backface culling */
       if (area * bf < 0.0)
-        return;
+         return;
 
       if (area == 0.0F)
          return;
          span.redStep = SignedFloatToFixed(drdx);
          drdy = oneOverArea * (eMaj.dx * eBot_dr - eMaj_dr * eBot.dx);
          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);
          span.greenStep = SignedFloatToFixed(dgdx);
          dgdy = oneOverArea * (eMaj.dx * eBot_dg - eMaj_dg * eBot.dx);
          eBot_db = (GLint) vMid->color[BCOMP] - (GLint) vMin->color[BCOMP];
          dbdx = oneOverArea * (eMaj_db * eBot.dy - eMaj.dy * eBot_db);
          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
          eMaj_da = (GLint) vMax->color[ACOMP] - (GLint) vMin->color[ACOMP];
          eBot_da = (GLint) vMid->color[ACOMP] - (GLint) vMin->color[ACOMP];
          span.redStep = drdx;
          drdy = oneOverArea * (eMaj.dx * eBot_dr - eMaj_dr * eBot.dx);
          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);
          span.greenStep = dgdx;
          dgdy = oneOverArea * (eMaj.dx * eBot_dg - eMaj_dg * eBot.dx);
          eBot_db = vMid->color[BCOMP] - vMin->color[BCOMP];
          dbdx = oneOverArea * (eMaj_db * eBot.dy - eMaj.dy * eBot_db);
          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];
          eBot_da = vMid->color[ACOMP] - vMin->color[ACOMP];
          dadx = oneOverArea * (eMaj_da * eBot.dy - eMaj.dy * eBot_da);
          span.specRedStep = SignedFloatToFixed(dsrdx);
          dsrdy = oneOverArea * (eMaj.dx * eBot_dsr - eMaj_dsr * eBot.dx);
          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);
          span.specGreenStep = SignedFloatToFixed(dsgdx);
          dsgdy = oneOverArea * (eMaj.dx * eBot_dsg - eMaj_dsg * eBot.dx);
          eBot_dsb = (GLint) vMid->specular[BCOMP] - (GLint) vMin->specular[BCOMP];
          dsbdx = oneOverArea * (eMaj_dsb * eBot.dy - eMaj.dy * eBot_dsb);
          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 {
          dsrdx = dsrdy = 0.0F;
          span.specRedStep = dsrdx;
          dsrdy = oneOverArea * (eMaj.dx * eBot_dsr - eMaj_dsr * eBot.dx);
          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);
          span.specGreenStep = dsgdx;
          dsgdy = oneOverArea * (eMaj.dx * eBot_dsg - eMaj_dsg * eBot.dx);
          eBot_dsb = vMid->specular[BCOMP] - vMin->specular[BCOMP];
          dsbdx = oneOverArea * (eMaj_dsb * eBot.dy - eMaj.dy * eBot_dsb);
          span.specBlueStep = dsbdx;
-        dsbdy = oneOverArea * (eMaj.dx * eBot_dsb - eMaj_dsb * eBot.dx);
+         dsbdy = oneOverArea * (eMaj.dx * eBot_dsb - eMaj_dsb * eBot.dx);
       }
       else {
          dsrdx = dsrdy = span.specRedStep = 0;
                                              - eMaj.dy * eBot_ds);
          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);
-        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);
-        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);
-        dvdy = oneOverArea * (eMaj.dx * eBot_dv - eMaj_dv * eBot.dx);
+         dvdy = oneOverArea * (eMaj.dx * eBot_dv - eMaj_dv * eBot.dx);
       }
 #  ifdef INTERP_LAMBDA
       {
                                                    - eMaj.dy * eBot_ds);
                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);
-              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;
-              eBot_du = vMid->texcoord[u][2] * wMid
+               eBot_du = vMid->texcoord[u][2] * wMid
                        - 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);
-              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;
-              eBot_dv = vMid->texcoord[u][3] * wMid
+               eBot_dv = vMid->texcoord[u][3] * wMid
                        - 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);
-              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
                {
                   GLfloat dudx = span.texStep[u][0] * span.texWidth[u];
                                  + dsdy * adjy) + FIXED_HALF;
                   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;
-                 fdtOuter = SignedFloatToFixed(dtdy + dxOuter * dtdx);
-              }
+                  fdtOuter = SignedFloatToFixed(dtdy + dxOuter * dtdx);
+               }
 #endif
 #ifdef INTERP_TEX
                {
                   sLeft = s0 + (span.texStep[0][0] * adjx + dsdy * adjy)
                      * (1.0F/FIXED_SCALE);
                   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);
-                 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);
-                 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);
-                 dvOuter = dvdy + dxOuter * span.texStep[0][3];
+                  dvOuter = dvdy + dxOuter * span.texStep[0][3];
                }
 #endif
 #ifdef INTERP_MULTITEX
                         sLeft[u] = s0 + (span.texStep[u][0] * adjx + dsdy[u]
                                          * adjy) * (1.0F/FIXED_SCALE);
                         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);
-                       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);
-                       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]
                                          * adjy) * (1.0F/FIXED_SCALE);
                         dvOuter[u] = dvdy[u] + dxOuter * span.texStep[u][3];
             fdtInner = fdtOuter + span.intTexStep[1];
 #endif
 #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
 #ifdef INTERP_MULTITEX
             {
                   ft += fdtOuter;
 #endif
 #ifdef INTERP_TEX
-                 sLeft += dsOuter;
-                 tLeft += dtOuter;
-                 uLeft += duOuter;
-                 vLeft += dvOuter;
+                  sLeft += dsOuter;
+                  tLeft += dtOuter;
+                  uLeft += duOuter;
+                  vLeft += dvOuter;
 #endif
 #ifdef INTERP_MULTITEX
                   {
                   ft += fdtInner;
 #endif
 #ifdef INTERP_TEX
-                 sLeft += dsInner;
-                 tLeft += dtInner;
-                 uLeft += duInner;
-                 vLeft += dvInner;
+                  sLeft += dsInner;
+                  tLeft += dtInner;
+                  uLeft += duInner;
+                  vLeft += dvInner;
 #endif
 #ifdef INTERP_MULTITEX
                   {