Changeset View
Changeset View
Standalone View
Standalone View
intern/cycles/blender/blender_session.cpp
| Show First 20 Lines • Show All 639 Lines • ▼ Show 20 Lines | void BlenderSession::bake(BL::Depsgraph &b_depsgraph_, | ||||
| ShaderEvalType shader_type = get_shader_type(pass_type); | ShaderEvalType shader_type = get_shader_type(pass_type); | ||||
| int bake_pass_filter = bake_pass_filter_get(pass_filter); | int bake_pass_filter = bake_pass_filter_get(pass_filter); | ||||
| /* Initialize bake manager, before we load the baking kernels. */ | /* Initialize bake manager, before we load the baking kernels. */ | ||||
| scene->bake_manager->set(scene, b_object.name(), shader_type, bake_pass_filter); | scene->bake_manager->set(scene, b_object.name(), shader_type, bake_pass_filter); | ||||
| /* Passes are identified by name, so in order to return the combined pass we need to set the | /* Passes are identified by name, so in order to return the combined pass we need to set the | ||||
| * name. */ | * name. */ | ||||
| Pass::add(PASS_COMBINED, scene->film->passes, "Combined"); | Pass::add(PASS_COMBINED, scene->passes, "Combined"); | ||||
| session->read_bake_tile_cb = function_bind(&BlenderSession::read_render_tile, this, _1); | session->read_bake_tile_cb = function_bind(&BlenderSession::read_render_tile, this, _1); | ||||
| session->write_render_tile_cb = function_bind(&BlenderSession::write_render_tile, this, _1); | session->write_render_tile_cb = function_bind(&BlenderSession::write_render_tile, this, _1); | ||||
| if (!session->progress.get_cancel()) { | if (!session->progress.get_cancel()) { | ||||
| /* Sync scene. */ | /* Sync scene. */ | ||||
| BL::Object b_camera_override(b_engine.camera_override()); | BL::Object b_camera_override(b_engine.camera_override()); | ||||
| sync->sync_camera(b_render, b_camera_override, width, height, ""); | sync->sync_camera(b_render, b_camera_override, width, height, ""); | ||||
| Show All 16 Lines | if (object_found && !session->progress.get_cancel()) { | ||||
| /* Get session and buffer parameters. */ | /* Get session and buffer parameters. */ | ||||
| SessionParams session_params = BlenderSync::get_session_params( | SessionParams session_params = BlenderSync::get_session_params( | ||||
| b_engine, b_userpref, b_scene, background); | b_engine, b_userpref, b_scene, background); | ||||
| session_params.progressive_refine = false; | session_params.progressive_refine = false; | ||||
| BufferParams buffer_params; | BufferParams buffer_params; | ||||
| buffer_params.width = bake_width; | buffer_params.width = bake_width; | ||||
| buffer_params.height = bake_height; | buffer_params.height = bake_height; | ||||
| buffer_params.passes = scene->film->passes; | buffer_params.passes = scene->passes; | ||||
| /* Update session. */ | /* Update session. */ | ||||
| session->tile_manager.set_samples(session_params.samples); | session->tile_manager.set_samples(session_params.samples); | ||||
| session->reset(buffer_params, session_params.samples); | session->reset(buffer_params, session_params.samples); | ||||
| session->progress.set_update_callback( | session->progress.set_update_callback( | ||||
| function_bind(&BlenderSession::update_bake_progress, this)); | function_bind(&BlenderSession::update_bake_progress, this)); | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 435 Lines • Show Last 20 Lines | |||||