Blender Git Commit Log

Git Commits -> Revision 440a347

Revision 440a347 by Patrick Mours (master)
November 9, 2021, 13:49 (GMT)
Cycles: Improve OptiX denoising with dark images and fix crash when denoiser is destroyed

Adds a pass before denoising that calculates the intensity of the image, which can be
passed into the OptiX denoiser for more optimal results for very dark or very bright images.

In addition this also fixes a crash that sometimes occurred on exit. The OptiX denoiser object
has to be destroyed before the OptiX device context object (since it references that). But in
C++ the destructor function of a class is called before its fields are destructed, so
"~OptiXDevice" was always called before "OptiXDevice::~Denoiser" and therefore
"optixDeviceContextDestroy" was called before "optixDenoiserDestroy", hence the crash.

Differential Revision: https://developer.blender.org/D13160

Commit Details:

Full Hash: 440a3475b8f5410e5c41bfbed5ce82771b41356f
Parent Commit: 9daf6a6
Lines Changed: +21, -14

3 Modified Paths:

/intern/cycles/device/optix/device_impl.cpp (+20, -12) (Diff)
/intern/cycles/device/optix/device_impl.h (+0, -1) (Diff)
/intern/cycles/kernel/device/gpu/kernel.h (+1, -1) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021