Blender  V3.3
Functions
state_util.h File Reference
#include "kernel/integrator/state.h"
#include "kernel/util/differential.h"

Go to the source code of this file.

Functions

CCL_NAMESPACE_BEGIN ccl_device_forceinline void integrator_state_write_ray (KernelGlobals kg, IntegratorState state, ccl_private const Ray *ccl_restrict ray)
 
ccl_device_forceinline void integrator_state_read_ray (KernelGlobals kg, ConstIntegratorState state, ccl_private Ray *ccl_restrict ray)
 
ccl_device_forceinline void integrator_state_write_shadow_ray (KernelGlobals kg, IntegratorShadowState state, ccl_private const Ray *ccl_restrict ray)
 
ccl_device_forceinline void integrator_state_read_shadow_ray (KernelGlobals kg, ConstIntegratorShadowState state, ccl_private Ray *ccl_restrict ray)
 
ccl_device_forceinline void integrator_state_write_isect (KernelGlobals kg, IntegratorState state, ccl_private const Intersection *ccl_restrict isect)
 
ccl_device_forceinline void integrator_state_read_isect (KernelGlobals kg, ConstIntegratorState state, ccl_private Intersection *ccl_restrict isect)
 
ccl_device_forceinline VolumeStack integrator_state_read_volume_stack (ConstIntegratorState state, int i)
 
ccl_device_forceinline void integrator_state_write_volume_stack (IntegratorState state, int i, VolumeStack entry)
 
ccl_device_forceinline bool integrator_state_volume_stack_is_empty (KernelGlobals kg, ConstIntegratorState state)
 
ccl_device_forceinline void integrator_state_write_shadow_isect (IntegratorShadowState state, ccl_private const Intersection *ccl_restrict isect, const int index)
 
ccl_device_forceinline void integrator_state_read_shadow_isect (ConstIntegratorShadowState state, ccl_private Intersection *ccl_restrict isect, const int index)
 
ccl_device_forceinline void integrator_state_copy_volume_stack_to_shadow (KernelGlobals kg, IntegratorShadowState shadow_state, ConstIntegratorState state)
 
ccl_device_forceinline void integrator_state_copy_volume_stack (KernelGlobals kg, IntegratorState to_state, ConstIntegratorState state)
 
ccl_device_forceinline VolumeStack integrator_state_read_shadow_volume_stack (ConstIntegratorShadowState state, int i)
 
ccl_device_forceinline bool integrator_state_shadow_volume_stack_is_empty (KernelGlobals kg, ConstIntegratorShadowState state)
 
ccl_device_forceinline void integrator_state_write_shadow_volume_stack (IntegratorShadowState state, int i, VolumeStack entry)
 
ccl_device_inline IntegratorState integrator_state_shadow_catcher_split (KernelGlobals kg, IntegratorState state)
 
ccl_device_inline int integrator_state_bounce (ConstIntegratorState state, const int)
 
ccl_device_inline int integrator_state_bounce (ConstIntegratorShadowState state, const int)
 
ccl_device_inline int integrator_state_diffuse_bounce (ConstIntegratorState state, const int)
 
ccl_device_inline int integrator_state_diffuse_bounce (ConstIntegratorShadowState state, const int)
 
ccl_device_inline int integrator_state_glossy_bounce (ConstIntegratorState state, const int)
 
ccl_device_inline int integrator_state_glossy_bounce (ConstIntegratorShadowState state, const int)
 
ccl_device_inline int integrator_state_transmission_bounce (ConstIntegratorState state, const int)
 
ccl_device_inline int integrator_state_transmission_bounce (ConstIntegratorShadowState state, const int)
 
ccl_device_inline int integrator_state_transparent_bounce (ConstIntegratorState state, const int)
 
ccl_device_inline int integrator_state_transparent_bounce (ConstIntegratorShadowState state, const int)
 

Function Documentation

