Blender
V3.3
|
Go to the source code of this file.
ccl_device float triangle_attribute_float | ( | KernelGlobals | kg, |
ccl_private const ShaderData * | sd, | ||
const AttributeDescriptor | desc, | ||
ccl_private float * | dx, | ||
ccl_private float * | dy | ||
) |
Definition at line 146 of file triangle.h.
References ATTR_ELEMENT_CORNER, ATTR_ELEMENT_FACE, ATTR_ELEMENT_MESH, ATTR_ELEMENT_OBJECT, ATTR_ELEMENT_VERTEX, ATTR_ELEMENT_VERTEX_MOTION, AttributeDescriptor::element, kernel_data_fetch, offset, AttributeDescriptor::offset, uint4::x, uint4::y, and uint4::z.
Referenced by primitive_surface_attribute_float().
ccl_device float2 triangle_attribute_float2 | ( | KernelGlobals | kg, |
ccl_private const ShaderData * | sd, | ||
const AttributeDescriptor | desc, | ||
ccl_private float2 * | dx, | ||
ccl_private float2 * | dy | ||
) |
Definition at line 196 of file triangle.h.
References ATTR_ELEMENT_CORNER, ATTR_ELEMENT_FACE, ATTR_ELEMENT_MESH, ATTR_ELEMENT_OBJECT, ATTR_ELEMENT_VERTEX, ATTR_ELEMENT_VERTEX_MOTION, AttributeDescriptor::element, kernel_data_fetch, make_float2, offset, AttributeDescriptor::offset, uint4::x, uint4::y, and uint4::z.
Referenced by primitive_surface_attribute_float2().
ccl_device float3 triangle_attribute_float3 | ( | KernelGlobals | kg, |
ccl_private const ShaderData * | sd, | ||
const AttributeDescriptor | desc, | ||
ccl_private float3 * | dx, | ||
ccl_private float3 * | dy | ||
) |
Definition at line 246 of file triangle.h.
References ATTR_ELEMENT_CORNER, ATTR_ELEMENT_FACE, ATTR_ELEMENT_MESH, ATTR_ELEMENT_OBJECT, ATTR_ELEMENT_VERTEX, ATTR_ELEMENT_VERTEX_MOTION, AttributeDescriptor::element, kernel_data_fetch, make_float3, offset, AttributeDescriptor::offset, uint4::x, uint4::y, and uint4::z.
Referenced by primitive_motion_vector(), and primitive_surface_attribute_float3().
ccl_device float4 triangle_attribute_float4 | ( | KernelGlobals | kg, |
ccl_private const ShaderData * | sd, | ||
const AttributeDescriptor | desc, | ||
ccl_private float4 * | dx, | ||
ccl_private float4 * | dy | ||
) |
Definition at line 296 of file triangle.h.
References ATTR_ELEMENT_CORNER, ATTR_ELEMENT_CORNER_BYTE, ATTR_ELEMENT_FACE, ATTR_ELEMENT_MESH, ATTR_ELEMENT_OBJECT, ATTR_ELEMENT_VERTEX, ATTR_ELEMENT_VERTEX_MOTION, color_srgb_to_linear_v4(), color_uchar4_to_float4(), AttributeDescriptor::element, kernel_data_fetch, offset, AttributeDescriptor::offset, uint4::x, uint4::y, uint4::z, and zero_float4().
Referenced by primitive_surface_attribute_float4().
ccl_device_inline void triangle_dPdudv | ( | KernelGlobals | kg, |
int | prim, | ||
ccl_private float3 * | dPdu, | ||
ccl_private float3 * | dPdv | ||
) |
Definition at line 128 of file triangle.h.
References kernel_data_fetch, and uint4::w.
Referenced by integrator_init_from_bake(), shader_setup_from_ray(), and shader_setup_from_sample().
CCL_NAMESPACE_BEGIN ccl_device_inline float3 triangle_normal | ( | KernelGlobals | kg, |
ccl_private ShaderData * | sd | ||
) |
Definition at line 15 of file triangle.h.
References blender::math::cross(), kernel_data_fetch, blender::math::normalize(), SD_OBJECT_NEGATIVE_SCALE_APPLIED, v1, v2, and uint4::w.
Referenced by GIM_TRIANGLE::get_edge_plane(), GIM_TRIANGLE::ray_collision(), GIM_TRIANGLE::ray_collision_front_side(), and shader_setup_from_ray().
ccl_device_inline void triangle_point_normal | ( | KernelGlobals | kg, |
int | object, | ||
int | prim, | ||
float | u, | ||
float | v, | ||
ccl_private float3 * | P, | ||
ccl_private float3 * | Ng, | ||
ccl_private int * | shader | ||
) |
Definition at line 33 of file triangle.h.
References blender::math::cross(), kernel_data_fetch, blender::math::normalize(), P(), SD_OBJECT_NEGATIVE_SCALE_APPLIED, v, v1, v2, w(), and uint4::w.
Referenced by integrator_init_from_bake(), and shader_setup_from_displace().
ccl_device_inline float3 triangle_smooth_normal | ( | KernelGlobals | kg, |
float3 | Ng, | ||
int | prim, | ||
float | u, | ||
float | v | ||
) |
Definition at line 92 of file triangle.h.
References blender::math::is_zero(), kernel_data_fetch, N, safe_normalize(), v, uint4::x, uint4::y, and uint4::z.
Referenced by integrator_init_from_bake(), shader_setup_from_ray(), and shader_setup_from_sample().
ccl_device_inline float3 triangle_smooth_normal_unnormalized | ( | KernelGlobals | kg, |
ccl_private const ShaderData * | sd, | ||
float3 | Ng, | ||
int | prim, | ||
float | u, | ||
float | v | ||
) |
Definition at line 105 of file triangle.h.
References blender::math::is_zero(), kernel_data_fetch, N, object_inverse_normal_transform(), SD_OBJECT_TRANSFORM_APPLIED, v, uint4::x, uint4::y, and uint4::z.
Referenced by OSLRenderServices::get_object_standard_attribute(), and svm_node_normal_map().
ccl_device_inline void triangle_vertices | ( | KernelGlobals | kg, |
int | prim, | ||
float3 | P[3] | ||
) |
Definition at line 65 of file triangle.h.
References kernel_data_fetch, P(), and uint4::w.
Referenced by bake_offset_towards_center(), OSLRenderServices::get_object_standard_attribute(), triangle_world_space_vertices(), and wireframe().
ccl_device_inline void triangle_vertices_and_normals | ( | KernelGlobals | kg, |
int | prim, | ||
float3 | P[3], | ||
float3 | N[3] | ||
) |
Definition at line 75 of file triangle.h.
References kernel_data_fetch, N, P(), uint4::w, uint4::x, uint4::y, and uint4::z.
Referenced by shadow_ray_smooth_surface_offset().