Changeset View
Changeset View
Standalone View
Standalone View
source/blender/nodes/shader/nodes/node_shader_tex_voronoi.cc
| Show First 20 Lines • Show All 214 Lines • ▼ Show 20 Lines | if (ELEM(dimensions, 1, 4)) { | ||||
| signature.single_output<float>("W"); | signature.single_output<float>("W"); | ||||
| } | } | ||||
| return signature.build(); | return signature.build(); | ||||
| } | } | ||||
| void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override | void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override | ||||
| { | { | ||||
| auto get_vector = [&](int param_index) -> const VArray<float3> & { | auto get_vector = [&](int param_index) -> VArray<float3> { | ||||
| return params.readonly_single_input<float3>(param_index, "Vector"); | return params.readonly_single_input<float3>(param_index, "Vector"); | ||||
| }; | }; | ||||
| auto get_w = [&](int param_index) -> const VArray<float> & { | auto get_w = [&](int param_index) -> VArray<float> { | ||||
| return params.readonly_single_input<float>(param_index, "W"); | return params.readonly_single_input<float>(param_index, "W"); | ||||
| }; | }; | ||||
| auto get_scale = [&](int param_index) -> const VArray<float> & { | auto get_scale = [&](int param_index) -> VArray<float> { | ||||
| return params.readonly_single_input<float>(param_index, "Scale"); | return params.readonly_single_input<float>(param_index, "Scale"); | ||||
| }; | }; | ||||
| auto get_smoothness = [&](int param_index) -> const VArray<float> & { | auto get_smoothness = [&](int param_index) -> VArray<float> { | ||||
| return params.readonly_single_input<float>(param_index, "Smoothness"); | return params.readonly_single_input<float>(param_index, "Smoothness"); | ||||
| }; | }; | ||||
| auto get_exponent = [&](int param_index) -> const VArray<float> & { | auto get_exponent = [&](int param_index) -> VArray<float> { | ||||
| return params.readonly_single_input<float>(param_index, "Exponent"); | return params.readonly_single_input<float>(param_index, "Exponent"); | ||||
| }; | }; | ||||
| auto get_randomness = [&](int param_index) -> const VArray<float> & { | auto get_randomness = [&](int param_index) -> VArray<float> { | ||||
| return params.readonly_single_input<float>(param_index, "Randomness"); | return params.readonly_single_input<float>(param_index, "Randomness"); | ||||
| }; | }; | ||||
| auto get_r_distance = [&](int param_index) -> MutableSpan<float> { | auto get_r_distance = [&](int param_index) -> MutableSpan<float> { | ||||
| return params.uninitialized_single_output<float>(param_index, "Distance"); | return params.uninitialized_single_output<float>(param_index, "Distance"); | ||||
| }; | }; | ||||
| auto get_r_color = [&](int param_index) -> MutableSpan<ColorGeometry4f> { | auto get_r_color = [&](int param_index) -> MutableSpan<ColorGeometry4f> { | ||||
| return params.uninitialized_single_output<ColorGeometry4f>(param_index, "Color"); | return params.uninitialized_single_output<ColorGeometry4f>(param_index, "Color"); | ||||
| }; | }; | ||||
| ▲ Show 20 Lines • Show All 304 Lines • ▼ Show 20 Lines | if (ELEM(dimensions, 1, 4)) { | ||||
| signature.single_output<float>("W"); | signature.single_output<float>("W"); | ||||
| } | } | ||||
| return signature.build(); | return signature.build(); | ||||
| } | } | ||||
| void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override | void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override | ||||
| { | { | ||||
| auto get_vector = [&](int param_index) -> const VArray<float3> & { | auto get_vector = [&](int param_index) -> VArray<float3> { | ||||
| return params.readonly_single_input<float3>(param_index, "Vector"); | return params.readonly_single_input<float3>(param_index, "Vector"); | ||||
| }; | }; | ||||
| auto get_w = [&](int param_index) -> const VArray<float> & { | auto get_w = [&](int param_index) -> VArray<float> { | ||||
| return params.readonly_single_input<float>(param_index, "W"); | return params.readonly_single_input<float>(param_index, "W"); | ||||
| }; | }; | ||||
| auto get_scale = [&](int param_index) -> const VArray<float> & { | auto get_scale = [&](int param_index) -> VArray<float> { | ||||
| return params.readonly_single_input<float>(param_index, "Scale"); | return params.readonly_single_input<float>(param_index, "Scale"); | ||||
| }; | }; | ||||
| auto get_smoothness = [&](int param_index) -> const VArray<float> & { | auto get_smoothness = [&](int param_index) -> VArray<float> { | ||||
| return params.readonly_single_input<float>(param_index, "Smoothness"); | return params.readonly_single_input<float>(param_index, "Smoothness"); | ||||
| }; | }; | ||||
| auto get_randomness = [&](int param_index) -> const VArray<float> & { | auto get_randomness = [&](int param_index) -> VArray<float> { | ||||
| return params.readonly_single_input<float>(param_index, "Randomness"); | return params.readonly_single_input<float>(param_index, "Randomness"); | ||||
| }; | }; | ||||
| auto get_r_distance = [&](int param_index) -> MutableSpan<float> { | auto get_r_distance = [&](int param_index) -> MutableSpan<float> { | ||||
| return params.uninitialized_single_output<float>(param_index, "Distance"); | return params.uninitialized_single_output<float>(param_index, "Distance"); | ||||
| }; | }; | ||||
| auto get_r_color = [&](int param_index) -> MutableSpan<ColorGeometry4f> { | auto get_r_color = [&](int param_index) -> MutableSpan<ColorGeometry4f> { | ||||
| return params.uninitialized_single_output<ColorGeometry4f>(param_index, "Color"); | return params.uninitialized_single_output<ColorGeometry4f>(param_index, "Color"); | ||||
| }; | }; | ||||
| ▲ Show 20 Lines • Show All 329 Lines • ▼ Show 20 Lines | if (feature == SHD_VORONOI_N_SPHERE_RADIUS) { | ||||
| signature.single_output<float>("Radius"); | signature.single_output<float>("Radius"); | ||||
| } | } | ||||
| return signature.build(); | return signature.build(); | ||||
| } | } | ||||
| void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override | void call(IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override | ||||
| { | { | ||||
| auto get_vector = [&](int param_index) -> const VArray<float3> & { | auto get_vector = [&](int param_index) -> VArray<float3> { | ||||
| return params.readonly_single_input<float3>(param_index, "Vector"); | return params.readonly_single_input<float3>(param_index, "Vector"); | ||||
| }; | }; | ||||
| auto get_w = [&](int param_index) -> const VArray<float> & { | auto get_w = [&](int param_index) -> VArray<float> { | ||||
| return params.readonly_single_input<float>(param_index, "W"); | return params.readonly_single_input<float>(param_index, "W"); | ||||
| }; | }; | ||||
| auto get_scale = [&](int param_index) -> const VArray<float> & { | auto get_scale = [&](int param_index) -> VArray<float> { | ||||
| return params.readonly_single_input<float>(param_index, "Scale"); | return params.readonly_single_input<float>(param_index, "Scale"); | ||||
| }; | }; | ||||
| auto get_randomness = [&](int param_index) -> const VArray<float> & { | auto get_randomness = [&](int param_index) -> VArray<float> { | ||||
| return params.readonly_single_input<float>(param_index, "Randomness"); | return params.readonly_single_input<float>(param_index, "Randomness"); | ||||
| }; | }; | ||||
| auto get_r_distance = [&](int param_index) -> MutableSpan<float> { | auto get_r_distance = [&](int param_index) -> MutableSpan<float> { | ||||
| return params.uninitialized_single_output<float>(param_index, "Distance"); | return params.uninitialized_single_output<float>(param_index, "Distance"); | ||||
| }; | }; | ||||
| auto get_r_radius = [&](int param_index) -> MutableSpan<float> { | auto get_r_radius = [&](int param_index) -> MutableSpan<float> { | ||||
| return params.uninitialized_single_output<float>(param_index, "Radius"); | return params.uninitialized_single_output<float>(param_index, "Radius"); | ||||
| }; | }; | ||||
| ▲ Show 20 Lines • Show All 146 Lines • Show Last 20 Lines | |||||