diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2011-09-12 17:13:56 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2011-09-12 17:13:56 +0400 |
commit | ebc653463ddfd9f8b893b6acbcc6465972e6abc6 (patch) | |
tree | 6b3cc2ba3f04994cf9f8d8f5bca6d63cfe2c9d1f /intern/cycles/render/object.cpp | |
parent | c40492205b4369de3babe63b43d127ca622773ec (diff) |
Cycles:
* Fix missing update when editing objects with emission materials.
* Fix preview pass rendering set to 1 not showing full resolution.
* Fix CUDA runtime compiling failing due to missing cache directory.
* Use settings from first render layer for visibility and material override.
And a bunch of incomplete and still disabled code mostly related to closure
sampling.
Diffstat (limited to 'intern/cycles/render/object.cpp')
-rw-r--r-- | intern/cycles/render/object.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/intern/cycles/render/object.cpp b/intern/cycles/render/object.cpp index fab051bde72..1059254d5c4 100644 --- a/intern/cycles/render/object.cpp +++ b/intern/cycles/render/object.cpp @@ -17,6 +17,7 @@ */ #include "device.h" +#include "light.h" #include "mesh.h" #include "object.h" #include "scene.h" @@ -83,8 +84,15 @@ void Object::apply_transform() void Object::tag_update(Scene *scene) { - if(mesh && mesh->transform_applied) - mesh->need_update = true; + if(mesh) { + if(mesh->transform_applied) + mesh->need_update = true; + + foreach(uint sindex, mesh->used_shaders) + if(scene->shaders[sindex]->has_surface_emission) + scene->light_manager->need_update = true; + } + scene->mesh_manager->need_update = true; scene->object_manager->need_update = true; } |