Quilted and deep-buttoned fabric
In your harnessProcedural textureMIT
Generate tileable PBR maps of quilted fabric: diamond, square or channel quilting with puffed panels, stitched seams, crinkles and a fine weave, or deep-buttoned tufting. Use for bedspreads, puffer jackets, moving blankets, padded walls, headboards and Chesterfield sofas.

What it takes and gives
- Entry point
- generate
- Maps
- albedo, normal, roughness, height, ao
- Parameters
- pattern, cells, aspect, puff, stitches, buttons, wrinkles, sheen and 4 more
- Presets
- default, puffer_channel, square_satin, chesterfield, moving_blanket
- Tileable
- yes
- Command line
- python quilted_fabric.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. Panels are pillow profiles between straight seam lines, not cloth simulation: there is no drape, gathering or sagging, and tufting folds follow the seams instead of radiating from each button. Diamonds keep whole panel counts across and down the tile, so the aspect is quantized. Stitches are dashes in the seam groove; thread twist is not modelled. The weave is a fine cosine grid that fades out when it would be finer than a few pixels. Occlusion is a blurred-height estimate, not ray traced.
Details
- Kind
- Procedural texture
- Engine
- Python 3.10 or later
- Files
- 12 files, 237.9 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
- Seam lines as integer phase families n_u u + n_v v = k on the torus, Pillow height as a product of rounded profiles of the distance to each seam family, Stitch dashes from the phase of the crossing seam family, Buttons as domes in recesses at seam crossings, Ridged noise crinkles weighted by closeness to the seams, Height to tangent-space normal by central differences, Cavity occlusion from blurred height
- Tags
- texture, pbr, tileable, quilting, quilted, fabric, tufted, upholstery
- Identity
library.supply.creative_originals.f99ea4ec2549b37eb2b3dff3.1bca0191aa319803- Version
1bca0191aa319803cc5de913335682a409521415526f12b15b0e70d45185a047
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.


