Godot tutorial makes value noise tile seamlessly across a torus
Tiling Noise – Procedural GPU Patterns

The ninth entry in Catlike Coding's procedural GPU patterns series adds tiling to value noise in Godot 4.7. By wrapping lattice coordinates so blocks at tile edges match the opposite side, the shader eliminates the seams that appear where UV 0 and 1 meet. Tiling is optional and works from UV −1 to 2, but requires integer frequencies for all octaves and even frequencies for animation.
However, seams are part of the pattern so that provides no benefit. But value noise blends between adjacent lattice points, so we also have to blend across tile boundaries to eliminate the seams.