May 27, 2016, 19:42 (GMT) |
Cycles Denoise: Modify TileManager to allow multiple tasks per tile This commit changes the TileManager and Session so that one tile can be processed in multiple steps, here rendering and denoising. The reason for that is that a tile can only be denoised as soon as all its neighbors are rendered (since the filter window will cross tile borders) and only be freed as soon as all its neighbors are denoised (otherwise they wouldn't have the out-of-tile data either). Therefore, Tiles now have a State and are actually stored for the whole render process. Tile Highlighting also needed a bit of tweaking to un-highlight tiles between rendering and denoising. |
May 27, 2016, 19:41 (GMT) |
Cycles Denoising: Change PATH_TRACE task to more flexible RENDER task This commit renames the PATH_TRACE task to RENDER and adds subtypes to the RenderTile, for now PATH_TRACE and DENOISE. The reason for doing this instead of simply adding a new DENOISE task is that it 1. allows to reuse the acquire_tile system etc. and 2. allows to denoise tiles while others are still rendering (if DENOISE was an own task, it would have to wait until PATH_TRACE was running out of tiles). The task isn't used yet, that's for the upcoming commits. |
|