Changeset View
Changeset View
Standalone View
Standalone View
intern/cycles/blender/blender_session.cpp
| Show First 20 Lines • Show All 129 Lines • ▼ Show 20 Lines | if(session_pause == false) { | ||||
| b_rlay_name.c_str()); | b_rlay_name.c_str()); | ||||
| } | } | ||||
| } | } | ||||
| else { | else { | ||||
| /* for final render we will do full data sync per render layer, only | /* for final render we will do full data sync per render layer, only | ||||
| * do some basic syncing here, no objects or materials for speed */ | * do some basic syncing here, no objects or materials for speed */ | ||||
| sync->sync_render_layers(b_v3d, NULL); | sync->sync_render_layers(b_v3d, NULL); | ||||
| sync->sync_integrator(); | sync->sync_integrator(); | ||||
| sync->sync_camera(b_render, b_engine.camera_override(), width, height); | |||||
| } | } | ||||
| /* set buffer parameters */ | /* set buffer parameters */ | ||||
| BufferParams buffer_params = BlenderSync::get_buffer_params(b_render, b_v3d, b_rv3d, scene->camera, width, height); | BufferParams buffer_params = BlenderSync::get_buffer_params(b_render, b_v3d, b_rv3d, scene->camera, width, height); | ||||
| session->reset(buffer_params, session_params.samples); | session->reset(buffer_params, session_params.samples); | ||||
| b_engine.use_highlight_tiles(session_params.progressive_refine == false); | b_engine.use_highlight_tiles(session_params.progressive_refine == false); | ||||
| } | } | ||||
| Show All 38 Lines | void BlenderSession::reset_session(BL::BlendData b_data_, BL::Scene b_scene_) | ||||
| /* sync object should be re-created */ | /* sync object should be re-created */ | ||||
| sync = new BlenderSync(b_engine, b_data, b_scene, scene, !background, session->progress, is_cpu); | sync = new BlenderSync(b_engine, b_data, b_scene, scene, !background, session->progress, is_cpu); | ||||
| /* for final render we will do full data sync per render layer, only | /* for final render we will do full data sync per render layer, only | ||||
| * do some basic syncing here, no objects or materials for speed */ | * do some basic syncing here, no objects or materials for speed */ | ||||
| sync->sync_render_layers(b_v3d, NULL); | sync->sync_render_layers(b_v3d, NULL); | ||||
| sync->sync_integrator(); | sync->sync_integrator(); | ||||
| sync->sync_camera(b_render, b_engine.camera_override(), width, height); | |||||
| BufferParams buffer_params = BlenderSync::get_buffer_params(b_render, PointerRNA_NULL, PointerRNA_NULL, scene->camera, width, height); | BufferParams buffer_params = BlenderSync::get_buffer_params(b_render, PointerRNA_NULL, PointerRNA_NULL, scene->camera, width, height); | ||||
| session->reset(buffer_params, session_params.samples); | session->reset(buffer_params, session_params.samples); | ||||
| b_engine.use_highlight_tiles(session_params.progressive_refine == false); | b_engine.use_highlight_tiles(session_params.progressive_refine == false); | ||||
| /* reset time */ | /* reset time */ | ||||
| start_resize_time = 0.0; | start_resize_time = 0.0; | ||||
| ▲ Show 20 Lines • Show All 270 Lines • ▼ Show 20 Lines | for(r.layers.begin(b_layer_iter); b_layer_iter != r.layers.end(); ++b_layer_iter) { | ||||
| for(b_rr.views.begin(b_view_iter); b_view_iter != b_rr.views.end(); ++b_view_iter) { | for(b_rr.views.begin(b_view_iter); b_view_iter != b_rr.views.end(); ++b_view_iter) { | ||||
| b_rview_name = b_view_iter->name(); | b_rview_name = b_view_iter->name(); | ||||
| /* set the current view */ | /* set the current view */ | ||||
| b_engine.active_view_set(b_rview_name.c_str()); | b_engine.active_view_set(b_rview_name.c_str()); | ||||
| /* update scene */ | /* update scene */ | ||||
| sync->sync_camera(b_render, b_engine.camera_override(), width, height); | sync->sync_camera(b_render, b_engine.camera_override(), width, height, b_rview_name.c_str()); | ||||
| sync->sync_data(b_render, | sync->sync_data(b_render, | ||||
| b_v3d, | b_v3d, | ||||
| b_engine.camera_override(), | b_engine.camera_override(), | ||||
| width, height, | width, height, | ||||
| &python_thread_state, | &python_thread_state, | ||||
| b_rlay_name.c_str()); | b_rlay_name.c_str()); | ||||
| /* update number of samples per layer */ | /* update number of samples per layer */ | ||||
| ▲ Show 20 Lines • Show All 81 Lines • ▼ Show 20 Lines | if(BakeManager::is_light_pass(shader_type)) { | ||||
| Pass::add(PASS_LIGHT, scene->film->passes); | Pass::add(PASS_LIGHT, scene->film->passes); | ||||
| } | } | ||||
| /* create device and update scene */ | /* create device and update scene */ | ||||
| scene->film->tag_update(scene); | scene->film->tag_update(scene); | ||||
| scene->integrator->tag_update(scene); | scene->integrator->tag_update(scene); | ||||
| /* update scene */ | /* update scene */ | ||||
| sync->sync_camera(b_render, b_engine.camera_override(), width, height); | sync->sync_camera(b_render, b_engine.camera_override(), width, height, ""); | ||||
| sync->sync_data(b_render, | sync->sync_data(b_render, | ||||
| b_v3d, | b_v3d, | ||||
| b_engine.camera_override(), | b_engine.camera_override(), | ||||
| width, height, | width, height, | ||||
| &python_thread_state, | &python_thread_state, | ||||
| b_rlay_name.c_str()); | b_rlay_name.c_str()); | ||||
| /* get buffer parameters */ | /* get buffer parameters */ | ||||
| ▲ Show 20 Lines • Show All 141 Lines • ▼ Show 20 Lines | sync->sync_data(b_render, | ||||
| b_engine.camera_override(), | b_engine.camera_override(), | ||||
| width, height, | width, height, | ||||
| &python_thread_state, | &python_thread_state, | ||||
| b_rlay_name.c_str()); | b_rlay_name.c_str()); | ||||
| if(b_rv3d) | if(b_rv3d) | ||||
| sync->sync_view(b_v3d, b_rv3d, width, height); | sync->sync_view(b_v3d, b_rv3d, width, height); | ||||
| else | else | ||||
| sync->sync_camera(b_render, b_engine.camera_override(), width, height); | sync->sync_camera(b_render, b_engine.camera_override(), width, height, ""); | ||||
| /* unlock */ | /* unlock */ | ||||
| session->scene->mutex.unlock(); | session->scene->mutex.unlock(); | ||||
| /* reset if needed */ | /* reset if needed */ | ||||
| if(scene->need_reset()) { | if(scene->need_reset()) { | ||||
| BufferParams buffer_params = BlenderSync::get_buffer_params(b_render, b_v3d, b_rv3d, scene->camera, width, height); | BufferParams buffer_params = BlenderSync::get_buffer_params(b_render, b_v3d, b_rv3d, scene->camera, width, height); | ||||
| session->reset(buffer_params, session_params.samples); | session->reset(buffer_params, session_params.samples); | ||||
| ▲ Show 20 Lines • Show All 462 Lines • Show Last 20 Lines | |||||