In Blender, the Distribute Points on Faces and Distribute Points in Volume nodes generate points in a predictable order—starting from the first face or voxel to the last. This creates uniform patterns, which aren't ideal when projects require random yet evenly distributed points.
To overcome this, I developed the Index Shuffle Node, which randomizes point indices by randomly splitting points into two groups and rejoining them. This method allows for a fast, intuitive way to achieve more randomized distributions, ideal for creating natural layouts.
The node enables users to randomize indices on both point clouds and 3D meshes, applying not only to points but also to faces and edges on any 3D mesh. Unlike traditional noise functions, which can introduce overlapping values, the Index Shuffle Node preserves unique indices per point, ensuring that no two points share the same index and that the input range matches the output range. This feature opens up several creative and technical applications, such as: - Adding an exact number of new points per specified time frame (simulations) - Selecting an exact number of points for instancing objects (instancing) - Achieving non-repeating patterns on mesh surfaces for texturing (even distribution) - Placing particles or decals at randomized but evenly spread intervals across a surface (memory conservation) Additionally, by offering control over shuffle repetitions, the node allows users to fine-tune randomness, balancing between natural randomness and system performance as needed. These capabilities make the Index Shuffle Node a versatile tool in crafting organic, natural-looking layouts in procedural projects without sacrificing precision or efficiency.
- Blender (Geometry Nodes)