◆ integrator_state_bounce() [1/2]

ccl_device_inline int integrator_state_bounce ( ConstIntegratorShadowState  state,
const int   
)

Definition at line 347 of file state_util.h.

References INTEGRATOR_STATE, and state.

◆ integrator_state_bounce() [2/2]

ccl_device_inline int integrator_state_bounce ( ConstIntegratorState  state,
const int   
)

Definition at line 342 of file state_util.h.

References INTEGRATOR_STATE, and state.

Referenced by svm_node_light_path().

◆ integrator_state_copy_volume_stack()

ccl_device_forceinline void integrator_state_copy_volume_stack ( KernelGlobals  kg,
IntegratorState  to_state,
ConstIntegratorState  state 
)

◆ integrator_state_copy_volume_stack_to_shadow()

ccl_device_forceinline void integrator_state_copy_volume_stack_to_shadow ( KernelGlobals  kg,
IntegratorShadowState  shadow_state,
ConstIntegratorState  state 
)

◆ integrator_state_diffuse_bounce() [1/2]

ccl_device_inline int integrator_state_diffuse_bounce ( ConstIntegratorShadowState  state,
const int   
)

Definition at line 357 of file state_util.h.

References INTEGRATOR_STATE, and state.

◆ integrator_state_diffuse_bounce() [2/2]

ccl_device_inline int integrator_state_diffuse_bounce ( ConstIntegratorState  state,
const int   
)

Definition at line 352 of file state_util.h.

References INTEGRATOR_STATE, and state.

Referenced by svm_node_light_path().

◆ integrator_state_glossy_bounce() [1/2]

ccl_device_inline int integrator_state_glossy_bounce ( ConstIntegratorShadowState  state,
const int   
)

Definition at line 367 of file state_util.h.

References INTEGRATOR_STATE, and state.

◆ integrator_state_glossy_bounce() [2/2]

ccl_device_inline int integrator_state_glossy_bounce ( ConstIntegratorState  state,
const int   
)

Definition at line 362 of file state_util.h.

References INTEGRATOR_STATE, and state.

Referenced by svm_node_light_path().

◆ integrator_state_read_isect()

ccl_device_forceinline void integrator_state_read_isect ( KernelGlobals  kg,
ConstIntegratorState  state,
ccl_private Intersection *ccl_restrict  isect 
)

Definition at line 79 of file state_util.h.

References INTEGRATOR_STATE, state, t, type, and v.

Referenced by integrate_light(), integrate_surface_shader_setup(), and integrator_shade_volume().

◆ integrator_state_read_ray()

ccl_device_forceinline void integrator_state_read_ray ( KernelGlobals  kg,
ConstIntegratorState  state,
ccl_private Ray *ccl_restrict  ray 
)

◆ integrator_state_read_shadow_isect()

ccl_device_forceinline void integrator_state_read_shadow_isect ( ConstIntegratorShadowState  state,
ccl_private Intersection *ccl_restrict  isect,
const int  index 
)

Definition at line 129 of file state_util.h.

References INTEGRATOR_STATE_ARRAY, state, t, type, and v.

◆ integrator_state_read_shadow_ray()

ccl_device_forceinline void integrator_state_read_shadow_ray ( KernelGlobals  kg,
ConstIntegratorShadowState  state,
ccl_private Ray *ccl_restrict  ray 
)

Definition at line 53 of file state_util.h.

References D(), differential_zero_compact(), INTEGRATOR_STATE, P(), state, and time.

Referenced by integrator_intersect_shadow().

◆ integrator_state_read_shadow_volume_stack()

ccl_device_forceinline VolumeStack integrator_state_read_shadow_volume_stack ( ConstIntegratorShadowState  state,
int  i 
)

Definition at line 180 of file state_util.h.

References INTEGRATOR_STATE_ARRAY, and state.

Referenced by shadow_volume_stack_enter_exit().

