How to blend Voronai cells?

I generate the following random procedural pattern.

But when I want to tile it with a Voronoi texture (the method I’ve found so far), I have the problem, that the cells are hard cut and don’t blend into each other. Is there a way to tile with blending?

Welcome :tada:..

you may look into something like this:

..also: there is the awesome forum search function (top right; :mag:–icon) :wink:

I have no idea what is going on the the node tree in the post you linked to. Since it has no Voronoi nodes in any of the mind bogglingly massive node groups (that I could find), it appears to me that thing is recreating Voronoi (including seamless) from scratch using nodes. If all OP wants is a seamless Voronoi, I would just switch it to 4D with x → x = sin(x) and y = cos(x) and y-> z=sin(y) and w=cos(y). Maybe with some integer repeat multipliers thrown in for good measure. Something fairly simple, like this:

Not sure if that was the question though. If it’s about “blending” seamlessly, I don’t think Voronoi is capable of doing that, since all that approach is accomplishing is messing with coordinates. While I’ve seen attempts of having “border zones” go for “blurred coordinates”, that is a “blur hack” that fails to properly mix without discontinuities. Might work for albedo and roughness without too many issues, but will fail for bump and displacement.

So I’m typically using another approach for this, where I send in e.g. 4 versions (offset, rotation, scale) of the texture, and use noise generator and its colors to blend between the 4. That reduces the amount of “randomness” to only 4 per call and is a bit more complex than the random voronoi offset stuff:

I’m completely fine with using something else than Voronoi to create a repeating tiling pattern from the single pattern I have, that blends on the borders.

I’m not sure if I get the the big picture from the solution you’ve posted, as I don’t have a texture loaded, that repeats. The pattern that is loaded before it is processed procedural is set to clip.

If it tiles it does solve the task :wink: . I just remembered that there was a lot about some custom voronoi.. so:

Nice idea to “tile” the incoming vector of the voronoi… :grinning_cat_with_smiling_eyes:

You can tile coordinates in many ways:

Or you could use modulo, or even the dedicated Vector Math Warp mode(even though you still need a separate node to scale stuff, so not sure what the difference is)

If you want to blend the edges, that’s another thing completely though. Yeah you can use smooth voronoi to blend the coordinates, but that does not blend images, it deforms images. In that case you would need to place images one on top of another and mask them, so repeat zones could be used, but that’s really cumbersome… Blending coordinates with noise would be possible, but then the texture blending becomes dependent on render samples… There is no wining here… :laughing: I would look for another point in the workflow where this problem could be solved.

Yeah I’m not really sure what is being asked here. Might be helpful to share the project and a hacked image of what is being attempted to recreate procedurally. When I think “tiling” my mind always goes toward randomized tiling of seamless images in order to break the repetitive tiling appearance. Just realized the voronoi was set to 0 randomness.