Cycles: Add OptiX AI denoiser support
This patch adds support for the OptiX denoiser as an alternative to the existing NLM denoiser in Cycles. It's re-using the same denoising architecture based on tiles and therefore implicitly also works with multiple GPUs. Reviewed By: sergey Differential Revision: https://developer.blender.org/D6395
This commit is contained in:
@@ -285,9 +285,7 @@ void Session::run_gpu()
|
||||
|
||||
if (progress.get_cancel())
|
||||
break;
|
||||
}
|
||||
|
||||
if (!no_tiles) {
|
||||
/* buffers mutex is locked entirely while rendering each
|
||||
* sample, and released/reacquired on each iteration to allow
|
||||
* reset and draw in between */
|
||||
@@ -978,7 +976,7 @@ void Session::update_status_time(bool show_pause, bool show_done)
|
||||
*/
|
||||
substatus += string_printf(", Sample %d/%d", progress.get_current_sample(), num_samples);
|
||||
}
|
||||
if (params.full_denoising) {
|
||||
if (params.full_denoising || params.optix_denoising) {
|
||||
substatus += string_printf(", Denoised %d tiles", progress.get_denoised_tiles());
|
||||
}
|
||||
else if (params.run_denoising) {
|
||||
@@ -1038,6 +1036,7 @@ void Session::render()
|
||||
|
||||
task.denoising_from_render = true;
|
||||
task.denoising_do_filter = params.full_denoising;
|
||||
task.denoising_use_optix = params.optix_denoising;
|
||||
task.denoising_write_passes = params.write_denoising_passes;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user