|
Blender V4.3
|
#include "util/color.h"Go to the source code of this file.
Classes | |
| struct | PatchHandle |
Typedefs | |
| typedef CCL_NAMESPACE_BEGIN struct PatchHandle | PatchHandle |
Based on code from OpenSubdiv.
Definition in file kernel/geom/patch.h.
| typedef CCL_NAMESPACE_BEGIN struct PatchHandle PatchHandle |
| ccl_device_inline void patch_eval_adjust_boundary_weights | ( | uint | bits, |
| ccl_private float * | s, | ||
| ccl_private float * | t ) |
Definition at line 120 of file kernel/geom/patch.h.
Referenced by patch_eval_basis().
| ccl_device_inline void patch_eval_basis | ( | KernelGlobals | kg, |
| ccl_private const PatchHandle * | handle, | ||
| float | u, | ||
| float | v, | ||
| float | weights[PATCH_MAX_CONTROL_VERTS], | ||
| float | weights_du[PATCH_MAX_CONTROL_VERTS], | ||
| float | weights_dv[PATCH_MAX_CONTROL_VERTS] ) |
Definition at line 206 of file kernel/geom/patch.h.
References kernel_data_fetch, l, patch_eval_adjust_boundary_weights(), patch_eval_bspline_weights(), patch_eval_depth(), patch_eval_normalize_coords(), and v.
Referenced by patch_eval_control_verts().
| ccl_device_inline void patch_eval_bspline_weights | ( | float | t, |
| ccl_private float * | point, | ||
| ccl_private float * | deriv ) |
Definition at line 98 of file kernel/geom/patch.h.
Referenced by patch_eval_basis().
| ccl_device_inline int patch_eval_control_verts | ( | KernelGlobals | kg, |
| int | object, | ||
| int | patch, | ||
| float | u, | ||
| float | v, | ||
| int | channel, | ||
| int | indices[PATCH_MAX_CONTROL_VERTS], | ||
| float | weights[PATCH_MAX_CONTROL_VERTS], | ||
| float | weights_du[PATCH_MAX_CONTROL_VERTS], | ||
| float | weights_dv[PATCH_MAX_CONTROL_VERTS] ) |
Definition at line 245 of file kernel/geom/patch.h.
References kernel_assert, patch_eval_basis(), patch_eval_indices(), patch_map_find_patch(), and v.
Referenced by patch_eval_float(), patch_eval_float2(), patch_eval_float3(), patch_eval_float4(), and patch_eval_uchar4().
| ccl_device_inline int patch_eval_depth | ( | uint | patch_bits | ) |
Definition at line 151 of file kernel/geom/patch.h.
Referenced by patch_eval_basis(), and patch_eval_param_fraction().
| ccl_device float patch_eval_float | ( | KernelGlobals | kg, |
| ccl_private const ShaderData * | sd, | ||
| int | offset, | ||
| int | patch, | ||
| float | u, | ||
| float | v, | ||
| int | channel, | ||
| ccl_private float * | du, | ||
| ccl_private float * | dv ) |
Definition at line 267 of file kernel/geom/patch.h.
References kernel_data_fetch, patch_eval_control_verts(), PATCH_MAX_CONTROL_VERTS, and v.
Referenced by subd_triangle_attribute_float().
| ccl_device float2 patch_eval_float2 | ( | KernelGlobals | kg, |
| ccl_private const ShaderData * | sd, | ||
| int | offset, | ||
| int | patch, | ||
| float | u, | ||
| float | v, | ||
| int | channel, | ||
| ccl_private float2 * | du, | ||
| ccl_private float2 * | dv ) |
Definition at line 308 of file kernel/geom/patch.h.
References kernel_data_fetch, make_float2(), patch_eval_control_verts(), PATCH_MAX_CONTROL_VERTS, and v.
Referenced by subd_triangle_attribute_float2().
| ccl_device float3 patch_eval_float3 | ( | KernelGlobals | kg, |
| ccl_private const ShaderData * | sd, | ||
| int | offset, | ||
| int | patch, | ||
| float | u, | ||
| float | v, | ||
| int | channel, | ||
| ccl_private float3 * | du, | ||
| ccl_private float3 * | dv ) |
Definition at line 347 of file kernel/geom/patch.h.
References kernel_data_fetch, make_float3(), patch_eval_control_verts(), PATCH_MAX_CONTROL_VERTS, and v.
Referenced by subd_triangle_attribute_float3().
| ccl_device float4 patch_eval_float4 | ( | KernelGlobals | kg, |
| ccl_private const ShaderData * | sd, | ||
| int | offset, | ||
| int | patch, | ||
| float | u, | ||
| float | v, | ||
| int | channel, | ||
| ccl_private float4 * | du, | ||
| ccl_private float4 * | dv ) |
Definition at line 388 of file kernel/geom/patch.h.
References kernel_data_fetch, patch_eval_control_verts(), PATCH_MAX_CONTROL_VERTS, v, and zero_float4().
Referenced by subd_triangle_attribute_float4().
| ccl_device_inline int patch_eval_indices | ( | KernelGlobals | kg, |
| ccl_private const PatchHandle * | handle, | ||
| int | channel, | ||
| int | indices[PATCH_MAX_CONTROL_VERTS] ) |
Definition at line 189 of file kernel/geom/patch.h.
References kernel_data_fetch.
Referenced by patch_eval_control_verts().
| ccl_device_inline void patch_eval_normalize_coords | ( | uint | patch_bits, |
| ccl_private float * | u, | ||
| ccl_private float * | v ) |
Definition at line 169 of file kernel/geom/patch.h.
References float, frac(), patch_eval_param_fraction(), and v.
Referenced by patch_eval_basis().
| ccl_device_inline float patch_eval_param_fraction | ( | uint | patch_bits | ) |
Definition at line 156 of file kernel/geom/patch.h.
References float, and patch_eval_depth().
Referenced by patch_eval_normalize_coords().
| ccl_device float4 patch_eval_uchar4 | ( | KernelGlobals | kg, |
| ccl_private const ShaderData * | sd, | ||
| int | offset, | ||
| int | patch, | ||
| float | u, | ||
| float | v, | ||
| int | channel, | ||
| ccl_private float4 * | du, | ||
| ccl_private float4 * | dv ) |
Definition at line 427 of file kernel/geom/patch.h.
References color_srgb_to_linear_v4(), color_uchar4_to_float4(), kernel_data_fetch, patch_eval_control_verts(), PATCH_MAX_CONTROL_VERTS, v, and zero_float4().
Referenced by subd_triangle_attribute_float4().
| ccl_device_inline PatchHandle patch_map_find_patch | ( | KernelGlobals | kg, |
| int | object, | ||
| int | patch, | ||
| float | u, | ||
| float | v ) |
Definition at line 51 of file kernel/geom/patch.h.
References kernel_assert, kernel_data_fetch, object_patch_map_offset(), PATCH_MAP_NODE_INDEX_MASK, PATCH_MAP_NODE_IS_LEAF, PATCH_MAP_NODE_IS_SET, patch_map_resolve_quadrant(), and v.
Referenced by patch_eval_control_verts().
| ccl_device_inline int patch_map_resolve_quadrant | ( | float | median, |
| ccl_private float * | u, | ||
| ccl_private float * | v ) |
Definition at line 19 of file kernel/geom/patch.h.
References v.
Referenced by patch_map_find_patch().