Blender V5.0
voronoi.h File Reference
#include "kernel/svm/util.h"
#include "util/hash.h"

Go to the source code of this file.

Classes

struct  VoronoiParams
struct  VoronoiOutput

Functions

ccl_device float voronoi_distance (const float a, const float b)
template<typename T>
ccl_device float voronoi_distance (const T a, const T b, const ccl_private VoronoiParams &params)
template<typename T>
ccl_device float voronoi_distance_bound (const T a, const T b, const ccl_private VoronoiParams &params)
ccl_device float4 voronoi_position (const float coord)
ccl_device VoronoiOutput voronoi_f1 (const ccl_private VoronoiParams &params, const float coord)
ccl_device VoronoiOutput voronoi_smooth_f1 (const ccl_private VoronoiParams &params, const float coord)
ccl_device VoronoiOutput voronoi_f2 (const ccl_private VoronoiParams &params, const float coord)
ccl_device float voronoi_distance_to_edge (const ccl_private VoronoiParams &params, const float coord)
ccl_device float voronoi_n_sphere_radius (const ccl_private VoronoiParams &params, const float coord)
ccl_device float4 voronoi_position (const float2 coord)
ccl_device VoronoiOutput voronoi_f1 (const ccl_private VoronoiParams &params, const float2 coord)
ccl_device VoronoiOutput voronoi_smooth_f1 (const ccl_private VoronoiParams &params, const float2 coord)
ccl_device VoronoiOutput voronoi_f2 (const ccl_private VoronoiParams &params, const float2 coord)
ccl_device float voronoi_distance_to_edge (const ccl_private VoronoiParams &params, const float2 coord)
ccl_device float voronoi_n_sphere_radius (const ccl_private VoronoiParams &params, const float2 coord)
ccl_device float4 voronoi_position (const float3 coord)
ccl_device VoronoiOutput voronoi_f1 (const ccl_private VoronoiParams &params, const float3 coord)
ccl_device VoronoiOutput voronoi_smooth_f1 (const ccl_private VoronoiParams &params, const float3 coord)
ccl_device VoronoiOutput voronoi_f2 (const ccl_private VoronoiParams &params, const float3 coord)
ccl_device float voronoi_distance_to_edge (const ccl_private VoronoiParams &params, const float3 coord)
ccl_device float voronoi_n_sphere_radius (const ccl_private VoronoiParams &params, const float3 coord)
ccl_device float4 voronoi_position (const float4 coord)
ccl_device VoronoiOutput voronoi_f1 (const ccl_private VoronoiParams &params, const float4 coord)
ccl_device VoronoiOutput voronoi_smooth_f1 (const ccl_private VoronoiParams &params, const float4 coord)
ccl_device VoronoiOutput voronoi_f2 (const ccl_private VoronoiParams &params, const float4 coord)
ccl_device float voronoi_distance_to_edge (const ccl_private VoronoiParams &params, const float4 coord)
ccl_device float voronoi_n_sphere_radius (const ccl_private VoronoiParams &params, const float4 coord)
template<typename T>
ccl_device VoronoiOutput fractal_voronoi_x_fx (const ccl_private VoronoiParams &params, const T coord)
template<typename T>
ccl_device float fractal_voronoi_distance_to_edge (const ccl_private VoronoiParams &params, const T coord)
ccl_device void svm_voronoi_output (const uint4 stack_offsets, ccl_private float *stack, const float distance, const float3 color, const float3 position, const float w, const float radius)
template<uint node_feature_mask>
ccl_device_noinline int svm_node_tex_voronoi (KernelGlobals kg, ccl_private float *stack, const uint dimensions, const uint feature, const uint metric, int offset)

Function Documentation

◆ fractal_voronoi_distance_to_edge()

template<typename T>
ccl_device float fractal_voronoi_distance_to_edge ( const ccl_private VoronoiParams & params,
const T coord )

Definition at line 996 of file voronoi.h.

References ccl_device, ccl_private, ceilf, distance(), floorf, i, min, mix, params, T, and voronoi_distance_to_edge().

Referenced by svm_node_tex_voronoi().

◆ fractal_voronoi_x_fx()

◆ svm_node_tex_voronoi()

◆ svm_voronoi_output()

ccl_device void svm_voronoi_output ( const uint4 stack_offsets,
ccl_private float * stack,
const float distance,
const float3 color,
const float3 position,
const float w,
const float radius )

◆ voronoi_distance() [1/2]

◆ voronoi_distance() [2/2]

template<typename T>
ccl_device float voronoi_distance ( const T a,
const T b,
const ccl_private VoronoiParams & params )

◆ voronoi_distance_bound()

template<typename T>
ccl_device float voronoi_distance_bound ( const T a,
const T b,
const ccl_private VoronoiParams & params )

◆ voronoi_distance_to_edge() [1/4]

ccl_device float voronoi_distance_to_edge ( const ccl_private VoronoiParams & params,
const float coord )

Definition at line 202 of file voronoi.h.

References ccl_device, ccl_private, fabsf, floorf, hash_float_to_float(), min, and params.

Referenced by fractal_voronoi_distance_to_edge().

◆ voronoi_distance_to_edge() [2/4]

ccl_device float voronoi_distance_to_edge ( const ccl_private VoronoiParams & params,
const float2 coord )

◆ voronoi_distance_to_edge() [3/4]

ccl_device float voronoi_distance_to_edge ( const ccl_private VoronoiParams & params,
const float3 coord )

◆ voronoi_distance_to_edge() [4/4]

ccl_device float voronoi_distance_to_edge ( const ccl_private VoronoiParams & params,
const float4 coord )

◆ voronoi_f1() [1/4]

◆ voronoi_f1() [2/4]

◆ voronoi_f1() [3/4]

◆ voronoi_f1() [4/4]

◆ voronoi_f2() [1/4]

◆ voronoi_f2() [2/4]

◆ voronoi_f2() [3/4]

◆ voronoi_f2() [4/4]

◆ voronoi_n_sphere_radius() [1/4]

ccl_device float voronoi_n_sphere_radius ( const ccl_private VoronoiParams & params,
const float coord )

Definition at line 221 of file voronoi.h.

References ccl_device, ccl_private, fabsf, floorf, FLT_MAX, hash_float_to_float(), i, and params.

Referenced by svm_node_tex_voronoi().

◆ voronoi_n_sphere_radius() [2/4]

ccl_device float voronoi_n_sphere_radius ( const ccl_private VoronoiParams & params,
const float2 coord )

◆ voronoi_n_sphere_radius() [3/4]

ccl_device float voronoi_n_sphere_radius ( const ccl_private VoronoiParams & params,
const float3 coord )

◆ voronoi_n_sphere_radius() [4/4]

ccl_device float voronoi_n_sphere_radius ( const ccl_private VoronoiParams & params,
const float4 coord )

◆ voronoi_position() [1/4]

◆ voronoi_position() [2/4]

ccl_device float4 voronoi_position ( const float2 coord)

Definition at line 263 of file voronoi.h.

References ccl_device, make_float4, float2::x, and float2::y.

◆ voronoi_position() [3/4]

ccl_device float4 voronoi_position ( const float3 coord)

Definition at line 473 of file voronoi.h.

References ccl_device, and make_float4.

◆ voronoi_position() [4/4]

ccl_device float4 voronoi_position ( const float4 coord)

Definition at line 697 of file voronoi.h.

References ccl_device.

◆ voronoi_smooth_f1() [1/4]

◆ voronoi_smooth_f1() [2/4]

◆ voronoi_smooth_f1() [3/4]

◆ voronoi_smooth_f1() [4/4]