Blender V4.3
volume.h File Reference

Go to the source code of this file.

Macros

#define VOLUME_THROUGHPUT_EPSILON   1e-6f
 

Functions

CCL_NAMESPACE_BEGIN ccl_device void volume_extinction_setup (ccl_private ShaderData *sd, Spectrum weight)
 
ccl_device Spectrum volume_phase_eval (ccl_private const ShaderData *sd, ccl_private const ShaderVolumeClosure *svc, float3 wo, ccl_private float *pdf)
 
ccl_device int volume_phase_sample (ccl_private const ShaderData *sd, ccl_private const ShaderVolumeClosure *svc, float2 rand, ccl_private Spectrum *eval, ccl_private float3 *wo, ccl_private float *pdf)
 
ccl_device bool volume_phase_equal (ccl_private const ShaderClosure *c1, ccl_private const ShaderClosure *c2)
 
ccl_device float volume_phase_get_g (ccl_private const ShaderVolumeClosure *svc)
 
ccl_device Spectrum volume_color_transmittance (Spectrum sigma, float t)
 
ccl_device float volume_channel_get (Spectrum value, int channel)
 
ccl_device int volume_sample_channel (Spectrum albedo, Spectrum throughput, ccl_private float *rand, ccl_private Spectrum *pdf)
 

Macro Definition Documentation

◆ VOLUME_THROUGHPUT_EPSILON

#define VOLUME_THROUGHPUT_EPSILON   1e-6f

Definition at line 130 of file kernel/closure/volume.h.

Function Documentation

◆ volume_channel_get()

ccl_device float volume_channel_get ( Spectrum value,
int channel )

Definition at line 137 of file kernel/closure/volume.h.

References GET_SPECTRUM_CHANNEL.

◆ volume_color_transmittance()

ccl_device Spectrum volume_color_transmittance ( Spectrum sigma,
float t )

Definition at line 132 of file kernel/closure/volume.h.

References exp().

◆ volume_extinction_setup()

◆ volume_phase_equal()

◆ volume_phase_eval()

◆ volume_phase_get_g()

◆ volume_phase_sample()

◆ volume_sample_channel()

ccl_device int volume_sample_channel ( Spectrum albedo,
Spectrum throughput,
ccl_private float * rand,
ccl_private Spectrum * pdf )