Make your texture tileable with histogram-preserving blending
Use this tool to turn an existing, non-tileable stochastic texture into a tileable texture, by manipulating its edges using histogram-preserving blending. It works on all random-phase inputs, as well as on many non-random-phase inputs which are stochastic and non-periodic, typically natural textures such as moss, granite, sand, bark, etc.
- High-Performance By-Example Noise using a Histogram-Preserving Blending Operator, HPG 2018
- Procedural Stochastic Textures by Tiling and Blending, GPU Zen 2
Disclaimer: this is a CPU implementation that runs in javascript.
The GPU implementation presented in the paper is orders of magnitude faster.
1. Import example texture:
2. Adjust blending border width (0-100%):
3. Random seed:
3. Random seed:
4. Generate output:
5. Output:
The output display might be rescaled. Use the button above to download.
5. Output: