diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2013-06-18 13:36:00 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2013-06-18 13:36:00 +0400 |
commit | 9131adca9f748f794c18c71d36f830a961c218b4 (patch) | |
tree | 42cf5890e0e1b34658967821a542667a7c3b08a8 /intern/cycles/render/light.cpp | |
parent | 943388183d2b3a4503799b0e3c09f34e9be7d85f (diff) |
Cycles: add "Transparent Shadow" option for materials, to disable them per material.
Diffstat (limited to 'intern/cycles/render/light.cpp')
-rw-r--r-- | intern/cycles/render/light.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/intern/cycles/render/light.cpp b/intern/cycles/render/light.cpp index 1d48ae8f87d..2f92b957929 100644 --- a/intern/cycles/render/light.cpp +++ b/intern/cycles/render/light.cpp @@ -164,7 +164,7 @@ void LightManager::device_update_distribution(Device *device, DeviceScene *dscen foreach(uint sindex, mesh->used_shaders) { Shader *shader = scene->shaders[sindex]; - if(shader->sample_as_light && shader->has_surface_emission) { + if(shader->use_mis && shader->has_surface_emission) { have_emission = true; break; } @@ -175,7 +175,7 @@ void LightManager::device_update_distribution(Device *device, DeviceScene *dscen for(size_t i = 0; i < mesh->triangles.size(); i++) { Shader *shader = scene->shaders[mesh->shader[i]]; - if(shader->sample_as_light && shader->has_surface_emission) + if(shader->use_mis && shader->has_surface_emission) num_triangles++; } @@ -184,7 +184,7 @@ void LightManager::device_update_distribution(Device *device, DeviceScene *dscen foreach(Mesh::Curve& curve, mesh->curves) { Shader *shader = scene->shaders[curve.shader]; - if(shader->sample_as_light && shader->has_surface_emission) + if(shader->use_mis && shader->has_surface_emission) num_curve_segments += curve.num_segments(); #endif } @@ -215,7 +215,7 @@ void LightManager::device_update_distribution(Device *device, DeviceScene *dscen foreach(uint sindex, mesh->used_shaders) { Shader *shader = scene->shaders[sindex]; - if(shader->sample_as_light && shader->has_surface_emission) { + if(shader->use_mis && shader->has_surface_emission) { have_emission = true; break; } @@ -247,7 +247,7 @@ void LightManager::device_update_distribution(Device *device, DeviceScene *dscen for(size_t i = 0; i < mesh->triangles.size(); i++) { Shader *shader = scene->shaders[mesh->shader[i]]; - if(shader->sample_as_light && shader->has_surface_emission) { + if(shader->use_mis && shader->has_surface_emission) { distribution[offset].x = totarea; distribution[offset].y = __int_as_float(i + mesh->tri_offset); distribution[offset].z = __int_as_float(shader_id); @@ -277,7 +277,7 @@ void LightManager::device_update_distribution(Device *device, DeviceScene *dscen Shader *shader = scene->shaders[curve.shader]; int first_key = curve.first_key; - if(shader->sample_as_light && shader->has_surface_emission) { + if(shader->use_mis && shader->has_surface_emission) { for(int j = 0; j < curve.num_segments(); j++) { distribution[offset].x = totarea; distribution[offset].y = __int_as_float(i + mesh->curve_offset); // XXX fix kernel code |