diff --git a/intern/cycles/kernel/kernel_path.h b/intern/cycles/kernel/kernel_path.h index 650e3b0..657fb5d 100644 --- a/intern/cycles/kernel/kernel_path.h +++ b/intern/cycles/kernel/kernel_path.h @@ -675,6 +675,14 @@ ccl_device_inline float4 kernel_path_integrate(KernelGlobals *kg, #endif #ifdef __VOLUME__ + if(!hit && state.volume_stack[0].shader != SHADER_NONE) { + if(kernel_data.background.volume_shader != SHADER_NONE) { + state.volume_stack[1].shader = SHADER_NONE; + } + else { + state.volume_stack[0].shader = SHADER_NONE; + } + } /* volume attenuation, emission, scatter */ if(state.volume_stack[0].shader != SHADER_NONE) { Ray volume_ray = ray;