โ† All examples

procedural textures

Tartan woven from a thread-count sett in 2/2 twill

Generate tileable maps of tartan and plaid cloth from a sett: a reflected sequence of colours and thread counts used for warp and weft, woven in 2/2 twill so every crossing shows the warp or weft colour along diagonal lines. Use for kilts, scarves, blankets, flannel shirts and upholstery.

Recorded render of Tartan woven from a thread-count sett in 2/2 twill

What this component contains

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

How it works

Entry point
generate
Maps
albedo, normal, roughness, height, ao
Parameters
repeats, thread_scale, relief, fuzz, yarn_variation, hue_shift, saturation, brightness
Presets
default, grey_dress, autumn_plaid, buffalo_check, madras_bright
Tileable
yes
Command line
python tartan_sett.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

The setts are invented and do not reproduce registered tartans. Thread counts are kept low so a thread spans several pixels at 256 x 256, which makes the cloth look coarser than real tartan; raise `thread_scale` and the output size for finer cloth. Threads are idealized round yarns on a regular grid without crimp variation or weaving faults, and a sett whose repeat is not a multiple of four gets its first pivot widened to keep the twill seamless. Fuzz is noise and a blur. Occlusion is a blurred-height estimate.