[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [57417] trunk/blender/intern/cycles/ blender: Fix #35723: cycles motion blur rendering issue after recent optimizations to skip
Brecht Van Lommel
brechtvanlommel at pandora.be
Wed Jun 12 22:47:48 CEST 2013
Revision: 57417
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=57417
Author: blendix
Date: 2013-06-12 20:47:48 +0000 (Wed, 12 Jun 2013)
Log Message:
-----------
Fix #35723: cycles motion blur rendering issue after recent optimizations to skip
some unneeded object syncing.
Modified Paths:
--------------
trunk/blender/intern/cycles/blender/blender_session.cpp
trunk/blender/intern/cycles/blender/blender_sync.h
Modified: trunk/blender/intern/cycles/blender/blender_session.cpp
===================================================================
--- trunk/blender/intern/cycles/blender/blender_session.cpp 2013-06-12 20:47:46 UTC (rev 57416)
+++ trunk/blender/intern/cycles/blender/blender_session.cpp 2013-06-12 20:47:48 UTC (rev 57417)
@@ -102,12 +102,16 @@
/* 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 @@
scene->integrator->tag_update(scene);
/* update scene */
+ 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());
- sync->sync_camera(b_render, b_engine.camera_override(), width, height);
/* update number of samples per layer */
int samples = sync->get_layer_samples();
Modified: trunk/blender/intern/cycles/blender/blender_sync.h
===================================================================
--- trunk/blender/intern/cycles/blender/blender_sync.h 2013-06-12 20:47:46 UTC (rev 57416)
+++ trunk/blender/intern/cycles/blender/blender_sync.h 2013-06-12 20:47:48 UTC (rev 57417)
@@ -56,6 +56,8 @@
/* sync */
bool sync_recalc();
void sync_data(BL::SpaceView3D b_v3d, BL::Object b_override, const char *layer = 0);
+ void sync_render_layers(BL::SpaceView3D b_v3d, const char *layer);
+ void sync_integrator();
void sync_camera(BL::RenderSettings b_render, BL::Object b_override, int width, int height);
void sync_view(BL::SpaceView3D b_v3d, BL::RegionView3D b_rv3d, int width, int height);
int get_layer_samples() { return render_layer.samples; }
@@ -74,10 +76,8 @@
void sync_objects(BL::SpaceView3D b_v3d, int motion = 0);
void sync_motion(BL::SpaceView3D b_v3d, BL::Object b_override);
void sync_film();
- void sync_integrator();
void sync_view();
void sync_world(bool update_all);
- void sync_render_layers(BL::SpaceView3D b_v3d, const char *layer);
void sync_shaders();
void sync_curve_settings();
More information about the Bf-blender-cvs
mailing list