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

smcv pushed a commit to annotated tag 1.42d
in repository iortcw.

commit a9b7f4dcb953a1f7aa900bcde335ef3ea6ef2865
Author: MAN-AT-ARMS <m4n4t4...@gmail.com>
Date:   Thu Dec 3 17:39:01 2015 -0500

    All: Rend2: Automatically load textures with a _s suffix as specular
---
 MP/code/rend2/tr_shader.c | 21 +++++++++++++++++++++
 SP/code/rend2/tr_shader.c | 21 +++++++++++++++++++++
 2 files changed, 42 insertions(+)

diff --git a/MP/code/rend2/tr_shader.c b/MP/code/rend2/tr_shader.c
index bbfa0bf..c5ba330 100644
--- a/MP/code/rend2/tr_shader.c
+++ b/MP/code/rend2/tr_shader.c
@@ -2280,12 +2280,33 @@ static void CollapseStagesToLightall(shaderStage_t 
*diffuse,
 
        if (r_specularMapping->integer)
        {
+               image_t *diffuseImg;
                if (specular)
                {
                        //ri.Printf(PRINT_ALL, ", specularmap %s", 
specular->bundle[0].image[0]->imgName);
                        diffuse->bundle[TB_SPECULARMAP] = specular->bundle[0];
                        VectorCopy4(specular->specularScale, 
diffuse->specularScale);
                }
+               else if ((lightmap || useLightVector || useLightVertex) && 
(diffuseImg = diffuse->bundle[TB_DIFFUSEMAP].image[0]))
+               {
+                       char specularName[MAX_QPATH];
+                       image_t *specularImg;
+                       imgFlags_t specularFlags = (diffuseImg->flags & 
~(IMGFLAG_GENNORMALMAP | IMGFLAG_SRGB)) | IMGFLAG_NOLIGHTSCALE;
+
+                       COM_StripExtension(diffuseImg->imgName, specularName, 
MAX_QPATH);
+                       Q_strcat(specularName, MAX_QPATH, "_s");
+
+                       specularImg = R_FindImageFile(specularName, 
IMGTYPE_COLORALPHA, specularFlags);
+
+                       if (specularImg)
+                       {
+                               diffuse->bundle[TB_SPECULARMAP] = 
diffuse->bundle[0];
+                               
diffuse->bundle[TB_SPECULARMAP].numImageAnimations = 0;
+                               diffuse->bundle[TB_SPECULARMAP].image[0] = 
specularImg;
+
+                               VectorSet4(diffuse->specularScale, 1.0f, 1.0f, 
1.0f, 1.0f);
+                       }
+               }
        }
 
        if (tcgen || diffuse->bundle[0].numTexMods)
diff --git a/SP/code/rend2/tr_shader.c b/SP/code/rend2/tr_shader.c
index c355afb..47f9a36 100644
--- a/SP/code/rend2/tr_shader.c
+++ b/SP/code/rend2/tr_shader.c
@@ -2301,12 +2301,33 @@ static void CollapseStagesToLightall(shaderStage_t 
*diffuse,
 
        if (r_specularMapping->integer)
        {
+               image_t *diffuseImg;
                if (specular)
                {
                        //ri.Printf(PRINT_ALL, ", specularmap %s", 
specular->bundle[0].image[0]->imgName);
                        diffuse->bundle[TB_SPECULARMAP] = specular->bundle[0];
                        VectorCopy4(specular->specularScale, 
diffuse->specularScale);
                }
+               else if ((lightmap || useLightVector || useLightVertex) && 
(diffuseImg = diffuse->bundle[TB_DIFFUSEMAP].image[0]))
+               {
+                       char specularName[MAX_QPATH];
+                       image_t *specularImg;
+                       imgFlags_t specularFlags = (diffuseImg->flags & 
~(IMGFLAG_GENNORMALMAP | IMGFLAG_SRGB)) | IMGFLAG_NOLIGHTSCALE;
+
+                       COM_StripExtension(diffuseImg->imgName, specularName, 
MAX_QPATH);
+                       Q_strcat(specularName, MAX_QPATH, "_s");
+
+                       specularImg = R_FindImageFile(specularName, 
IMGTYPE_COLORALPHA, specularFlags);
+
+                       if (specularImg)
+                       {
+                               diffuse->bundle[TB_SPECULARMAP] = 
diffuse->bundle[0];
+                               
diffuse->bundle[TB_SPECULARMAP].numImageAnimations = 0;
+                               diffuse->bundle[TB_SPECULARMAP].image[0] = 
specularImg;
+
+                               VectorSet4(diffuse->specularScale, 1.0f, 1.0f, 
1.0f, 1.0f);
+                       }
+               }
        }
 
        if (tcgen || diffuse->bundle[0].numTexMods)

-- 
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