Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Mours <pmours@nvidia.com>2020-02-26 18:30:42 +0300
committerPatrick Mours <pmours@nvidia.com>2020-02-28 18:12:29 +0300
commitaf54bbd61c769c69891c9b39df19eb3cad9dafe2 (patch)
tree927403db3791116c9a760f6791426e8164ca9804 /intern/cycles/device/device_task.h
parent03e04d4db78972709ea9c6889afcf72fdaae80a2 (diff)
Cycles: Rework tile scheduling for denoising
This fixes denoising being delayed until after all rendering has finished. Instead, tile-based denoising is now part of the "RENDER" task again, so that it is all in one task and does not cause issues with dedicated task pools where tasks are serialized. Reviewed By: brecht Differential Revision: https://developer.blender.org/D6940
Diffstat (limited to 'intern/cycles/device/device_task.h')
-rw-r--r--intern/cycles/device/device_task.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/intern/cycles/device/device_task.h b/intern/cycles/device/device_task.h
index 0f718528b86..972f6131092 100644
--- a/intern/cycles/device/device_task.h
+++ b/intern/cycles/device/device_task.h
@@ -64,7 +64,7 @@ class DenoiseParams {
class DeviceTask : public Task {
public:
- typedef enum { RENDER, DENOISE, DENOISE_BUFFER, FILM_CONVERT, SHADER } Type;
+ typedef enum { RENDER, FILM_CONVERT, SHADER, DENOISE_BUFFER } Type;
Type type;
int x, y, w, h;
@@ -90,7 +90,7 @@ class DeviceTask : public Task {
void update_progress(RenderTile *rtile, int pixel_samples = -1);
- function<bool(Device *device, RenderTile &)> acquire_tile;
+ function<bool(Device *device, RenderTile &, uint)> acquire_tile;
function<void(long, int)> update_progress_sample;
function<void(RenderTile &)> update_tile_sample;
function<void(RenderTile &)> release_tile;
@@ -98,6 +98,7 @@ class DeviceTask : public Task {
function<void(RenderTile *, Device *)> map_neighbor_tiles;
function<void(RenderTile *, Device *)> unmap_neighbor_tiles;
+ uint tile_types;
DenoiseParams denoising;
bool denoising_from_render;
vector<int> denoising_frames;