<html>
<body>
  <div id="body" style="background-color:#ffffff;" >
<table cellspacing="0" cellpadding="0" border="0" rules="cols">
<tr class="head" style="border-bottom-width:1px;border-bottom-style:solid;" ><td class="headtd" style="padding:0;padding-top:.2em;" colspan="4">Commit in <b><tt>lxdream/src/pvr2</tt></b></td></tr>
<tr><td><tt><a href="#file1">glrender.c</a></tt></td><td id="added" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ddffdd;" align="right">+4</td><td id="removed" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ffdddd;" align="right">-1</td><td class="headtd2" style="padding-left:.3em;padding-right:.3em;" nowrap="nowrap">3bcb705a7ebc -> 9af81878480b</td></tr>
<tr class="alt" style=";" ><td><tt><a href="#file2">scene.c</a></tt></td><td id="addedalt" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ccf7cc;" align="right">+14</td><td id="removed" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ffdddd;" align="right">-2</td><td class="headtd2" style="padding-left:.3em;padding-right:.3em;" nowrap="nowrap">3bcb705a7ebc -> 9af81878480b</td></tr>
<tr><td></td><td id="added" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ddffdd;" align="right">+18</td><td id="removed" class="headtd2" style="padding-left:.3em;padding-right:.3em; background-color:#ffdddd;" align="right">-3</td><td></td></tr>
</table>
<small id="info" style="color: #888888;" >2 modified files</small><br />
<pre class="comment" style="white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;white-space:pre-wrap;word-wrap:break-word;padding:4px;border:1px dashed #000000;background-color:#ffffdd;" >
Eliminate GL_REPLACE tex mode in favour of GL_MODULATE (by setting colour
values to 1.0) - one less case for shaders to care about later
</pre>
<hr /><a name="file1" /><div class="file" style="border:1px solid #eeeeee;margin-top:1em;margin-bottom:1em;" >
<span class="pathname" style="font-family:monospace; float:right;" >lxdream/src/pvr2</span><br />
<div class="fileheader" style="margin-bottom:.5em;" ><big><b>glrender.c</b></big> <small id="info" style="color: #888888;" >3bcb705a7ebc -> 9af81878480b</small></div>
<pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >--- lxdream/src/pvr2/glrender.c
+++ lxdream/src/pvr2/glrender.c
@@ -147,7 +147,10 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" > {
     glShadeModel( POLY1_SHADE_MODEL(poly1) );
     if( POLY1_TEXTURED(poly1) ) {
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-         glTexEnvi( GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, pvr2_poly_texblend[POLY2_TEX_BLEND(poly2)] );
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+        if( POLY2_TEX_BLEND(poly2) == 2 )
+            glTexEnvi( GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_DECAL );
+        else
+            glTexEnvi( GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE );
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >      }
 
      switch( POLY2_FOG_MODE(poly2) ) {
</pre></div>
<hr /><a name="file2" /><div class="file" style="border:1px solid #eeeeee;margin-top:1em;margin-bottom:1em;" >
<span class="pathname" style="font-family:monospace; float:right;" >lxdream/src/pvr2</span><br />
<div class="fileheader" style="margin-bottom:.5em;" ><big><b>scene.c</b></big> <small id="info" style="color: #888888;" >3bcb705a7ebc -> 9af81878480b</small></div>
<pre class="diff" style="margin:0;" ><small id="info" style="color: #888888;" >--- lxdream/src/pvr2/scene.c
+++ lxdream/src/pvr2/scene.c
@@ -275,11 +275,23 @@
</small></pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >             vert->u = *data.fval++;
             vert->v = *data.fval++;
         }
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-        if( POLY2_TEX_BLEND(poly2) == 1 ) {
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+
+        switch( POLY2_TEX_BLEND(poly2) ) {
+        case 0:/* Convert replace => modulate by setting colour values to 1.0 */
+            vert->rgba[0] = vert->rgba[1] = vert->rgba[2] = vert->rgba[3] = 1.0;
+            data.ival++; /* Skip the colour word */
+            break;
+        case 1:
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >             force_alpha = TRUE;
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+            /* fall-through */
+        default: /* Can't handle decal this way */
+            unpack_bgra(*data.ival++, vert->rgba);
+            break;
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >         }
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+    } else {
+        unpack_bgra(*data.ival++, vert->rgba);
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     }
</pre><pre id="removed" class="diff" style="margin:0; background-color:#ffdddd;" >-    unpack_bgra(*data.ival++, vert->rgba);
</pre><pre id="added" class="diff" style="margin:0; background-color:#ddffdd;" >+
</pre><pre id="context" class="diff" style="margin:0; background-color:#eeeeee;" >     if( POLY1_SPECULAR(poly1) ) {
         unpack_bgra(*data.ival++, vert->offset_rgba);
     } else {
</pre></div>
<center><small>Chaos Theory</small></center>
</div></body></html>