Blender  V2.93
Functions
geom_triangle.h File Reference

Go to the source code of this file.

Functions

CCL_NAMESPACE_BEGIN ccl_device_inline float3 triangle_normal (KernelGlobals *kg, ShaderData *sd)
 
ccl_device_inline void triangle_point_normal (KernelGlobals *kg, int object, int prim, float u, float v, float3 *P, float3 *Ng, int *shader)
 
ccl_device_inline void triangle_vertices (KernelGlobals *kg, int prim, float3 P[3])
 
ccl_device_inline float3 triangle_smooth_normal (KernelGlobals *kg, float3 Ng, int prim, float u, float v)
 
ccl_device_inline void triangle_dPdudv (KernelGlobals *kg, int prim, ccl_addr_space float3 *dPdu, ccl_addr_space float3 *dPdv)
 
ccl_device float triangle_attribute_float (KernelGlobals *kg, const ShaderData *sd, const AttributeDescriptor desc, float *dx, float *dy)
 
ccl_device float2 triangle_attribute_float2 (KernelGlobals *kg, const ShaderData *sd, const AttributeDescriptor desc, float2 *dx, float2 *dy)
 
ccl_device float3 triangle_attribute_float3 (KernelGlobals *kg, const ShaderData *sd, const AttributeDescriptor desc, float3 *dx, float3 *dy)
 
ccl_device float4 triangle_attribute_float4 (KernelGlobals *kg, const ShaderData *sd, const AttributeDescriptor desc, float4 *dx, float4 *dy)
 

Function Documentation

◆ triangle_attribute_float()

ccl_device float triangle_attribute_float ( KernelGlobals *  kg,
const ShaderData sd,
const AttributeDescriptor  desc,
float dx,
float dy 
)

◆ triangle_attribute_float2()

ccl_device float2 triangle_attribute_float2 ( KernelGlobals *  kg,
const ShaderData sd,
const AttributeDescriptor  desc,
float2 dx,
float2 dy 
)

◆ triangle_attribute_float3()

ccl_device float3 triangle_attribute_float3 ( KernelGlobals *  kg,
const ShaderData sd,
const AttributeDescriptor  desc,
float3 dx,
float3 dy 
)

◆ triangle_attribute_float4()

ccl_device float4 triangle_attribute_float4 ( KernelGlobals *  kg,
const ShaderData sd,
const AttributeDescriptor  desc,
float4 *  dx,
float4 *  dy 
)

◆ triangle_dPdudv()

ccl_device_inline void triangle_dPdudv ( KernelGlobals *  kg,
int  prim,
ccl_addr_space float3 dPdu,
ccl_addr_space float3 dPdv 
)

Definition at line 96 of file geom_triangle.h.

References float4_to_float3(), kernel_tex_fetch, and uint4::w.

Referenced by shader_setup_from_ray(), and shader_setup_from_sample().

◆ triangle_normal()

CCL_NAMESPACE_BEGIN ccl_device_inline float3 triangle_normal ( KernelGlobals *  kg,
ShaderData sd 
)

◆ triangle_point_normal()

ccl_device_inline void triangle_point_normal ( KernelGlobals *  kg,
int  object,
int  prim,
float  u,
float  v,
float3 P,
float3 Ng,
int *  shader 
)

◆ triangle_smooth_normal()

ccl_device_inline float3 triangle_smooth_normal ( KernelGlobals *  kg,
float3  Ng,
int  prim,
float  u,
float  v 
)

◆ triangle_vertices()

ccl_device_inline void triangle_vertices ( KernelGlobals *  kg,
int  prim,
float3  P[3] 
)