blender/intern/cycles/device
Patrick Mours a859837cde Cleanup: Move OptiX denoiser code from device into denoiser class
Cycles already treats denoising fairly separate in its code, with a
dedicated `Denoiser` base class used to describe denoising
behavior. That class has been fully implemented for OIDN
(`denoiser_oidn.cpp`), but for OptiX was mostly empty
(`denoiser_optix.cpp`) and denoising was instead implemented in
the OptiX device. That meant denoising code was split over various
files and directories, making it a bit awkward to work with. This
patch moves the OptiX denoising implementation into the existing
`OptiXDenoiser` class, so that everything is in one place. There are
no functional changes, code has been mostly moved as-is. To
retain support for potential other denoiser implementations based
on a GPU device in the future, the `DeviceDenoiser` base class was
kept and slightly extended (and its file renamed to
`denoiser_gpu.cpp` to follow similar naming rules as
`path_trace_work_*.cpp`).

Differential Revision: https://developer.blender.org/D16502
2022-11-15 15:50:01 +01:00
..
cpu Cycles: add Path Guiding on CPU through Intel OpenPGL 2022-09-27 15:56:32 +02:00
cuda Cleanup: format 2022-11-09 08:30:18 +13:00
dummy Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
hip Fix Cycles error with runtime compilation when there is no path to OptiX SDK 2022-11-08 19:40:57 +01:00
metal Cycles: Enable MetalRT pointclouds & other fixes 2022-11-14 16:39:18 +00:00
multi Cycles: Add basic support for using OSL with OptiX 2022-11-09 15:30:21 +01:00
oneapi Cycles: fix up logic in oneAPI devices filtering 2022-10-27 23:09:14 +02:00
optix Cleanup: Move OptiX denoiser code from device into denoiser class 2022-11-15 15:50:01 +01:00
CMakeLists.txt Cleanup: Move OptiX denoiser code from device into denoiser class 2022-11-15 15:50:01 +01:00
denoise.cpp Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
denoise.h Cleanup: Move OptiX denoiser code from device into denoiser class 2022-11-15 15:50:01 +01:00
device.cpp Cycles: add Path Guiding on CPU through Intel OpenPGL 2022-09-27 15:56:32 +02:00
device.h Cleanup: Move OptiX denoiser code from device into denoiser class 2022-11-15 15:50:01 +01:00
graphics_interop.cpp Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
graphics_interop.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
kernel.cpp Cycles: Add basic support for using OSL with OptiX 2022-11-09 15:30:21 +01:00
kernel.h Cycles: Add basic support for using OSL with OptiX 2022-11-09 15:30:21 +01:00
memory.cpp Cycles: Add half precision float support for volumes with NanoVDB 2022-05-23 19:08:01 +02:00
memory.h Cleanup: renaming and consistency for kernel data 2022-06-20 12:30:48 +02:00
queue.cpp Cycles: Add optional per-kernel performance statistics 2022-09-27 22:15:00 +02:00
queue.h Cycles: Metal integrator state size tuning 2022-10-24 17:14:33 +01:00