|
Blender
V2.93
|
Go to the source code of this file.
Functions | |
| CCL_NAMESPACE_BEGIN ccl_device_inline void | kernel_path_surface_connect_light (KernelGlobals *kg, ShaderData *sd, ShaderData *emission_sd, float3 throughput, ccl_addr_space PathState *state, PathRadiance *L) |
| ccl_device bool | kernel_path_surface_bounce (KernelGlobals *kg, ShaderData *sd, ccl_addr_space float3 *throughput, ccl_addr_space PathState *state, PathRadianceState *L_state, ccl_addr_space Ray *ray) |
| ccl_device bool kernel_path_surface_bounce | ( | KernelGlobals * | kg, |
| ShaderData * | sd, | ||
| ccl_addr_space float3 * | throughput, | ||
| ccl_addr_space PathState * | state, | ||
| PathRadianceState * | L_state, | ||
| ccl_addr_space Ray * | ray | ||
| ) |
Definition at line 270 of file kernel_path_surface.h.
References bsdf_eval(), bsdf_eval_is_zero(), ccl_optional_struct_init, fminf, kg, label, LABEL_TRANSMIT, LABEL_TRANSPARENT, normalize(), path_radiance_bsdf_bounce(), path_state_next(), path_state_rng_2D(), PRNG_BSDF_U, PROFILING_INIT, PROFILING_SURFACE_BOUNCE, ray_offset(), SD_BSDF, SD_HAS_ONLY_VOLUME, shader_bsdf_sample(), and state.
Referenced by kernel_next_iteration_setup(), and kernel_path_integrate().
| CCL_NAMESPACE_BEGIN ccl_device_inline void kernel_path_surface_connect_light | ( | KernelGlobals * | kg, |
| ShaderData * | sd, | ||
| ShaderData * | emission_sd, | ||
| float3 | throughput, | ||
| ccl_addr_space PathState * | state, | ||
| PathRadiance * | L | ||
| ) |
Definition at line 214 of file kernel_path_surface.h.
References all(), ccl_optional_struct_init, direct_emission(), kernel_data, kg, L, light_sample(), path_radiance_accum_light(), path_radiance_accum_total_light(), PATH_RAY_SHADOW_CATCHER, path_state_rng_2D(), path_state_rng_light_termination(), PRNG_LIGHT_U, PROFILING_CONNECT_LIGHT, PROFILING_INIT, SD_BSDF_HAS_EVAL, shadow_blocked(), and state.
Referenced by kernel_path_integrate().