From 650f1d0a6fc8aaff4b1b5d92e49ee0764f94dc5a Mon Sep 17 00:00:00 2001 From: IRIE Shinsuke Date: Fri, 30 May 2014 22:11:06 +0900 Subject: Blender Internal: Fix for lamp option "Specular" not working when "Only Shadow" is enabled. This is followup to rB8008d9bdfd57. Blender Render and GLSL preview now produce the same results. --- source/blender/render/intern/source/shadeoutput.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'source') diff --git a/source/blender/render/intern/source/shadeoutput.c b/source/blender/render/intern/source/shadeoutput.c index cc781c863a0..ebf88efb50b 100644 --- a/source/blender/render/intern/source/shadeoutput.c +++ b/source/blender/render/intern/source/shadeoutput.c @@ -1466,9 +1466,11 @@ static void shade_one_light(LampRen *lar, ShadeInput *shi, ShadeResult *shr, int shr->shad[1] -= shadfac[3]*shi->g*(1.0f-lashdw[1]); shr->shad[2] -= shadfac[3]*shi->b*(1.0f-lashdw[2]); - shr->spec[0] -= shadfac[3]*shi->specr*(1.0f-lashdw[0]); - shr->spec[1] -= shadfac[3]*shi->specg*(1.0f-lashdw[1]); - shr->spec[2] -= shadfac[3]*shi->specb*(1.0f-lashdw[2]); + if (!(lar->mode & LA_NO_SPEC)) { + shr->spec[0] -= shadfac[3]*shi->specr*(1.0f-lashdw[0]); + shr->spec[1] -= shadfac[3]*shi->specg*(1.0f-lashdw[1]); + shr->spec[2] -= shadfac[3]*shi->specb*(1.0f-lashdw[2]); + } return; } -- cgit v1.2.3