![]() |
Blender V2.61 - r43446
|
Go to the source code of this file.
Functions | |
| CCL_NAMESPACE_BEGIN __device_inline float3 | triangle_point_MT (KernelGlobals *kg, int tri_index, float u, float v) |
| __device_inline float3 | triangle_sample_MT (KernelGlobals *kg, int tri_index, float randu, float randv) |
| __device_inline float3 | triangle_normal_MT (KernelGlobals *kg, int tri_index, int *shader) |
| __device_inline float3 | triangle_smooth_normal (KernelGlobals *kg, int tri_index, float u, float v) |
| __device_inline void | triangle_dPdudv (KernelGlobals *kg, float3 *dPdu, float3 *dPdv, int tri) |
| __device float | triangle_attribute_float (KernelGlobals *kg, const ShaderData *sd, AttributeElement elem, int offset, float *dx, float *dy) |
| __device float3 | triangle_attribute_float3 (KernelGlobals *kg, const ShaderData *sd, AttributeElement elem, int offset, float3 *dx, float3 *dy) |
| __device float triangle_attribute_float | ( | KernelGlobals * | kg, |
| const ShaderData * | sd, | ||
| AttributeElement | elem, | ||
| int | offset, | ||
| float * | dx, | ||
| float * | dy | ||
| ) |
Definition at line 96 of file kernel_triangle.h.
References __float_as_int(), ATTR_ELEMENT_CORNER, ATTR_ELEMENT_FACE, ATTR_ELEMENT_VERTEX, ShaderData::du, ShaderData::dv, differential::dx, differential::dy, float4_to_float3(), kernel_tex_fetch, ShaderData::prim, ShaderData::u, ShaderData::v, float3::x, float3::y, and float3::z.
Referenced by get_mesh_attribute(), svm_node_attr(), svm_node_attr_bump_dx(), and svm_node_attr_bump_dy().
| __device float3 triangle_attribute_float3 | ( | KernelGlobals * | kg, |
| const ShaderData * | sd, | ||
| AttributeElement | elem, | ||
| int | offset, | ||
| float3 * | dx, | ||
| float3 * | dy | ||
| ) |
Definition at line 139 of file kernel_triangle.h.
References __float_as_int(), ATTR_ELEMENT_CORNER, ATTR_ELEMENT_FACE, ATTR_ELEMENT_VERTEX, ShaderData::du, ShaderData::dv, differential::dx, differential::dy, float4_to_float3(), kernel_tex_fetch, make_float3(), ShaderData::prim, ShaderData::u, ShaderData::v, float3::x, float3::y, and float3::z.
Referenced by get_mesh_attribute(), svm_node_attr(), svm_node_attr_bump_dx(), and svm_node_attr_bump_dy().
Definition at line 80 of file kernel_triangle.h.
References __float_as_int(), float4_to_float3(), kernel_tex_fetch, float3::x, float3::y, and float3::z.
Referenced by shader_setup_from_ray(), and shader_setup_from_sample().
| __device_inline float3 triangle_normal_MT | ( | KernelGlobals * | kg, |
| int | tri_index, | ||
| int * | shader | ||
| ) |
Definition at line 49 of file kernel_triangle.h.
References __float_as_int(), cross(), float4_to_float3(), kernel_tex_fetch, make_float3(), normalize(), float4::w, float3::x, float4::x, float3::y, float4::y, float3::z, and float4::z.
Referenced by shader_setup_from_displace(), and triangle_light_sample().
| CCL_NAMESPACE_BEGIN __device_inline float3 triangle_point_MT | ( | KernelGlobals * | kg, |
| int | tri_index, | ||
| float | u, | ||
| float | v | ||
| ) |
Definition at line 22 of file kernel_triangle.h.
References __float_as_int(), float4_to_float3(), kernel_tex_fetch, float3::x, float3::y, and float3::z.
Referenced by shader_setup_from_displace(), and triangle_sample_MT().
| __device_inline float3 triangle_sample_MT | ( | KernelGlobals * | kg, |
| int | tri_index, | ||
| float | randu, | ||
| float | randv | ||
| ) |
Definition at line 37 of file kernel_triangle.h.
References sqrtf, and triangle_point_MT().
Referenced by triangle_light_sample().
| __device_inline float3 triangle_smooth_normal | ( | KernelGlobals * | kg, |
| int | tri_index, | ||
| float | u, | ||
| float | v | ||
| ) |
Definition at line 68 of file kernel_triangle.h.
References __float_as_int(), float4_to_float3(), kernel_tex_fetch, normalize(), float3::x, float3::y, and float3::z.
Referenced by shader_setup_from_ray(), and shader_setup_from_sample().