diff options
author | Patrick Mours <pmours@nvidia.com> | 2019-09-12 15:46:47 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2019-09-13 12:46:22 +0300 |
commit | 53932f1f068501bfb095c407a7777a964dc5ec1c (patch) | |
tree | 82dfda8cd109d61ab0bf3601e5caf140001146c8 /intern/cycles/kernel/kernel_subsurface.h | |
parent | 7eb293a37b868ffab53be056b85d6e1f5444f62f (diff) |
Cycles: add Optix support in the kernel
This adds all the kernel side changes for the Optix backend.
Ref D5363
Diffstat (limited to 'intern/cycles/kernel/kernel_subsurface.h')
-rw-r--r-- | intern/cycles/kernel/kernel_subsurface.h | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/intern/cycles/kernel/kernel_subsurface.h b/intern/cycles/kernel/kernel_subsurface.h index 8dc1904058d..dbe2c12ce81 100644 --- a/intern/cycles/kernel/kernel_subsurface.h +++ b/intern/cycles/kernel/kernel_subsurface.h @@ -353,13 +353,19 @@ ccl_device void subsurface_random_walk_coefficients(const ShaderClosure *sc, *weight = safe_divide_color(bssrdf->weight, A); } -ccl_device_noinline bool subsurface_random_walk(KernelGlobals *kg, - LocalIntersection *ss_isect, - ShaderData *sd, - ccl_addr_space PathState *state, - const ShaderClosure *sc, - const float bssrdf_u, - const float bssrdf_v) +#ifdef __KERNEL_OPTIX__ +ccl_device_inline /* inline trace calls */ +#else +ccl_device_noinline +#endif + bool + subsurface_random_walk(KernelGlobals *kg, + LocalIntersection *ss_isect, + ShaderData *sd, + ccl_addr_space PathState *state, + const ShaderClosure *sc, + const float bssrdf_u, + const float bssrdf_v) { /* Sample diffuse surface scatter into the object. */ float3 D; |