Blender V2.61 - r43446
|
Go to the source code of this file.
Functions | |
CCL_NAMESPACE_BEGIN __device float3 | direct_emissive_eval (KernelGlobals *kg, float rando, LightSample *ls, float u, float v, float3 I) |
__device bool | direct_emission (KernelGlobals *kg, ShaderData *sd, int lindex, float randt, float rando, float randu, float randv, Ray *ray, float3 *eval) |
__device float3 | indirect_emission (KernelGlobals *kg, ShaderData *sd, float t, int path_flag, float bsdf_pdf) |
__device bool direct_emission | ( | KernelGlobals * | kg, |
ShaderData * | sd, | ||
int | lindex, | ||
float | randt, | ||
float | rando, | ||
float | randu, | ||
float | randv, | ||
Ray * | ray, | ||
float3 * | eval | ||
) |
Definition at line 49 of file kernel_emission.h.
References Ray::D, LightSample::D, direct_emissive_eval(), FLT_MAX, is_zero(), light_sample(), light_sample_pdf(), light_select(), M_1_PI_F, ShaderData::Ng, LightSample::Ng, normalize_len(), Ray::P, LightSample::P, ShaderData::P, power_heuristic(), LightSample::prim, ray_offset(), LightSample::shader, SHADER_AREA_LIGHT, shader_bsdf_eval(), SHADER_CAST_SHADOW, LightSample::t, and Ray::t.
Referenced by kernel_path_integrate().
CCL_NAMESPACE_BEGIN __device float3 direct_emissive_eval | ( | KernelGlobals * | kg, |
float | rando, | ||
LightSample * | ls, | ||
float | u, | ||
float | v, | ||
float3 | I | ||
) |
Definition at line 23 of file kernel_emission.h.
References ShaderData::flag, make_float3(), ShaderData::Ng, LightSample::Ng, LightSample::object, LightSample::P, LightSample::prim, SD_EMISSION, LightSample::shader, shader_emissive_eval(), shader_eval_surface(), shader_release(), and shader_setup_from_sample().
Referenced by direct_emission().
__device float3 indirect_emission | ( | KernelGlobals * | kg, |
ShaderData * | sd, | ||
float | t, | ||
int | path_flag, | ||
float | bsdf_pdf | ||
) |
Definition at line 122 of file kernel_emission.h.
References ShaderData::flag, ShaderData::I, L, ShaderData::Ng, PATH_RAY_MIS_SKIP, power_heuristic(), SD_SAMPLE_AS_LIGHT, shader_emissive_eval(), and triangle_light_pdf().
Referenced by kernel_path_integrate().