Cycles: Correction to integrator's transparent shadows

It was possible that deleting transparent BSDF from shader wouldn't
disable transparent shadows in integrator when doing viewport render.
This commit is contained in:
Sergey Sharybin 2015-09-08 11:47:39 +05:00
parent 6b0544eaaf
commit 92d12ab38b

@ -100,6 +100,7 @@ void Integrator::device_update(Device *device, DeviceScene *dscene, Scene *scene
* transparent shaders in the scene. Otherwise we can disable it * transparent shaders in the scene. Otherwise we can disable it
* to improve performance a bit. */ * to improve performance a bit. */
if(transparent_shadows) { if(transparent_shadows) {
kintegrator->transparent_shadows = false;
foreach(Shader *shader, scene->shaders) { foreach(Shader *shader, scene->shaders) {
/* keep this in sync with SD_HAS_TRANSPARENT_SHADOW in shader.cpp */ /* keep this in sync with SD_HAS_TRANSPARENT_SHADOW in shader.cpp */
if((shader->has_surface_transparent && shader->use_transparent_shadow) || shader->has_volume) { if((shader->has_surface_transparent && shader->use_transparent_shadow) || shader->has_volume) {