|
Blender V5.0
|
Go to the source code of this file.
Functions | |
| CCL_NAMESPACE_BEGIN ccl_device_inline void | motion_triangle_verts_for_step (KernelGlobals kg, const uint3 tri_vindex, int offset, const int numverts, const int numsteps, int step, float3 verts[3]) |
| ccl_device_inline void | motion_triangle_normals_for_step (KernelGlobals kg, const uint3 tri_vindex, int offset, const int numverts, const int numsteps, int step, float3 normals[3]) |
| ccl_device_inline void | motion_triangle_compute_info (KernelGlobals kg, const int object, const float time, const int prim, ccl_private uint3 *tri_vindex, ccl_private int *numsteps, ccl_private int *step, ccl_private float *t) |
| ccl_device_inline void | motion_triangle_vertices (KernelGlobals kg, const int object, const uint3 tri_vindex, const int numsteps, const int numverts, const int step, const float t, float3 verts[3]) |
| ccl_device_inline void | motion_triangle_vertices (KernelGlobals kg, const int object, const int prim, const float time, float3 verts[3]) |
| ccl_device_inline void | motion_triangle_normals (KernelGlobals kg, const int object, const uint3 tri_vindex, const int numsteps, const int numverts, const int step, const float t, float3 normals[3]) |
| ccl_device_inline void | motion_triangle_vertices_and_normals (KernelGlobals kg, const int object, const int prim, const float time, float3 verts[3], float3 normals[3]) |
| ccl_device_inline float3 | motion_triangle_smooth_normal (KernelGlobals kg, const float3 Ng, const int object, const uint3 tri_vindex, const int numsteps, const int step, const float t, const float u, const float v) |
| ccl_device_inline float3 | motion_triangle_smooth_normal (KernelGlobals kg, const float3 Ng, const int object, const int prim, const float u, float v, const float time) |
| ccl_device_inline float3 | motion_triangle_smooth_normal (KernelGlobals kg, const float3 Ng, const int object, const int prim, const float time, const float u, const float v, const differential du, const differential dv, ccl_private float3 &N_x, ccl_private float3 &N_y) |
| ccl_device_inline void motion_triangle_compute_info | ( | KernelGlobals | kg, |
| const int | object, | ||
| const float | time, | ||
| const int | prim, | ||
| ccl_private uint3 * | tri_vindex, | ||
| ccl_private int * | numsteps, | ||
| ccl_private int * | step, | ||
| ccl_private float * | t ) |
Definition at line 82 of file motion_triangle.h.
References ccl_device_inline, ccl_private, kernel_data_fetch, min, and step.
Referenced by motion_triangle_shader_setup(), motion_triangle_smooth_normal(), motion_triangle_smooth_normal(), motion_triangle_vertices(), and motion_triangle_vertices_and_normals().
| ccl_device_inline void motion_triangle_normals | ( | KernelGlobals | kg, |
| const int | object, | ||
| const uint3 | tri_vindex, | ||
| const int | numsteps, | ||
| const int | numverts, | ||
| const int | step, | ||
| const float | t, | ||
| float3 | normals[3] ) |
Definition at line 140 of file motion_triangle.h.
References ATTR_STD_MOTION_VERTEX_NORMAL, ATTR_STD_NOT_FOUND, ccl_device_inline, intersection_find_attribute(), kernel_assert, motion_triangle_normals_for_step(), normalize, normals, and step.
Referenced by motion_triangle_smooth_normal(), motion_triangle_smooth_normal(), and motion_triangle_vertices_and_normals().
| ccl_device_inline void motion_triangle_normals_for_step | ( | KernelGlobals | kg, |
| const uint3 | tri_vindex, | ||
| int | offset, | ||
| const int | numverts, | ||
| const int | numsteps, | ||
| int | step, | ||
| float3 | normals[3] ) |
Definition at line 54 of file motion_triangle.h.
References ccl_device_inline, kernel_data_fetch, normals, step, uint3::x, uint3::y, and uint3::z.
Referenced by motion_triangle_normals().
| ccl_device_inline float3 motion_triangle_smooth_normal | ( | KernelGlobals | kg, |
| const float3 | Ng, | ||
| const int | object, | ||
| const int | prim, | ||
| const float | time, | ||
| const float | u, | ||
| const float | v, | ||
| const differential | du, | ||
| const differential | dv, | ||
| ccl_private float3 & | N_x, | ||
| ccl_private float3 & | N_y ) |
Definition at line 223 of file motion_triangle.h.
References ccl_device_inline, ccl_private, differential::dx, differential::dy, is_zero(), kernel_data_fetch, motion_triangle_compute_info(), motion_triangle_normals(), N, safe_normalize(), step, triangle_interpolate(), and v.
| ccl_device_inline float3 motion_triangle_smooth_normal | ( | KernelGlobals | kg, |
| const float3 | Ng, | ||
| const int | object, | ||
| const int | prim, | ||
| const float | u, | ||
| float | v, | ||
| const float | time ) |
Definition at line 204 of file motion_triangle.h.
References ccl_device_inline, motion_triangle_compute_info(), motion_triangle_smooth_normal(), step, and v.
| ccl_device_inline float3 motion_triangle_smooth_normal | ( | KernelGlobals | kg, |
| const float3 | Ng, | ||
| const int | object, | ||
| const uint3 | tri_vindex, | ||
| const int | numsteps, | ||
| const int | step, | ||
| const float | t, | ||
| const float | u, | ||
| const float | v ) |
Definition at line 183 of file motion_triangle.h.
References ccl_device_inline, is_zero(), kernel_data_fetch, motion_triangle_normals(), N, normals, safe_normalize(), step, v, and w().
Referenced by attribute_bump_map_normal(), motion_triangle_shader_setup(), motion_triangle_smooth_normal(), and texco_normal_from_uv().
| ccl_device_inline void motion_triangle_vertices | ( | KernelGlobals | kg, |
| const int | object, | ||
| const int | prim, | ||
| const float | time, | ||
| float3 | verts[3] ) |
Definition at line 127 of file motion_triangle.h.
References ccl_device_inline, kernel_data_fetch, motion_triangle_compute_info(), motion_triangle_vertices(), step, and verts.
| ccl_device_inline void motion_triangle_vertices | ( | KernelGlobals | kg, |
| const int | object, | ||
| const uint3 | tri_vindex, | ||
| const int | numsteps, | ||
| const int | numverts, | ||
| const int | step, | ||
| const float | t, | ||
| float3 | verts[3] ) |
Definition at line 103 of file motion_triangle.h.
References ATTR_STD_MOTION_VERTEX_POSITION, ATTR_STD_NOT_FOUND, ccl_device_inline, intersection_find_attribute(), kernel_assert, motion_triangle_verts_for_step(), step, and verts.
Referenced by OSLRenderServices::get_object_standard_attribute(), integrate_surface_ray_offset(), motion_triangle_intersect(), motion_triangle_shader_setup(), motion_triangle_vertices(), motion_triangle_vertices_and_normals(), triangle_world_space_vertices(), and wireframe().
| ccl_device_inline void motion_triangle_vertices_and_normals | ( | KernelGlobals | kg, |
| const int | object, | ||
| const int | prim, | ||
| const float | time, | ||
| float3 | verts[3], | ||
| float3 | normals[3] ) |
Definition at line 165 of file motion_triangle.h.
References ccl_device_inline, kernel_data_fetch, motion_triangle_compute_info(), motion_triangle_normals(), motion_triangle_vertices(), normals, step, and verts.
Referenced by mnee_setup_manifold_vertex(), and shadow_ray_smooth_surface_offset().
| CCL_NAMESPACE_BEGIN ccl_device_inline void motion_triangle_verts_for_step | ( | KernelGlobals | kg, |
| const uint3 | tri_vindex, | ||
| int | offset, | ||
| const int | numverts, | ||
| const int | numsteps, | ||
| int | step, | ||
| float3 | verts[3] ) |
Definition at line 26 of file motion_triangle.h.
References ccl_device_inline, kernel_data_fetch, step, verts, uint3::x, uint3::y, and uint3::z.
Referenced by motion_triangle_vertices().