◆ integrator_state_read_volume_stack()

ccl_device_forceinline VolumeStack integrator_state_read_volume_stack ( ConstIntegratorState  state,
int  i 
)

◆ integrator_state_shadow_catcher_split()

ccl_device_inline IntegratorState integrator_state_shadow_catcher_split ( KernelGlobals  kg,
IntegratorState  state 
)

◆ integrator_state_shadow_volume_stack_is_empty()

ccl_device_forceinline bool integrator_state_shadow_volume_stack_is_empty ( KernelGlobals  kg,
ConstIntegratorShadowState  state 
)

◆ integrator_state_transmission_bounce() [1/2]

ccl_device_inline int integrator_state_transmission_bounce ( ConstIntegratorShadowState  state,
const int   
)

Definition at line 377 of file state_util.h.

References INTEGRATOR_STATE, and state.

◆ integrator_state_transmission_bounce() [2/2]

ccl_device_inline int integrator_state_transmission_bounce ( ConstIntegratorState  state,
const int   
)

Definition at line 372 of file state_util.h.

References INTEGRATOR_STATE, and state.

Referenced by svm_node_light_path().

◆ integrator_state_transparent_bounce() [1/2]

ccl_device_inline int integrator_state_transparent_bounce ( ConstIntegratorShadowState  state,
const int   
)

Definition at line 388 of file state_util.h.

References INTEGRATOR_STATE, and state.

◆ integrator_state_transparent_bounce() [2/2]

ccl_device_inline int integrator_state_transparent_bounce ( ConstIntegratorState  state,
const int   
)

Definition at line 383 of file state_util.h.

References INTEGRATOR_STATE, and state.

Referenced by svm_node_light_path().

◆ integrator_state_volume_stack_is_empty()

ccl_device_forceinline bool integrator_state_volume_stack_is_empty ( KernelGlobals  kg,
ConstIntegratorState  state 
)

◆ integrator_state_write_isect()

ccl_device_forceinline void integrator_state_write_isect ( KernelGlobals  kg,
IntegratorState  state,
ccl_private const Intersection *ccl_restrict  isect 
)

Definition at line 68 of file state_util.h.

References INTEGRATOR_STATE_WRITE, state, t, type, and v.

Referenced by integrator_init_from_bake(), and integrator_intersect_closest().

◆ integrator_state_write_ray()

CCL_NAMESPACE_BEGIN ccl_device_forceinline void integrator_state_write_ray ( KernelGlobals  kg,
IntegratorState  state,
ccl_private const Ray *ccl_restrict  ray 
)

Definition at line 14 of file state_util.h.

References D(), INTEGRATOR_STATE_WRITE, P(), state, and time.

Referenced by integrator_init_from_bake(), and integrator_init_from_camera().

◆ integrator_state_write_shadow_isect()

ccl_device_forceinline void integrator_state_write_shadow_isect ( IntegratorShadowState  state,
ccl_private const Intersection *ccl_restrict  isect,
const int  index 
)

Definition at line 116 of file state_util.h.

References INTEGRATOR_STATE_ARRAY_WRITE, state, t, type, and v.

Referenced by BVH().

◆ integrator_state_write_shadow_ray()

ccl_device_forceinline void integrator_state_write_shadow_ray ( KernelGlobals  kg,
IntegratorShadowState  state,
ccl_private const Ray *ccl_restrict  ray 
)

Definition at line 42 of file state_util.h.

References D(), INTEGRATOR_STATE_WRITE, P(), state, and time.

◆ integrator_state_write_shadow_volume_stack()

ccl_device_forceinline void integrator_state_write_shadow_volume_stack ( IntegratorShadowState  state,
int  i,
VolumeStack  entry 
)

◆ integrator_state_write_volume_stack()

ccl_device_forceinline void integrator_state_write_volume_stack ( IntegratorState  state,
int  i,
VolumeStack  entry 
)