|
Blender V4.3
|
#include "kernel/sample/lcg.h"Go to the source code of this file.
Functions | |
| CCL_NAMESPACE_BEGIN ccl_device_inline bool | triangle_intersect (KernelGlobals kg, ccl_private Intersection *isect, float3 P, float3 dir, float tmin, float tmax, uint visibility, int object, int prim, int prim_addr) |
| ccl_device_inline float3 | triangle_point_from_uv (KernelGlobals kg, ccl_private ShaderData *sd, const int isect_prim, const float u, const float v) |
| ccl_device_inline void | triangle_shader_setup (KernelGlobals kg, ccl_private ShaderData *sd) |
| CCL_NAMESPACE_BEGIN ccl_device_inline bool triangle_intersect | ( | KernelGlobals | kg, |
| ccl_private Intersection * | isect, | ||
| float3 | P, | ||
| float3 | dir, | ||
| float | tmin, | ||
| float | tmax, | ||
| uint | visibility, | ||
| int | object, | ||
| int | prim, | ||
| int | prim_addr ) |
Definition at line 17 of file triangle_intersect.h.
References kernel_data_fetch, P, PRIMITIVE_TRIANGLE, ray_triangle_intersect(), v, uint3::x, uint3::y, and uint3::z.
| ccl_device_inline float3 triangle_point_from_uv | ( | KernelGlobals | kg, |
| ccl_private ShaderData * | sd, | ||
| const int | isect_prim, | ||
| const float | u, | ||
| const float | v ) |
Use the barycentric coordinates to get the intersection location
Definition at line 140 of file triangle_intersect.h.
References kernel_data_fetch, object_get_transform(), P, SD_OBJECT_TRANSFORM_APPLIED, transform_point(), v, uint3::x, uint3::y, and uint3::z.
Referenced by triangle_shader_setup().
| ccl_device_inline void triangle_shader_setup | ( | KernelGlobals | kg, |
| ccl_private ShaderData * | sd ) |
Definition at line 162 of file triangle_intersect.h.
References kernel_data_fetch, SHADER_SMOOTH_NORMAL, triangle_dPdudv(), triangle_normal(), triangle_point_from_uv(), and triangle_smooth_normal().
Referenced by shader_setup_from_ray().