This is an automated email from the git hooks/post-receive script.

smcv pushed a commit to annotated tag 1.5a
in repository iortcw.

commit 40963cb343a31904da284602eb8b4de8f34444a4
Author: MAN-AT-ARMS <m4n4t4...@gmail.com>
Date:   Wed Oct 19 20:01:53 2016 -0400

    All: Rend2: Fix vertex color types in tr_backend
---
 MP/code/rend2/tr_backend.c | 21 ++++++++++++---------
 SP/code/rend2/tr_backend.c | 45 ++++++++++++++++++++++++---------------------
 2 files changed, 36 insertions(+), 30 deletions(-)

diff --git a/MP/code/rend2/tr_backend.c b/MP/code/rend2/tr_backend.c
index aade234..2e196ee 100644
--- a/MP/code/rend2/tr_backend.c
+++ b/MP/code/rend2/tr_backend.c
@@ -1147,16 +1147,19 @@ const void *RB_StretchPicGradient( const void *data ) {
        tess.indexes[ numIndexes + 4 ] = numVerts + 0;
        tess.indexes[ numIndexes + 5 ] = numVerts + 1;
 
-//     *(int *)tess.color[ numVerts ] =
-//             *(int *)tess.color[ numVerts + 1 ] =
-//             *(int *)tess.color[ numVerts + 2 ] =
-//             *(int *)tess.color[ numVerts + 3 ] = *(int *)backEnd.color2D;
-
-       *(int *)tess.color[ numVerts ] =
-               *(int *)tess.color[ numVerts + 1 ] = *(int *)backEnd.color2D;
+       {
+               uint16_t color[4];
+ 
+               VectorScale4(backEnd.color2D, 257, color);
+ 
+               VectorCopy4(color, tess.color[ numVerts ]);
+               VectorCopy4(color, tess.color[ numVerts + 1]);
+               
+               VectorScale4(cmd->gradientColor, 257, color);
 
-       *(int *)tess.color[ numVerts + 2 ] =
-               *(int *)tess.color[ numVerts + 3 ] = *(int *)cmd->gradientColor;
+               VectorCopy4(color, tess.color[ numVerts + 2]);
+               VectorCopy4(color, tess.color[ numVerts + 3 ]);
+       }
 
        tess.xyz[ numVerts ][0] = cmd->x;
        tess.xyz[ numVerts ][1] = cmd->y;
diff --git a/SP/code/rend2/tr_backend.c b/SP/code/rend2/tr_backend.c
index 764bf45..e3811f7 100644
--- a/SP/code/rend2/tr_backend.c
+++ b/SP/code/rend2/tr_backend.c
@@ -703,39 +703,39 @@ hitCheckDone:
 }
 
 void RB_ZombieFXShowFleshHits( trZombieFleshHitverts_t *fleshHitVerts, int 
oldNumVerts, int numSurfVerts ) {
-       byte *vertColors;
+       uint16_t *vertColors;
        unsigned short *vertHits;
        int i;
 
-       vertColors = (byte *)tess.color[oldNumVerts];
+       vertColors = tess.color[oldNumVerts];
        vertHits = fleshHitVerts->vertHits;
 
        // for each hit entry, adjust that verts alpha component
        for ( i = 0; i < fleshHitVerts->numHits; i++, vertHits++ ) {
-               if ( vertColors[( *vertHits ) * 4 + 3] < 
ZOMBIEFX_PERHIT_TAKEALPHA ) {
+               if ( vertColors[( *vertHits ) * 4 + 3] < 
ZOMBIEFX_PERHIT_TAKEALPHA * 257 ) {
                        vertColors[( *vertHits ) * 4 + 3] = 0;
                } else {
-                       vertColors[( *vertHits ) * 4 + 3] -= 
ZOMBIEFX_PERHIT_TAKEALPHA;
+                       vertColors[( *vertHits ) * 4 + 3] -= 
ZOMBIEFX_PERHIT_TAKEALPHA * 257;
                }
        }
 }
 
 void RB_ZombieFXDecompose( int oldNumVerts, int numSurfVerts, float 
deltaTimeScale ) {
-       byte *vertColors;
+       uint16_t *vertColors;
        float   *xyz;
        int16_t *norm;
        vec3_t fNorm;
        int i;
        float alpha;
 
-       vertColors = (byte *)tess.color[oldNumVerts];
+       vertColors = tess.color[oldNumVerts];
        xyz = tess.xyz[oldNumVerts];
        norm = tess.normal[oldNumVerts];
 
        for ( i = 0; i < numSurfVerts; i++, vertColors += 4, xyz += 4, norm += 
4 ) {
-               alpha = 255.0 * ( (float)( 1 + i % 3 ) / 3.0 ) * deltaTimeScale 
* 2;
-               if ( alpha > 255.0 ) {
-                       alpha = 255.0;
+               alpha = 65535.0 * ( (float)( 1 + i % 3 ) / 3.0 ) * 
deltaTimeScale * 2;
+               if ( alpha > 65535.0 ) {
+                       alpha = 65535.0;
                }
                if ( (float)vertColors[3] - alpha < 0 ) {
                        vertColors[3] = 0;
@@ -751,13 +751,13 @@ void RB_ZombieFXDecompose( int oldNumVerts, int 
numSurfVerts, float deltaTimeSca
 }
 
 void RB_ZombieFXFullAlpha( int oldNumVerts, int numSurfVerts ) {
-       byte *vertColors;
+       uint16_t *vertColors;
        int i;
 
-       vertColors = (byte *)tess.color[oldNumVerts];
+       vertColors = tess.color[oldNumVerts];
 
        for ( i = 0; i < numSurfVerts; i++, vertColors += 4 ) {
-               vertColors[3] = 255;
+               vertColors[3] = 65535;
        }
 }
 
@@ -1397,16 +1397,19 @@ const void *RB_StretchPicGradient( const void *data ) {
        tess.indexes[ numIndexes + 4 ] = numVerts + 0;
        tess.indexes[ numIndexes + 5 ] = numVerts + 1;
 
-//     *(int *)tess.color[ numVerts ] =
-//             *(int *)tess.color[ numVerts + 1 ] =
-//             *(int *)tess.color[ numVerts + 2 ] =
-//             *(int *)tess.color[ numVerts + 3 ] = *(int *)backEnd.color2D;
-
-       *(int *)tess.color[ numVerts ] =
-               *(int *)tess.color[ numVerts + 1 ] = *(int *)backEnd.color2D;
+       {
+               uint16_t color[4];
+ 
+               VectorScale4(backEnd.color2D, 257, color);
+ 
+               VectorCopy4(color, tess.color[ numVerts ]);
+               VectorCopy4(color, tess.color[ numVerts + 1]);
+               
+               VectorScale4(cmd->gradientColor, 257, color);
 
-       *(int *)tess.color[ numVerts + 2 ] =
-               *(int *)tess.color[ numVerts + 3 ] = *(int *)cmd->gradientColor;
+               VectorCopy4(color, tess.color[ numVerts + 2]);
+               VectorCopy4(color, tess.color[ numVerts + 3 ]);
+       }
 
        tess.xyz[ numVerts ][0] = cmd->x;
        tess.xyz[ numVerts ][1] = cmd->y;

-- 
Alioth's /usr/local/bin/git-commit-notice on 
/srv/git.debian.org/git/pkg-games/iortcw.git

_______________________________________________
Pkg-games-commits mailing list
Pkg-games-commits@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-games-commits

Reply via email to