Commit: b70f4a265a22ceb2c31dd54002a318d0f949e294 Author: Lukas Stockner Date: Sun Jan 10 19:16:07 2021 +0100 Branches: master https://developer.blender.org/rBb70f4a265a22ceb2c31dd54002a318d0f949e294
Fix T84496: Cycles: Tile stealing does not work with NLM Reviewed By: brecht Maniphest Tasks: T84496 Differential Revision: https://developer.blender.org/D10066 =================================================================== M intern/cycles/render/session.cpp =================================================================== diff --git a/intern/cycles/render/session.cpp b/intern/cycles/render/session.cpp index 524a0e3b9d4..a00f8154148 100644 --- a/intern/cycles/render/session.cpp +++ b/intern/cycles/render/session.cpp @@ -459,13 +459,17 @@ bool Session::acquire_tile(RenderTile &rtile, Device *tile_device, uint tile_typ int device_num = device->device_number(tile_device); while (!tile_manager.next_tile(tile, device_num, tile_types)) { + if (steal_tile(rtile, tile_device, tile_lock)) { + return true; + } + /* Wait for denoising tiles to become available */ if ((tile_types & RenderTile::DENOISE) && !progress.get_cancel() && tile_manager.has_tiles()) { denoising_cond.wait(tile_lock); continue; } - return steal_tile(rtile, tile_device, tile_lock); + return false; } /* fill render tile */ @@ -477,6 +481,7 @@ bool Session::acquire_tile(RenderTile &rtile, Device *tile_device, uint tile_typ rtile.num_samples = tile_manager.state.num_samples; rtile.resolution = tile_manager.state.resolution_divider; rtile.tile_index = tile->index; + rtile.stealing_state = RenderTile::NO_STEALING; if (tile->state == Tile::DENOISE) { rtile.task = RenderTile::DENOISE; _______________________________________________ Bf-blender-cvs mailing list [email protected] https://lists.blender.org/mailman/listinfo/bf-blender-cvs
