Blender Git Commit Log

Git Commits -> Revision c3308ca

Revision c3308ca by Brecht Van Lommel (cycles-x)
March 19, 2021, 15:58 (GMT)
Cycles: add back random walk subsurface scattering

* shade_surface now samples either a BSDF or BSSRDF to continue the path, and
depending on that will continue with intersect_closest or intersect_subsurface.
* Then intersect_subsurface kernels does ray-tracing and scattering below the
surface. If an exit point is found, it returns to shade_surface.
* Since shade_surface is called twice, direct lighting is evaluated both for
the BSSRDF and any (typically specular) BSDF, since only doing either is
quite noisy.
* Note most files use Christensen-Burley so will render differently.
* subsurface_random_walk should be split up into smaller functions, but I've
kept it like the current implementation now, will split it up in a later commit.

Commit Details:

Full Hash: c3308ca378e2c1bda3b030274590010a47b51ded
Parent Commit: 480f2a8
Lines Changed: +689, -903

1 Added Path:

/intern/cycles/kernel/integrator/integrator_subsurface.h (+512, -0) (View)

1 Deleted Path:

/intern/cycles/kernel/kernel_path_subsurface.h (+0, -141)

12 Modified Paths:

/intern/cycles/integrator/path_trace_work_gpu.cpp (+7, -8) (Diff)
/intern/cycles/kernel/closure/bsdf_principled_diffuse.h (+2, -0) (Diff)
/intern/cycles/kernel/closure/bsdf_principled_sheen.h (+2, -0) (Diff)
/intern/cycles/kernel/closure/volume.h (+48, -0) (Diff)
/intern/cycles/kernel/CMakeLists.txt (+1, -1) (Diff)
/intern/cycles/kernel/integrator/integrator_intersect_closest.h (+1, -1) (Diff)
/intern/cycles/kernel/integrator/integrator_intersect_subsurface.h (+24, -35) (Diff)
/intern/cycles/kernel/integrator/integrator_shade_surface.h (+41, -32) (Diff)
/intern/cycles/kernel/integrator/integrator_state.h (+4, -2) (Diff)
/intern/cycles/kernel/kernel_shader.h (+28, -121) (Diff)
/intern/cycles/kernel/kernel_subsurface.h (+0, -497) (Diff)
/intern/cycles/kernel/kernel_volume.h (+19, -65) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021