[Bf-blender-cvs] [5206d72dca6] master: Cleanup: Remove boolean template instantiation in Blur node

Iliya Katueshenock noreply at git.blender.org
Mon Dec 26 20:58:33 CET 2022


Commit: 5206d72dca6977e4d6ec3d849e4e1f899317e975
Author: Iliya Katueshenock
Date:   Mon Dec 26 14:46:21 2022 -0500
Branches: master
https://developer.blender.org/rB5206d72dca6977e4d6ec3d849e4e1f899317e975

Cleanup: Remove boolean template instantiation in Blur node

The node doesn't support blurring boolean attributes, so avoid
compiling an implementation for boolean data.

Differential Revision: https://developer.blender.org/D16867

===================================================================

M	source/blender/nodes/geometry/nodes/node_geo_blur_attribute.cc

===================================================================

diff --git a/source/blender/nodes/geometry/nodes/node_geo_blur_attribute.cc b/source/blender/nodes/geometry/nodes/node_geo_blur_attribute.cc
index 23c39748cf9..c2250019a30 100644
--- a/source/blender/nodes/geometry/nodes/node_geo_blur_attribute.cc
+++ b/source/blender/nodes/geometry/nodes/node_geo_blur_attribute.cc
@@ -278,11 +278,13 @@ static void blur_on_mesh(const Mesh &mesh,
   }
   attribute_math::convert_to_static_type(main_buffer.type(), [&](auto dummy) {
     using T = decltype(dummy);
-    blur_on_mesh_exec<T>(neighbor_weights,
-                         neighbors_map,
-                         iterations,
-                         main_buffer.typed<T>(),
-                         tmp_buffer.typed<T>());
+    if constexpr (!std::is_same_v<T, bool>) {
+      blur_on_mesh_exec<T>(neighbor_weights,
+                           neighbors_map,
+                           iterations,
+                           main_buffer.typed<T>(),
+                           tmp_buffer.typed<T>());
+    }
   });
 }
 
@@ -362,8 +364,10 @@ static void blur_on_curves(const bke::CurvesGeometry &curves,
 {
   attribute_math::convert_to_static_type(main_buffer.type(), [&](auto dummy) {
     using T = decltype(dummy);
-    blur_on_curve_exec<T>(
-        curves, neighbor_weights, iterations, main_buffer.typed<T>(), tmp_buffer.typed<T>());
+    if constexpr (!std::is_same_v<T, bool>) {
+      blur_on_curve_exec<T>(
+          curves, neighbor_weights, iterations, main_buffer.typed<T>(), tmp_buffer.typed<T>());
+    }
   });
 }



More information about the Bf-blender-cvs mailing list