Blender Git Commits

Blender Git "temp-cycles-denoising" branch commits.

Page: 4 / 17

March 23, 2017, 23:49 (GMT)
Cycles Denoising: Implement OpenCL denoising kernels

Unfortunately, as always when making kernel code OpenCL compatible, that mainly means adding a huge amount of annoying pointer qualifiers...
March 23, 2017, 23:49 (GMT)
Cycles Denoising: Rework memory offset function for upcoming OpenCL integration
March 23, 2017, 23:49 (GMT)
Cycles Denoising: Remove useless include
March 23, 2017, 23:49 (GMT)
Cycles Denoising: Cleanup safe_isfinite
March 23, 2017, 23:49 (GMT)
Cycles Denoising: Print file and line when opencl_assert fails
March 23, 2017, 23:49 (GMT)
Cycles Denoising: Add separate set_tiles device callback

For CPU and CUDA, it was possible to determine the pointers to the tile buffers on the host and just fill the TilesInfo there.
However, for OpenCL the actual pointer is only known inside the kernel, so a separate kernel for setting them is needed.
March 23, 2017, 23:19 (GMT)
Cycles Denoising: Use kernel_config.h for CUDA as in the regular kernel
March 23, 2017, 23:13 (GMT)
Cycles Denoising: Bring back UI option after recent merge
March 23, 2017, 23:13 (GMT)
Cycles Denoising: Fix variance pass generation in the split kernel
March 23, 2017, 23:13 (GMT)
Cycles Denoising: Remove unused functions left over from the denoise-after-rendering removal
March 23, 2017, 23:13 (GMT)
Cycles Denoising: Remove obsolete Keep Denoising Data option
March 23, 2017, 23:13 (GMT)
Cycles Denoising: Remove tile overscan when using GPU rendering

Denoising a pixel requires access to the other pixels surrounding it. On the CPU, this is solved by waiting for the neighboring tiles to be rendered before the central tile is denoised.
On the GPU, it was handled by rendering larger tiles internally and discarding the overscan area after denoising. That saved a bit of memory, but wasted computation (with 256x256 tiles and a half-window of 8, 13% of rendered pixels were never actually seen).

Also, supporting overscan tiles made the code more complex. So, this commit removes the overscan code and uses the CPU approach on GPUs as well.
March 23, 2017, 15:27 (GMT)
Cycles Denoising: Implement support in the split kernel
March 23, 2017, 14:59 (GMT)
Merge updated shadowcatcher into temp-cycles-denoising
March 23, 2017, 14:13 (GMT)
Update the shadowcatcher patch and make it look like a merge so that Git is happy
March 15, 2017, 19:20 (GMT)
Cycles Denoising: Deduplicate split/mega kernel code in the CUDADevice
March 15, 2017, 19:20 (GMT)
Cycles Denoising: Deduplicate split/mega kernel code in the CPUDevice

This also means that denoising is now also executed when using the split kernel, but the result is black since the kernel doesn't write the data yet.
March 13, 2017, 21:59 (GMT)
Cycles Denoising: Fix NaN results in a few scenes
March 12, 2017, 03:18 (GMT)
Merge remote-tracking branch 'origin/master' into temp-cycles-denoising

Conflicts:
intern/cycles/device/CMakeLists.txt
intern/cycles/device/device_cpu.cpp
intern/cycles/device/device_cuda.cpp
intern/cycles/device/device_task.h
intern/cycles/device/opencl/opencl_split.cpp
intern/cycles/kernel/CMakeLists.txt
intern/cycles/kernel/kernel_path_branched.h
intern/cycles/kernel/kernel_path_surface.h
intern/cycles/kernel/kernel_shader.h
intern/cycles/kernel/kernels/cpu/kernel_cpu_impl.h
intern/cycles/kernel/kernels/cuda/kernel.cu
intern/cycles/kernel/split/kernel_buffer_update.h
intern/cycles/kernel/svm/svm_closure.h
intern/cycles/util/util_atomic.h
February 13, 2017, 00:39 (GMT)
Cycles Denoising: Store feature pass into in PathRadiance
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021