diff options
author | Brecht Van Lommel <brecht@blender.org> | 2020-02-18 16:02:40 +0300 |
---|---|---|
committer | Brecht Van Lommel <brecht@blender.org> | 2020-02-18 17:38:11 +0300 |
commit | cef4d344f948ce75a7787ad0c3915c87e1716ca1 (patch) | |
tree | 58850220311846540171ab2a00ca75808d859741 /intern/cycles/render | |
parent | 003a97e0bf509c7eb8b1ae6bdc3f26976d514ab2 (diff) |
Fix Embree failing on objects with a very high number of motion steps
Set the limit to 129 to match Embree. This applies to all devices for
consistent render results.
Ref T73778
Diffstat (limited to 'intern/cycles/render')
-rw-r--r-- | intern/cycles/render/geometry.h | 3 | ||||
-rw-r--r-- | intern/cycles/render/object.h | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/intern/cycles/render/geometry.h b/intern/cycles/render/geometry.h index 711da1c81e8..66ae8472102 100644 --- a/intern/cycles/render/geometry.h +++ b/intern/cycles/render/geometry.h @@ -72,6 +72,9 @@ class Geometry : public Node { uint motion_steps; bool use_motion_blur; + /* Maximum number of motion steps supported (due to Embree). */ + static const uint MAX_MOTION_STEPS = 129; + /* BVH */ BVH *bvh; size_t attr_map_offset; diff --git a/intern/cycles/render/object.h b/intern/cycles/render/object.h index c5d878ec938..7bd3edf769b 100644 --- a/intern/cycles/render/object.h +++ b/intern/cycles/render/object.h @@ -81,6 +81,9 @@ class Object : public Node { int motion_step(float time) const; void update_motion(); + /* Maximum number of motion steps supported (due to Embree). */ + static const uint MAX_MOTION_STEPS = 129; + /* Check whether object is traceable and it worth adding it to * kernel scene. */ |