
What this component contains
ATTRIBUTION.mdLICENSEREADME.mdblender_material.pychain_mail.pycomponent.jsonmaterial.trespngio.pypreview.pngtest_package.pytexkit.pyverification/native.json
How it works
- Entry point
- generate
- Maps
- albedo, normal, roughness, metallic, height, ao
- Parameters
- rings_across, wire, ring_size, tilt, tarnish, hue_shift, saturation, brightness
- Presets
- default, blackened, brass, rusty
- Tileable
- yes
- Command line
- python chain_mail.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_mapsmaps_decodemaps_have_declared_size_and_channelsmaps_tile_without_a_seamnormal_vectors_unit_length_facing_outmaps_carry_detailgodot_imports_the_mapsgodot_material_template_loads_every_mapgodot_compatibility_rendercapture_shows_the_textured_surfaceblender_builds_the_material
Limits to consider
Rings are flat annuli with a round wire profile, tilted in alternating rows; the over and under is resolved per pixel by height, not by true 3D geometry, so deep overlaps and silhouettes are approximate. The gaps need alpha scissor. Contact shadows are darkened by hand rather than traced. Occlusion is a blurred-height estimate, not ray traced.