Blender V5.0
path_state.h File Reference

Go to the source code of this file.

Classes

struct  RNGState

Functions

CCL_NAMESPACE_BEGIN ccl_device_inline void path_state_init_queues (IntegratorState state)
ccl_device_inline void path_state_init (IntegratorState state, const ccl_global KernelWorkTile *ccl_restrict tile, const int x, const int y)
ccl_device_inline void path_state_init_integrator (KernelGlobals kg, IntegratorState state, const int sample, const uint rng_pixel, const Spectrum throughput)
ccl_device_inline void path_state_next (KernelGlobals kg, IntegratorState state, const int label, const int shader_flag)
ccl_device_inline uint path_state_ray_visibility (ConstIntegratorState state)
ccl_device_inline float path_state_continuation_probability (KernelGlobals kg, ConstIntegratorState state, const uint32_t path_flag)
ccl_device_inline bool path_state_ao_bounce (KernelGlobals kg, ConstIntegratorState state)
ccl_device_inline void path_state_rng_load (ConstIntegratorState state, ccl_private RNGState *rng_state)
ccl_device_inline void shadow_path_state_rng_load (ConstIntegratorShadowState state, ccl_private RNGState *rng_state)
ccl_device_inline void path_state_rng_scramble (ccl_private RNGState *rng_state, const int seed)
ccl_device_inline float path_state_rng_1D (KernelGlobals kg, const ccl_private RNGState *rng_state, const int dimension)
ccl_device_inline float2 path_state_rng_2D (KernelGlobals kg, const ccl_private RNGState *rng_state, const int dimension)
ccl_device_inline float3 path_state_rng_3D (KernelGlobals kg, const ccl_private RNGState *rng_state, const int dimension)
ccl_device_inline float path_branched_rng_1D (KernelGlobals kg, const ccl_private RNGState *rng_state, const int branch, const int num_branches, const int dimension)
ccl_device_inline float2 path_branched_rng_2D (KernelGlobals kg, const ccl_private RNGState *rng_state, const int branch, const int num_branches, const int dimension)
ccl_device_inline float3 path_branched_rng_3D (KernelGlobals kg, const ccl_private RNGState *rng_state, const int branch, const int num_branches, const int dimension)
ccl_device_inline float path_state_rng_light_termination (KernelGlobals kg, const ccl_private RNGState *state)

Function Documentation

◆ path_branched_rng_1D()

ccl_device_inline float path_branched_rng_1D ( KernelGlobals kg,
const ccl_private RNGState * rng_state,
const int branch,
const int num_branches,
const int dimension )

Definition at line 377 of file path_state.h.

References ccl_device_inline, ccl_private, and path_rng_1D().

◆ path_branched_rng_2D()

ccl_device_inline float2 path_branched_rng_2D ( KernelGlobals kg,
const ccl_private RNGState * rng_state,
const int branch,
const int num_branches,
const int dimension )

Definition at line 389 of file path_state.h.

References ccl_device_inline, ccl_private, and path_rng_2D().

◆ path_branched_rng_3D()

ccl_device_inline float3 path_branched_rng_3D ( KernelGlobals kg,
const ccl_private RNGState * rng_state,
const int branch,
const int num_branches,
const int dimension )

Definition at line 401 of file path_state.h.

References ccl_device_inline, ccl_private, and path_rng_3D().

◆ path_state_ao_bounce()

◆ path_state_continuation_probability()

ccl_device_inline float path_state_continuation_probability ( KernelGlobals kg,
ConstIntegratorState state,
const uint32_t path_flag )

◆ path_state_init()

ccl_device_inline void path_state_init ( IntegratorState state,
const ccl_global KernelWorkTile *ccl_restrict tile,
const int x,
const int y )

◆ path_state_init_integrator()

◆ path_state_init_queues()

◆ path_state_next()

◆ path_state_ray_visibility()

◆ path_state_rng_1D()

ccl_device_inline float path_state_rng_1D ( KernelGlobals kg,
const ccl_private RNGState * rng_state,
const int dimension )

◆ path_state_rng_2D()

ccl_device_inline float2 path_state_rng_2D ( KernelGlobals kg,
const ccl_private RNGState * rng_state,
const int dimension )

Definition at line 361 of file path_state.h.

References ccl_device_inline, ccl_private, and path_rng_2D().

Referenced by kernel_path_mnee_sample().

◆ path_state_rng_3D()

ccl_device_inline float3 path_state_rng_3D ( KernelGlobals kg,
const ccl_private RNGState * rng_state,
const int dimension )

◆ path_state_rng_light_termination()

ccl_device_inline float path_state_rng_light_termination ( KernelGlobals kg,
const ccl_private RNGState * state )

◆ path_state_rng_load()

ccl_device_inline void path_state_rng_load ( ConstIntegratorState state,
ccl_private RNGState * rng_state )

◆ path_state_rng_scramble()

ccl_device_inline void path_state_rng_scramble ( ccl_private RNGState * rng_state,
const int seed )

Definition at line 345 of file path_state.h.

References ccl_device_inline, ccl_private, hash_hp_seeded_uint(), and seed.

◆ shadow_path_state_rng_load()

ccl_device_inline void shadow_path_state_rng_load ( ConstIntegratorShadowState state,
ccl_private RNGState * rng_state )

Definition at line 337 of file path_state.h.

References ccl_device_inline, ccl_private, INTEGRATOR_STATE, sample, and state.