diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2013-06-13 00:47:48 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2013-06-13 00:47:48 +0400 |
commit | a5f60e933755357bb54f821c5011ebc108de772c (patch) | |
tree | 03beb50932b1406344868e2ba0f23f4ee9b68c45 /intern/cycles/blender/blender_session.cpp | |
parent | 69e7fb6091207e38bec4f51c11e6fcdbd71f736e (diff) |
Fix #35723: cycles motion blur rendering issue after recent optimizations to skip
some unneeded object syncing.
Diffstat (limited to 'intern/cycles/blender/blender_session.cpp')
-rw-r--r-- | intern/cycles/blender/blender_session.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/intern/cycles/blender/blender_session.cpp b/intern/cycles/blender/blender_session.cpp index c981e379333..ecdc631e39a 100644 --- a/intern/cycles/blender/blender_session.cpp +++ b/intern/cycles/blender/blender_session.cpp @@ -102,12 +102,16 @@ void BlenderSession::create_session() /* create sync */ sync = new BlenderSync(b_engine, b_data, b_scene, scene, !background, session->progress, session_params.device.type == DEVICE_CPU); - /* for final render we will do data sync per render layer */ if(b_v3d) { + /* full data sync */ sync->sync_data(b_v3d, b_engine.camera_override()); sync->sync_view(b_v3d, b_rv3d, width, height); } else { + /* for final render we will do full data sync per render layer, only + * do some basic syncing here, no objects or materials for speed */ + sync->sync_render_layers(b_v3d, NULL); + sync->sync_integrator(); sync->sync_camera(b_render, b_engine.camera_override(), width, height); } @@ -373,8 +377,8 @@ void BlenderSession::render() scene->integrator->tag_update(scene); /* update scene */ - sync->sync_data(b_v3d, b_engine.camera_override(), b_rlay_name.c_str()); sync->sync_camera(b_render, b_engine.camera_override(), width, height); + sync->sync_data(b_v3d, b_engine.camera_override(), b_rlay_name.c_str()); /* update number of samples per layer */ int samples = sync->get_layer_samples(); |