|
Blender V4.3
|
Go to the source code of this file.
Macros | |
| #define | rot(x, k) (((x) << (k)) | ((x) >> (32 - (k)))) |
| #define | mix(a, b, c) |
| #define | final(a, b, c) |
Definition at line 36 of file hash.h.
Referenced by add_node(), bsdf_microfacet_estimate_albedo(), bsdf_microfacet_setup_fresnel_conductor(), bsdf_microfacet_setup_fresnel_f82_tint(), bsdf_microfacet_setup_fresnel_generalized_schlick(), central_cylindrical_to_direction(), dynamicPaint_mixPaintColors(), blender::nodes::node_composite_glare_cc::GlareOperation::execute_mix(), blender::noise::fractal_voronoi_distance_to_edge(), fractal_voronoi_distance_to_edge(), blender::noise::fractal_voronoi_x_fx(), fractal_voronoi_x_fx(), fresnel_iridescence(), hash_uint4(), init_test_curve(), integrator_init_from_bake(), interpolate_curve_points(), interpolate_fresnel_color(), blender::nodes::node_composite_glare_cc::GlareOperation::is_identity(), LerpCurveSegmentMotionCV(), microfacet_fresnel(), microfacet_ggx_sample_vndf(), blender::noise::mix(), node_mix_add(), node_mix_blend(), node_mix_color(), node_mix_dark(), node_mix_diff(), node_mix_exclusion(), node_mix_hue(), node_mix_light(), node_mix_mul(), node_mix_sub(), noise_fbm(), noise_fbm(), noise_fbm(), noise_fbm(), osl_closure_hair_huang_setup(), perlin_1d(), blender::noise::perlin_fbm(), blender::noise::perlin_noise(), blender::noise::perlin_noise(), blender::noise::perlin_noise(), blender::noise::perlin_noise(), phase_fournier_forand_newton(), quad_mix(), shutter_curve_eval(), BVHSpatialSplit::split_curve_primitive(), BVHSpatialSplit::split_triangle_primitive(), subd_triangle_attribute_float(), subd_triangle_attribute_float2(), subd_triangle_attribute_float3(), subd_triangle_attribute_float4(), svm_node_closure_bsdf(), svm_node_normal_map(), svm_node_principled_volume(), version_principled_bsdf_specular_tint(), version_principled_bsdf_subsurface(), blender::noise::voronoi_smooth_f1(), blender::noise::voronoi_smooth_f1(), blender::noise::voronoi_smooth_f1(), blender::noise::voronoi_smooth_f1(), voronoi_smooth_f1(), voronoi_smooth_f1(), voronoi_smooth_f1(), voronoi_smooth_f1(), voronoi_smooth_f1(), voronoi_smooth_f1(), voronoi_smooth_f1(), voronoi_smooth_f1(), and work_balance_do_rebalance().
| ccl_device_inline float hash_float2_to_float | ( | float2 | k | ) |
Definition at line 163 of file hash.h.
References __float_as_uint, hash_uint2_to_float(), float2::x, and float2::y.
Referenced by hash_float2_to_float2(), hash_float2_to_float3(), hash_float_to_float2(), hash_float_to_float3(), random_float2_offset(), random_float3_offset(), random_float4_offset(), and svm_node_tex_white_noise().
| ccl_device_inline float2 hash_float2_to_float2 | ( | float2 | k | ) |
Definition at line 181 of file hash.h.
References hash_float2_to_float(), hash_float3_to_float(), make_float2(), make_float3(), float2::x, and float2::y.
Referenced by bake_jitter_barycentric(), voronoi_distance_to_edge(), voronoi_f1(), voronoi_f2(), voronoi_n_sphere_radius(), and voronoi_smooth_f1().
| ccl_device_inline float3 hash_float2_to_float3 | ( | float2 | k | ) |
Definition at line 210 of file hash.h.
References hash_float2_to_float(), hash_float3_to_float(), make_float3(), float2::x, and float2::y.
Referenced by svm_node_tex_white_noise(), voronoi_f1(), voronoi_f2(), and voronoi_smooth_f1().
| ccl_device_inline float hash_float3_to_float | ( | float3 | k | ) |
Definition at line 168 of file hash.h.
References __float_as_uint, hash_uint3_to_float(), float3::x, float3::y, and float3::z.
Referenced by compute_2d_gabor_noise_cell(), hash_float2_to_float2(), hash_float2_to_float3(), hash_float3_to_float2(), hash_float3_to_float3(), and svm_node_tex_white_noise().
| ccl_device_inline float2 hash_float3_to_float2 | ( | float3 | k | ) |
Definition at line 231 of file hash.h.
References hash_float3_to_float(), make_float2(), make_float3(), float3::x, float3::y, and float3::z.
Referenced by compute_2d_gabor_noise_cell().
| ccl_device_inline float3 hash_float3_to_float3 | ( | float3 | k | ) |
Definition at line 186 of file hash.h.
References hash_float3_to_float(), hash_float4_to_float(), make_float3(), make_float4(), float3::x, float3::y, and float3::z.
Referenced by svm_node_tex_white_noise(), voronoi_distance_to_edge(), voronoi_f1(), voronoi_f2(), voronoi_n_sphere_radius(), and voronoi_smooth_f1().
| ccl_device_inline float hash_float4_to_float | ( | float4 | k | ) |
Definition at line 173 of file hash.h.
References __float_as_uint, and hash_uint4_to_float().
Referenced by compute_3d_gabor_noise_cell(), hash_float3_to_float3(), hash_float4_to_float2(), hash_float4_to_float3(), hash_float4_to_float4(), and svm_node_tex_white_noise().
| ccl_device_inline float2 hash_float4_to_float2 | ( | float4 | k | ) |
Definition at line 237 of file hash.h.
References hash_float4_to_float(), make_float2(), and make_float4().
Referenced by compute_3d_orientation().
| ccl_device_inline float3 hash_float4_to_float3 | ( | float4 | k | ) |
Definition at line 217 of file hash.h.
References hash_float4_to_float(), make_float3(), and make_float4().
Referenced by compute_3d_gabor_noise_cell(), svm_node_tex_white_noise(), voronoi_f1(), voronoi_f2(), and voronoi_smooth_f1().
| ccl_device_inline float4 hash_float4_to_float4 | ( | float4 | k | ) |
Definition at line 193 of file hash.h.
References hash_float4_to_float(), and make_float4().
Referenced by voronoi_distance_to_edge(), voronoi_f1(), voronoi_f2(), voronoi_n_sphere_radius(), and voronoi_smooth_f1().
| ccl_device_inline float hash_float_to_float | ( | float | k | ) |
Definition at line 158 of file hash.h.
References __float_as_uint, and hash_uint_to_float().
Referenced by hash_float_to_float2(), and hash_float_to_float3().
| ccl_device_inline float2 hash_float_to_float2 | ( | float | k | ) |
Definition at line 226 of file hash.h.
References hash_float2_to_float(), hash_float_to_float(), and make_float2().
| ccl_device_inline float3 hash_float_to_float3 | ( | float | k | ) |
Definition at line 203 of file hash.h.
References hash_float2_to_float(), hash_float_to_float(), make_float2(), and make_float3().
Referenced by svm_node_tex_white_noise(), voronoi_f1(), voronoi_f2(), and voronoi_smooth_f1().
| ccl_device_inline float hash_hp_float | ( | uint | i | ) |
Definition at line 432 of file hash.h.
References hash_hp_uint(), and uint_to_float_excl().
Referenced by tabulated_sobol_generate_4D().
| ccl_device_inline float hash_hp_seeded_float | ( | uint | i, |
| uint | seed ) |
Definition at line 438 of file hash.h.
References hash_hp_seeded_uint(), seed, and uint_to_float_excl().
| ccl_device_inline uint hash_hp_seeded_uint | ( | uint | i, |
| uint | seed ) |
Definition at line 421 of file hash.h.
References hash_hp_uint(), and seed.
Referenced by hash_hp_seeded_float(), path_state_rng_scramble(), sample_is_class_A(), and tabulated_sobol_generate_4D().
| ccl_device_inline uint hash_hp_uint | ( | uint | i | ) |
Definition at line 406 of file hash.h.
Referenced by hash_hp_float(), hash_hp_seeded_uint(), sobol_burley_sample_1D(), sobol_burley_sample_2D(), sobol_burley_sample_3D(), and sobol_burley_sample_4D().
| ccl_device_inline uint hash_iqnt2d | ( | const uint | x, |
| const uint | y ) |
2D hash recommended from "Hash Functions for GPU Rendering" JCGT Vol. 9, No. 3, 2020 See https://www.shadertoy.com/view/4tXyWN and https://www.shadertoy.com/view/XlGcRh http://www.jcgt.org/published/0009/03/02/paper.pdf
Definition at line 520 of file hash.h.
Referenced by path_rng_pixel_init().
| ccl_device_inline uint hash_shuffle_uint | ( | uint | i, |
| uint | length, | ||
| uint | seed ) |
Definition at line 486 of file hash.h.
References count_leading_zeros(), length(), mask(), and seed.
Referenced by tabulated_sobol_shuffled_sample_index().
|
inlinestatic |
Definition at line 532 of file hash.h.
References str.
Referenced by LightManager::add_ies(), and GeometryManager::create_volume_mesh().
| ccl_device_inline uint hash_uint | ( | uint | kx | ) |
Definition at line 78 of file hash.h.
References b.
Referenced by hash_uint_to_float(), hashnoise_1d(), integrator_init_from_bake(), osl_hash_if(), osl_hash_ii(), and perlin_1d().
| ccl_device_inline uint hash_uint2 | ( | uint | kx, |
| uint | ky ) |
Definition at line 89 of file hash.h.
References b.
Referenced by cycles_precompute(), hash_uint2_to_float(), osl_hash_iff(), perlin_2d(), DiagSplit::post_split(), BlenderSession::render(), and BlenderSync::sync_integrator().
| ccl_device_inline float hash_uint2_to_float | ( | uint | kx, |
| uint | ky ) |
Definition at line 141 of file hash.h.
References hash_uint2(), and uint_to_float_incl().
Referenced by export_hair_curves(), export_pointcloud(), ExportCurveSegments(), get_object_standard_attribute(), OSLRenderServices::get_object_standard_attribute(), hash_float2_to_float(), and svm_node_particle_info().
| ccl_device_inline uint hash_uint3 | ( | uint | kx, |
| uint | ky, | ||
| uint | kz ) |
Definition at line 101 of file hash.h.
References b.
Referenced by hash_uint3_to_float(), lcg_state_init(), osl_hash_iv(), and perlin_3d().
| ccl_device_inline float hash_uint3_to_float | ( | uint | kx, |
| uint | ky, | ||
| uint | kz ) |
Definition at line 146 of file hash.h.
References hash_uint3(), and uint_to_float_incl().
Referenced by hash_float3_to_float().
Definition at line 114 of file hash.h.
Referenced by hash_uint4_to_float(), osl_hash_ivf(), and perlin_4d().
Definition at line 151 of file hash.h.
References hash_uint4(), and uint_to_float_incl().
Referenced by hash_float4_to_float().
| ccl_device_inline float hash_uint_to_float | ( | uint | kx | ) |
Definition at line 136 of file hash.h.
References hash_uint(), and uint_to_float_incl().
Referenced by attr_create_random_per_island(), GeometryManager::create_volume_mesh(), and hash_float_to_float().
| ccl_device_inline float hash_wang_seeded_float | ( | uint | i, |
| uint | seed ) |
Definition at line 462 of file hash.h.
References hash_wang_seeded_uint(), seed, and uint_to_float_excl().
Referenced by tabulated_sobol_sample_1D(), tabulated_sobol_sample_2D(), tabulated_sobol_sample_3D(), and tabulated_sobol_sample_4D().
| ccl_device_inline uint hash_wang_seeded_uint | ( | uint | i, |
| uint | seed ) |
Definition at line 452 of file hash.h.
References seed.
Referenced by hash_wang_seeded_float(), and tabulated_sobol_shuffled_sample_index().
| CCL_NAMESPACE_BEGIN ccl_device_forceinline float uint_to_float_excl | ( | uint | n | ) |
Definition at line 14 of file hash.h.
Referenced by hash_hp_float(), hash_hp_seeded_float(), hash_wang_seeded_float(), and sobol_burley().
| ccl_device_forceinline float uint_to_float_incl | ( | uint | n | ) |
Definition at line 25 of file hash.h.
References float.
Referenced by hash_uint2_to_float(), hash_uint3_to_float(), hash_uint4_to_float(), and hash_uint_to_float().