Carpet pile seen from above
In your harnessProcedural textureMIT
Generate tileable PBR maps of carpet: cut-pile tuft tips with twisted plies, loop pile in rows, flecked berber loops or long shag strands, with pile shading. Use for floors, rugs, stair runners, car interiors and office carpet in interiors and archviz.

What it takes and gives
- Entry point
- generate
- Maps
- albedo, normal, roughness, height, ao
- Parameters
- pile, tufts, tuft_size, twist, flecks, shading, shag_length, hue_shift and 2 more
- Presets
- default, grey_loop, berber_oat, shag_cream, red_plush
- Tileable
- yes
- Command line
- python carpet_pile.py --size 1024 --seed 7 --preset NAME --out DIR [--width W --height H] [--set NAME=VALUE] [--directx-normal] [--orm]
- Godot material
- material.tres
- Blender builder
- blender_material.build_material(folder)
Limits. Seen from straight above: tufts are domes and loops are capsules on a jittered square grid, not modelled yarn; pile depth shows only through height, normals and occlusion. Shag strands are bent two-segment strokes painted with a z-buffer, so very long strands look stiff. Pile shading is noise, not a record of footprints or a vacuum pattern. Patterned rugs, borders and fringes are out of scope. Occlusion is a blurred-height estimate, not ray traced. Colours are artistic.
Details
- Kind
- Procedural texture
- Engine
- Python 3.10 or later
- Files
- 12 files, 283.8 KB
- Licence
- MIT
- Declared effects
- runs commands, writes files
- Checked with
- Godot 4.7.2, gl_compatibility
- Checks
- command line generates declared maps, maps decode, maps have declared size and channels, maps tile without a seam, normal vectors unit length facing out, maps carry detail, godot imports the maps, godot material template loads every map, godot compatibility render, capture shows the textured surface, blender builds the material
- Techniques
- Jittered tuft grid with whole tuft counts on the torus, Spiral ply highlight from the angle and radius inside each tuft, Superellipse loop capsules along tufting rows, Z-buffered stroke painting of shag strands, Low-frequency noise for pile shading, Height to tangent-space normal by central differences, Cavity occlusion from blurred height
- Tags
- texture, pbr, tileable, carpet, rug, pile, berber, shag
- Identity
library.supply.creative_originals.741f9f711a52c9c503a8d93f.abb2bffa69d3f0dd- Version
abb2bffa69d3f0dddb6d60ec599c4b259f25d2d023114893d18aeb2fb0da31cb
The version is the SHA-256 of the item your harness downloads; every file in it names its own checksum.
Something wrong with this item, its rights or its safety? Report it on the support page, or from your harness after a download.


