Blender V5.0
triangle_intersect.h File Reference

Go to the source code of this file.

Functions

CCL_NAMESPACE_BEGIN ccl_device_inline bool triangle_intersect (KernelGlobals kg, ccl_private Intersection *isect, const float3 P, const float3 dir, const float tmin, const float tmax, const uint visibility, const int object, const int prim, const 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)

Function Documentation

◆ triangle_intersect()

CCL_NAMESPACE_BEGIN ccl_device_inline bool triangle_intersect ( KernelGlobals kg,
ccl_private Intersection * isect,
const float3 P,
const float3 dir,
const float tmin,
const float tmax,
const uint visibility,
const int object,
const int prim,
const int prim_addr )

◆ triangle_point_from_uv()

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 122 of file triangle_intersect.h.

References ccl_device_inline, ccl_private, 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().

◆ triangle_shader_setup()