[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [49234] trunk/blender/source/blender/gpu/ intern/gpu_material.c: Fix #32138: material trancpareny setting

Sergey Sharybin sergey.vfx at gmail.com
Thu Jul 26 10:57:41 CEST 2012


Revision: 49234
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=49234
Author:   nazgul
Date:     2012-07-26 08:57:41 +0000 (Thu, 26 Jul 2012)
Log Message:
-----------
Fix #32138: material trancpareny setting

Modified Paths:
--------------
    trunk/blender/source/blender/gpu/intern/gpu_material.c

Modified: trunk/blender/source/blender/gpu/intern/gpu_material.c
===================================================================
--- trunk/blender/source/blender/gpu/intern/gpu_material.c	2012-07-26 08:41:55 UTC (rev 49233)
+++ trunk/blender/source/blender/gpu/intern/gpu_material.c	2012-07-26 08:57:41 UTC (rev 49234)
@@ -1348,6 +1348,7 @@
 void GPU_shadeinput_set(GPUMaterial *mat, Material *ma, GPUShadeInput *shi)
 {
 	float hard = ma->har;
+	float one = 1.0f;
 
 	memset(shi, 0, sizeof(*shi));
 
@@ -1357,7 +1358,12 @@
 	GPU_link(mat, "set_rgb", GPU_uniform(&ma->r), &shi->rgb);
 	GPU_link(mat, "set_rgb", GPU_uniform(&ma->specr), &shi->specrgb);
 	GPU_link(mat, "shade_norm", GPU_builtin(GPU_VIEW_NORMAL), &shi->vn);
-	GPU_link(mat, "set_value", GPU_uniform(&ma->alpha), &shi->alpha);
+
+	if (ma->mode & MA_TRANSP)
+		GPU_link(mat, "set_value", GPU_uniform(&ma->alpha), &shi->alpha);
+	else
+		GPU_link(mat, "set_value", GPU_uniform(&one), &shi->alpha);
+
 	GPU_link(mat, "set_value", GPU_uniform(&ma->ref), &shi->refl);
 	GPU_link(mat, "set_value", GPU_uniform(&ma->spec), &shi->spec);
 	GPU_link(mat, "set_value", GPU_uniform(&ma->emit), &shi->emit);




More information about the Bf-blender-cvs mailing list