diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2013-04-05 21:57:26 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2013-04-05 21:57:26 +0400 |
commit | 7404c1a553662c4dc1468a78b2237cd54c9598a2 (patch) | |
tree | 0fe3bc280d2e46024542419c15ec34986d41570d /intern | |
parent | 93ac968db3bc47e3520c662671cf68e86c0f2204 (diff) |
Fix another part of #34877: cycles progress status text not showing correct with
per render layer samples in addition to the progress bar.
Also fixed job progress bar not working at all on high DPI / retina, was so small
the actual progress was not visible.
Diffstat (limited to 'intern')
-rw-r--r-- | intern/cycles/blender/blender_session.cpp | 2 | ||||
-rw-r--r-- | intern/cycles/render/session.cpp | 8 | ||||
-rw-r--r-- | intern/cycles/render/tile.h | 3 |
3 files changed, 7 insertions, 6 deletions
diff --git a/intern/cycles/blender/blender_session.cpp b/intern/cycles/blender/blender_session.cpp index 3043d2aa9e9..1f1bb830771 100644 --- a/intern/cycles/blender/blender_session.cpp +++ b/intern/cycles/blender/blender_session.cpp @@ -549,7 +549,7 @@ void BlenderSession::get_progress(float& progress, double& total_time) session->progress.get_tile(tile, total_time, tile_time); sample = session->progress.get_sample(); - samples_per_tile = session->tile_manager.state.num_samples; + samples_per_tile = session->tile_manager.num_samples; if(samples_per_tile && tile_total) progress = ((float)sample / (float)(tile_total * samples_per_tile)); diff --git a/intern/cycles/render/session.cpp b/intern/cycles/render/session.cpp index 6ed14452c6b..075f5eb6bab 100644 --- a/intern/cycles/render/session.cpp +++ b/intern/cycles/render/session.cpp @@ -758,7 +758,7 @@ void Session::update_status_time(bool show_pause, bool show_done) * also display the info on CPU, when using 1 tile only */ - int sample = progress.get_sample(), num_samples = tile_manager.state.num_samples; + int sample = progress.get_sample(), num_samples = tile_manager.num_samples; if(tile > 1) { /* sample counter is global for all tiles, subtract samples @@ -771,10 +771,10 @@ void Session::update_status_time(bool show_pause, bool show_done) substatus += string_printf(", Sample %d/%d", sample, num_samples); } } - else if(params.samples == INT_MAX) + else if(tile_manager.num_samples == INT_MAX) substatus = string_printf("Path Tracing Sample %d", sample+1); else - substatus = string_printf("Path Tracing Sample %d/%d", sample+1, params.samples); + substatus = string_printf("Path Tracing Sample %d/%d", sample+1, tile_manager.num_samples); if(show_pause) status = "Paused"; @@ -846,7 +846,7 @@ void Session::tonemap() bool Session::update_progressive_refine(bool cancel) { int sample = tile_manager.state.sample + 1; - bool write = sample == params.samples || cancel; + bool write = sample == tile_manager.num_samples || cancel; double current_time = time_dt(); diff --git a/intern/cycles/render/tile.h b/intern/cycles/render/tile.h index 99cffb49c08..0e9e5a73a42 100644 --- a/intern/cycles/render/tile.h +++ b/intern/cycles/render/tile.h @@ -58,6 +58,8 @@ public: list<Tile> tiles; } state; + int num_samples; + TileManager(bool progressive, int num_samples, int2 tile_size, int start_resolution, bool preserve_tile_device, bool background, int tile_order, int num_devices = 1); ~TileManager(); @@ -82,7 +84,6 @@ protected: void set_tiles(); bool progressive; - int num_samples; int2 tile_size; int tile_order; int start_resolution; |