|
Blender V5.0
|
#include "kernel/globals.h"#include "kernel/types.h"#include "kernel/integrator/state.h"#include "kernel/util/colorspace.h"#include "kernel/closure/bsdf.h"#include "util/color.h"Go to the source code of this file.
Classes | |
| struct | GuidingRISSample |
| ccl_device_forceinline bool calculate_ris_target | ( | ccl_private GuidingRISSample * | ris_sample, |
| const ccl_private float | guiding_sampling_prob ) |
Definition at line 42 of file kernel/integrator/guiding.h.
References ccl_device_forceinline, ccl_private, and M_PI_F.
| ccl_device_forceinline bool guiding_bsdf_init | ( | KernelGlobals | kg, |
| const float3 | P, | ||
| const float3 | N, | ||
| ccl_private float & | rand ) |
Definition at line 549 of file kernel/integrator/guiding.h.
References ccl_device_forceinline, ccl_private, N, and P.
| ccl_device_forceinline float guiding_bsdf_pdf | ( | KernelGlobals | kg, |
| const float3 | wo ) |
Definition at line 578 of file kernel/integrator/guiding.h.
References ccl_device_forceinline.
Referenced by surface_shader_bsdf_eval().
| ccl_device_forceinline float guiding_bsdf_sample | ( | KernelGlobals | kg, |
| const float2 | rand_bsdf, | ||
| ccl_private float3 * | wo ) |
Definition at line 563 of file kernel/integrator/guiding.h.
References ccl_device_forceinline, ccl_private, make_float3(), float2::x, and float2::y.
| ccl_device_forceinline bool guiding_phase_init | ( | KernelGlobals | kg, |
| const float3 | P, | ||
| const float3 | D, | ||
| const float | g, | ||
| ccl_private float & | rand ) |
Definition at line 599 of file kernel/integrator/guiding.h.
References ccl_device_forceinline, ccl_private, D, fabsf, and P.
| ccl_device_forceinline float guiding_phase_pdf | ( | KernelGlobals | kg, |
| const float3 | wo ) |
Definition at line 632 of file kernel/integrator/guiding.h.
References ccl_device_forceinline.
| ccl_device_forceinline float guiding_phase_sample | ( | KernelGlobals | kg, |
| const float2 | rand_phase, | ||
| ccl_private float3 * | wo ) |
Definition at line 617 of file kernel/integrator/guiding.h.
References ccl_device_forceinline, ccl_private, make_float3(), float2::x, and float2::y.
| ccl_device_forceinline void guiding_record_background | ( | KernelGlobals | kg, |
| IntegratorState | state, | ||
| const Spectrum | L, | ||
| const float | mis_weight ) |
Definition at line 413 of file kernel/integrator/guiding.h.
References assert, ccl_device_forceinline, D, flag, INTEGRATOR_STATE, kernel_data, L, make_float3(), P, PATH_RAY_SHADOW_CATCHER_PASS, spectrum_to_rgb(), and state.
Referenced by integrate_background(), and integrate_distant_lights().
| ccl_device_forceinline void guiding_record_bssrdf_bounce | ( | KernelGlobals | kg, |
| IntegratorState | state, | ||
| const float | pdf, | ||
| const float3 | N, | ||
| const float3 | wo, | ||
| const Spectrum | weight, | ||
| const Spectrum | albedo ) |
Definition at line 228 of file kernel/integrator/guiding.h.
References assert, ccl_device_forceinline, clamp(), flag, INTEGRATOR_STATE, kernel_assert, kernel_data, N, one_float3(), PATH_RAY_SHADOW_CATCHER_PASS, spectrum_to_rgb(), and state.
| ccl_device_forceinline void guiding_record_bssrdf_segment | ( | KernelGlobals | kg, |
| IntegratorState | state, | ||
| const float3 | P, | ||
| const float3 | wi ) |
Definition at line 171 of file kernel/integrator/guiding.h.
References assert, ccl_device_forceinline, flag, INTEGRATOR_STATE, kernel_data, one_float3(), P, PATH_RAY_SHADOW_CATCHER_PASS, state, and zero_float3().
| ccl_device_forceinline void guiding_record_bssrdf_weight | ( | KernelGlobals | kg, |
| IntegratorState | state, | ||
| const Spectrum | weight, | ||
| const Spectrum | albedo ) |
Definition at line 199 of file kernel/integrator/guiding.h.
References assert, ccl_device_forceinline, flag, INTEGRATOR_STATE, kernel_assert, kernel_data, PATH_RAY_SHADOW_CATCHER_PASS, safe_divide_color(), spectrum_to_rgb(), state, and zero_float3().
| ccl_device_forceinline void guiding_record_continuation_probability | ( | KernelGlobals | kg, |
| IntegratorState | state, | ||
| const float | continuation_probability ) |
Definition at line 477 of file kernel/integrator/guiding.h.
References assert, ccl_device_forceinline, flag, INTEGRATOR_STATE, kernel_data, PATH_RAY_SHADOW_CATCHER_PASS, and state.
Referenced by integrator_intersect_terminate().
| ccl_device_forceinline void guiding_record_direct_light | ( | KernelGlobals | kg, |
| IntegratorShadowState | state ) |
Definition at line 443 of file kernel/integrator/guiding.h.
References ccl_device_forceinline, INTEGRATOR_STATE, kernel_data, safe_divide_color(), spectrum_to_rgb(), and state.
Referenced by integrator_shade_shadow().
| ccl_device_forceinline void guiding_record_light_surface_segment | ( | KernelGlobals | kg, |
| IntegratorState | state, | ||
| const ccl_private Intersection *ccl_restrict | isect ) |
Definition at line 378 of file kernel/integrator/guiding.h.
References assert, ccl_device_forceinline, ccl_private, ccl_restrict, D, flag, INTEGRATOR_STATE, kernel_data, one_float3(), P, PATH_RAY_SHADOW_CATCHER_PASS, state, and zero_float3().
Referenced by integrate_light().
| ccl_device_forceinline void guiding_record_surface_bounce | ( | KernelGlobals | kg, |
| IntegratorState | state, | ||
| const Spectrum | weight, | ||
| const float | pdf, | ||
| const float3 | N, | ||
| const float3 | wo, | ||
| const float2 | roughness, | ||
| const float | eta ) |
Definition at line 110 of file kernel/integrator/guiding.h.
References assert, ccl_device_forceinline, clamp(), flag, fminf, INTEGRATOR_STATE, kernel_assert, kernel_data, N, one_float3(), PATH_RAY_SHADOW_CATCHER_PASS, safe_sqrtf(), spectrum_to_rgb(), state, float2::x, and float2::y.
Referenced by integrate_surface_bsdf_bssrdf_bounce().
| ccl_device_forceinline void guiding_record_surface_emission | ( | KernelGlobals | kg, |
| IntegratorState | state, | ||
| const Spectrum | Le, | ||
| const float | mis_weight ) |
Definition at line 146 of file kernel/integrator/guiding.h.
References assert, ccl_device_forceinline, flag, INTEGRATOR_STATE, kernel_data, PATH_RAY_SHADOW_CATCHER_PASS, spectrum_to_rgb(), and state.
Referenced by integrate_light(), and integrate_surface_emission().
| ccl_device_forceinline void guiding_record_surface_segment | ( | KernelGlobals | kg, |
| IntegratorState | state, | ||
| const ccl_private ShaderData * | sd ) |
Definition at line 84 of file kernel/integrator/guiding.h.
References assert, ccl_device_forceinline, ccl_private, flag, INTEGRATOR_STATE, kernel_data, one_float3(), PATH_RAY_SHADOW_CATCHER_PASS, state, and zero_float3().
Referenced by integrate_surface().
| ccl_device_forceinline void guiding_record_volume_bounce | ( | KernelGlobals | kg, |
| IntegratorState | state, | ||
| const Spectrum | weight, | ||
| const float | pdf, | ||
| const float3 | wo, | ||
| const float | roughness ) |
Definition at line 289 of file kernel/integrator/guiding.h.
References assert, ccl_device_forceinline, flag, INTEGRATOR_STATE, kernel_assert, kernel_data, make_float3(), one_float3(), PATH_RAY_SHADOW_CATCHER_PASS, spectrum_to_rgb(), and state.
| ccl_device_forceinline void guiding_record_volume_emission | ( | KernelGlobals | kg, |
| IntegratorState | state, | ||
| const Spectrum | Le ) |
Definition at line 352 of file kernel/integrator/guiding.h.
References assert, ccl_device_forceinline, flag, INTEGRATOR_STATE, kernel_data, PATH_RAY_SHADOW_CATCHER_PASS, spectrum_to_rgb(), and state.
| ccl_device_forceinline void guiding_record_volume_segment | ( | KernelGlobals | kg, |
| IntegratorState | state, | ||
| const float3 | P, | ||
| const float3 | I ) |
Definition at line 261 of file kernel/integrator/guiding.h.
References assert, ccl_device_forceinline, flag, I, INTEGRATOR_STATE, kernel_data, one_float3(), P, PATH_RAY_SHADOW_CATCHER_PASS, state, and zero_float3().
| ccl_device_forceinline void guiding_record_volume_transmission | ( | KernelGlobals | kg, |
| IntegratorState | state, | ||
| const float3 | transmittance_weight ) |
Definition at line 322 of file kernel/integrator/guiding.h.
References assert, ccl_device_forceinline, flag, INTEGRATOR_STATE, kernel_data, PATH_RAY_SHADOW_CATCHER_PASS, and state.
| ccl_device_forceinline float guiding_surface_incoming_radiance_pdf | ( | KernelGlobals | kg, |
| const float3 | wo ) |
Definition at line 587 of file kernel/integrator/guiding.h.
References ccl_device_forceinline.
| ccl_device_forceinline void guiding_write_debug_passes | ( | KernelGlobals | kg, |
| IntegratorState | state, | ||
| const ccl_private ShaderData * | sd, | ||
| ccl_global float *ccl_restrict | render_buffer ) |
Definition at line 498 of file kernel/integrator/guiding.h.
References bsdf_get_specular_roughness_squared(), ccl_device_forceinline, ccl_global, ccl_private, ccl_restrict, CLOSURE_IS_BSDF_OR_BSSRDF, film_pass_pixel_render_buffer(), film_write_pass_float(), i, INTEGRATOR_STATE, kernel_data, PASS_UNUSED, render_buffer, and state.
Referenced by integrate_surface().