Geometry Nodes: Rewrite Scale Elements node
commit2cb3677557b3d000381dff56ed78b86ec487be07
authorIliya Katueshenock <modormoder@gmail.com>
Mon, 15 Apr 2024 19:55:37 +0000 (15 21:55 +0200)
committerHans Goudey <hooglyboogly@noreply.localhost>
Mon, 15 Apr 2024 19:55:37 +0000 (15 21:55 +0200)
treebb569ee307a007b2766ad21ec38a9f9453f57fc5
parentddec0740d61e2fcfd77df5994471a7cb0c0b09d6
Geometry Nodes: Rewrite Scale Elements node

Rewrite of Scale Elements. Main changes related with removing unnecessary
abstractions (like structures of fields). Next, by using grouping approach,
all data is represented as spans. This provide ability to unify code for
different domains. Using of general utils like IndexMask, Group processing
and array utils provides much more parallelism and better memory usage.
In result, this refactoring result in 4-10 average speed improvement in
attached benchmark file with different probability and scale of elements.

See the PR for more before/after timing information and a benchmark file.

Pull Request: https://projects.blender.org/blender/blender/pulls/115142
source/blender/nodes/geometry/CMakeLists.txt
source/blender/nodes/geometry/nodes/node_geo_scale_elements.cc