Cycles: Fix too many objects being considered an instance

This commit is contained in:
Sergey Sharybin 2016-03-31 17:46:22 +02:00
parent 6cc04b408c
commit 185d002586
1 changed files with 6 additions and 1 deletions

View File

@ -512,7 +512,12 @@ void ObjectManager::apply_static_transforms(DeviceScene *dscene, Scene *scene, u
/* apply transforms for objects with single user meshes */
foreach(Object *object, scene->objects) {
if((mesh_users[object->mesh] == 1 && !object->mesh->is_instanced()) &&
/* Annoying feedback loop here: we can't use is_instanced() because
* it'll use uninitialized transform_applied flag.
*
* Could be solved by moving reference counter to Mesh.
*/
if((mesh_users[object->mesh] == 1 && !object->mesh->has_surface_bssrdf) &&
object->mesh->displacement_method == Mesh::DISPLACE_BUMP)
{
if(!(motion_blur && object->use_motion)) {