Fix cycles motion blur not working correct with shutter time > 2.0. The soft
limit is 2.0, and anything beyond that is extrapolation which might not work so well but is still allowed.
This commit is contained in:
@@ -19,6 +19,7 @@
|
||||
#include "bvh.h"
|
||||
#include "bvh_build.h"
|
||||
|
||||
#include "camera.h"
|
||||
#include "device.h"
|
||||
#include "shader.h"
|
||||
#include "light.h"
|
||||
@@ -722,6 +723,7 @@ void MeshManager::device_update(Device *device, DeviceScene *dscene, Scene *scen
|
||||
foreach(Shader *shader, scene->shaders)
|
||||
shader->need_update_attributes = false;
|
||||
|
||||
float shuttertime = scene->camera->shuttertime;
|
||||
#ifdef __OBJECT_MOTION__
|
||||
Scene::MotionType need_motion = scene->need_motion(device->info.advanced_shading);
|
||||
bool motion_blur = need_motion == Scene::MOTION_BLUR;
|
||||
@@ -730,7 +732,7 @@ void MeshManager::device_update(Device *device, DeviceScene *dscene, Scene *scen
|
||||
#endif
|
||||
|
||||
foreach(Object *object, scene->objects)
|
||||
object->compute_bounds(motion_blur);
|
||||
object->compute_bounds(motion_blur, shuttertime);
|
||||
|
||||
if(progress.get_cancel()) return;
|
||||
|
||||
|
Reference in New Issue
Block a user