โ† All examples

procedural textures

Sequin and paillette fabric

Generate tileable PBR maps of sequinned fabric: overlapping metallic discs in offset rows, each with its own tilt, a dished face and a centre hole, over the backing mesh, including holographic foil. Use for evening dresses, stage costumes, party props, bags and glam set dressing.

Recorded render of Sequin and paillette fabric

What this component contains

  • ATTRIBUTION.md
  • LICENSE
  • README.md
  • blender_material.py
  • component.json
  • material.tres
  • pngio.py
  • preview.png
  • sequin_fabric.py
  • test_package.py
  • texkit.py
  • verification/native.json

How it works

Entry point
generate
Maps
albedo, normal, roughness, metallic, height, ao
Parameters
rows, size, tilt, hole, cup, rainbow, hue_shift, saturation and 1 more
Presets
default, silver_party, holographic, black_gunmetal, paillettes_rose
Tileable
yes
Command line
python sequin_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)

Recorded checks

godot 4.7.2.stable.official.ed1daf0bf

  • 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

Limits to consider

Sequins are flat discs with a sloped and dished height, one layer per row in a fixed overlap order; there is no stitching thread across the face, no loose or flipped sequins and no reversible two-tone sequins. Sparkle comes from per-sequin normal tilt in the normal map, so it depends on the renderer's lights and reflections. Holographic colour is a hue wheel driven by tilt direction, a stylized stand-in for diffraction, and does not change with view angle. Occlusion is a blurred-height estimate, not ray traced.