From 9f2d33a6524d40c1e01a3fec8dab276094bf9940 Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Thu, 7 Jan 2016 11:45:13 +0500 Subject: Cycles: Fix wrong transparency flag being set to integrator Patch from be28706 made it so integrator will use last shader's transparent shadow flag, which is wrong since last shader might not have transparent shadow while shaders prior to it might have one. --- intern/cycles/render/shader.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'intern/cycles/render/shader.cpp') diff --git a/intern/cycles/render/shader.cpp b/intern/cycles/render/shader.cpp index d6e854b0b5c..6e8004e6ce8 100644 --- a/intern/cycles/render/shader.cpp +++ b/intern/cycles/render/shader.cpp @@ -386,7 +386,7 @@ void ShaderManager::device_update_common(Device *device, shader_flag[i++] = flag; shader_flag[i++] = shader->pass_id; - has_transparent_shadow = (flag & SD_HAS_TRANSPARENT_SHADOW) != 0; + has_transparent_shadow |= (flag & SD_HAS_TRANSPARENT_SHADOW) != 0; } device->tex_alloc("__shader_flag", dscene->shader_flag); -- cgit v1.2.3