[Bf-blender-cvs] [b5992e6dccd] cycles-x: Merge branch 'master' into cycles-x
Brecht Van Lommel
noreply at git.blender.org
Wed Jun 2 15:43:56 CEST 2021
Commit: b5992e6dccdb90447c9cf76925b696b06bf6d342
Author: Brecht Van Lommel
Date: Wed Jun 2 14:03:04 2021 +0200
Branches: cycles-x
https://developer.blender.org/rBb5992e6dccdb90447c9cf76925b696b06bf6d342
Merge branch 'master' into cycles-x
===================================================================
===================================================================
diff --cc intern/cycles/blender/blender_session.cpp
index 6bb08666f0d,29de886e4ff..c52934c3e73
--- a/intern/cycles/blender/blender_session.cpp
+++ b/intern/cycles/blender/blender_session.cpp
@@@ -156,18 -155,10 +156,18 @@@ void BlenderSession::create_session(
/* set buffer parameters */
BufferParams buffer_params = BlenderSync::get_buffer_params(
- b_render, b_v3d, b_rv3d, scene->camera, width, height);
- b_v3d, b_rv3d, scene->camera, width, height, session_params.denoising.use);
++ b_v3d, b_rv3d, scene->camera, width, height);
session->reset(buffer_params, session_params.samples);
- b_engine.use_highlight_tiles(session_params.progressive_refine == false);
+ /* Create GPU display. */
+ if (!background) {
+ session->set_gpu_display(make_unique<BlenderGPUDisplay>(b_engine, b_scene));
+ }
+
+ /* TODO(sergey): Decice on what is to be communicated to the engine here. There is no tiled
+ * rendering for from visual point of view when render buffer fits big tile. But for huge
+ * render resolutions it might still be helpful to see which big tile is being sampled. */
+ /* b_engine.use_highlight_tiles(session_params.progressive_refine == false); */
update_resumable_tile_manager(session_params.samples);
}
@@@ -250,16 -242,15 +250,16 @@@ void BlenderSession::reset_session(BL::
BL::SpaceView3D b_null_space_view3d(PointerRNA_NULL);
BL::RegionView3D b_null_region_view3d(PointerRNA_NULL);
- BufferParams buffer_params = BlenderSync::get_buffer_params(b_null_space_view3d,
- b_null_region_view3d,
- scene->camera,
- width,
- height,
- session_params.denoising.use);
+ BufferParams buffer_params = BlenderSync::get_buffer_params(
- b_render, b_null_space_view3d, b_null_region_view3d, scene->camera, width, height);
++ b_null_space_view3d, b_null_region_view3d, scene->camera, width, height);
session->reset(buffer_params, session_params.samples);
- b_engine.use_highlight_tiles(session_params.progressive_refine == false);
+ /* TODO(sergey): Decice on what is to be communicated to the engine here. There is no tiled
+ * rendering for from visual point of view when render buffer fits big tile. But for huge
+ * render resolutions it might still be helpful to see which big tile is being sampled. */
+ /* TODO(sergey): If some logic is needed here, de-duplicate it with the constructor using some
+ * sort of utility function. */
+ /* b_engine.use_highlight_tiles(session_params.progressive_refine == false); */
/* reset time */
start_resize_time = 0.0;
@@@ -445,12 -483,13 +445,12 @@@ void BlenderSession::render(BL::Depsgra
/* get buffer parameters */
SessionParams session_params = BlenderSync::get_session_params(
- b_engine, b_userpref, b_scene, background, b_view_layer);
+ b_engine, b_userpref, b_scene, background);
BufferParams buffer_params = BlenderSync::get_buffer_params(
- b_render, b_v3d, b_rv3d, scene->camera, width, height);
- b_v3d, b_rv3d, scene->camera, width, height, session_params.denoising.use);
++ b_v3d, b_rv3d, scene->camera, width, height);
/* temporary render result to find needed passes and views */
- BL::RenderResult b_rr = begin_render_result(
- b_engine, 0, 0, 1, 1, b_view_layer.name().c_str(), NULL);
+ BL::RenderResult b_rr = b_engine.begin_result(0, 0, 1, 1, b_view_layer.name().c_str(), NULL);
BL::RenderResult::layers_iterator b_single_rlay;
b_rr.layers.begin(b_single_rlay);
BL::RenderLayer b_rlay = *b_single_rlay;
@@@ -718,7 -809,16 +718,7 @@@ void BlenderSession::synchronize(BL::De
/* get buffer parameters */
BufferParams buffer_params = BlenderSync::get_buffer_params(
- b_render, b_v3d, b_rv3d, scene->camera, width, height);
- b_v3d, b_rv3d, scene->camera, width, height, session_params.denoising.use);
-
- if (!buffer_params.denoising_data_pass) {
- session_params.denoising.use = false;
- }
-
- session->set_denoising(session_params.denoising);
-
- /* Update film if denoising data was enabled or disabled. */
- scene->film->set_denoising_data_pass(buffer_params.denoising_data_pass);
++ b_v3d, b_rv3d, scene->camera, width, height);
/* reset if needed */
if (scene->need_reset()) {
@@@ -788,7 -888,7 +788,7 @@@ void BlenderSession::draw(int w, int h
SessionParams session_params = BlenderSync::get_session_params(
b_engine, b_userpref, b_scene, background);
BufferParams buffer_params = BlenderSync::get_buffer_params(
- b_render, b_v3d, b_rv3d, scene->camera, width, height);
- b_v3d, b_rv3d, scene->camera, width, height, session_params.denoising.use);
++ b_v3d, b_rv3d, scene->camera, width, height);
bool session_pause = BlenderSync::get_session_pause(b_scene, background);
if (session_pause == false) {
diff --cc intern/cycles/blender/blender_sync.h
index 293c20dd359,1c98e529190..ef8dcf00403
--- a/intern/cycles/blender/blender_sync.h
+++ b/intern/cycles/blender/blender_sync.h
@@@ -94,13 -97,14 +94,12 @@@ class BlenderSync
/* get parameters */
static SceneParams get_scene_params(BL::Scene &b_scene, bool background);
- static SessionParams get_session_params(
- BL::RenderEngine &b_engine,
- BL::Preferences &b_userpref,
- BL::Scene &b_scene,
- bool background,
- BL::ViewLayer b_view_layer = BL::ViewLayer(PointerRNA_NULL));
+ static SessionParams get_session_params(BL::RenderEngine &b_engine,
+ BL::Preferences &b_userpref,
+ BL::Scene &b_scene,
+ bool background);
static bool get_session_pause(BL::Scene &b_scene, bool background);
- static BufferParams get_buffer_params(BL::RenderSettings &b_render,
- BL::SpaceView3D &b_v3d,
+ static BufferParams get_buffer_params(BL::SpaceView3D &b_v3d,
BL::RegionView3D &b_rv3d,
Camera *cam,
int width,
More information about the Bf-blender-cvs
mailing list