diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2015-07-13 16:22:36 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2015-07-13 16:24:56 +0300 |
commit | 686e8e452c2c40839283e66022e84c7be4cef230 (patch) | |
tree | 335e63813852af0ce318ee1629544cb6f6c9e376 | |
parent | 2d32b92d77bf0c0f5fc3827277d26a26bbbb2580 (diff) |
Fix T45390: Cycles experimental displacement method ignores scaling when render
From artists perspective it makes sense to always apply displacement in a local
space.
TODO: Double-check that BVH is being packed properly. From quick tests seems it's
all fine, but might be missing some obvious failure still.
-rw-r--r-- | intern/cycles/render/object.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/intern/cycles/render/object.cpp b/intern/cycles/render/object.cpp index 4a57ac4dff1..ec85aa8f80b 100644 --- a/intern/cycles/render/object.cpp +++ b/intern/cycles/render/object.cpp @@ -512,7 +512,9 @@ 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) { + if(mesh_users[object->mesh] == 1 && + object->mesh->displacement_method == Mesh::DISPLACE_BUMP) + { if(!(motion_blur && object->use_motion)) { if(!object->mesh->transform_applied) { object->apply_transform(apply_to_motion); |