Blender V5.0
lcg.h File Reference
#include "util/hash.h"

Go to the source code of this file.

Functions

template<class T>
CCL_NAMESPACE_BEGIN ccl_device uint lcg_step_uint (T rng)
template<class T>
ccl_device float lcg_step_float (T rng)
template<class T>
ccl_device float3 lcg_step_float3 (T rng)
ccl_device uint lcg_init (const uint seed)
ccl_device_inline uint lcg_state_init (const uint rng_hash, const uint rng_offset, const uint sample, const uint scramble)

Function Documentation

◆ lcg_init()

ccl_device uint lcg_init ( const uint seed)

Definition at line 38 of file lcg.h.

References ccl_device, lcg_step_uint(), and seed.

◆ lcg_state_init()

ccl_device_inline uint lcg_state_init ( const uint rng_hash,
const uint rng_offset,
const uint sample,
const uint scramble )

Definition at line 45 of file lcg.h.

References ccl_device_inline, hash_uint3(), and sample.

Referenced by integrate_surface(), and kernel_volume_density_evaluate().

◆ lcg_step_float()

template<class T>
ccl_device float lcg_step_float ( T rng)

◆ lcg_step_float3()

template<class T>
ccl_device float3 lcg_step_float3 ( T rng)

Definition at line 29 of file lcg.h.

References ccl_device, lcg_step_float(), make_float3(), and T.

Referenced by CCL_NAMESPACE_BEGIN::kernel_tex_image_interp_3d().

◆ lcg_step_uint()

template<class T>
CCL_NAMESPACE_BEGIN ccl_device uint lcg_step_uint ( T rng)

Definition at line 14 of file lcg.h.

References ccl_device, and T.

Referenced by __anyhit__kernel_optix_local_hit(), kernel_embree_filter_occluded_local_func_impl(), and lcg_init().