triplanarTextures
A UV-less texturing technique that projects textures from the X, Y, and Z axes and intelligently blends them based on surface orientation, creating a seamless texture on complex models without requiring UV coordinates.
Core Advantages
It completely removes the need for manual UV unwrapping, making it ideal for texturing procedurally generated geometry (like terrain) or complex sculptures, saving significant time and effort while avoiding common issues like stretching and seams.
Common Uses
Texturing procedural terrain and planets
Quick material previews for digital sculptures
Creating seamless materials like marble or concrete
How to adjust
Adjust the `.scaleNode` property to control tiling density (higher value = smaller pattern). Change `.positionNode` from the default `positionWorld` to `positionObject` to make the texture stick to the object. Modify `.sharpnessNode` to control how smoothly the textures from different axes blend together.
Code Examples
1
2// Create the node using a single texture for X, Y, and Z projections
3const triplanar = triplanarTextures( texture( mySeamlessTexture ) );
4
5// Control the texture tiling density. Higher value = smaller pattern.
6triplanar.scaleNode = 5.0;
7
8// Control the blend sharpness between projection axes.
9triplanar.sharpnessNode = 1.5;