โ† All examples

procedural textures

Damascus pattern-welded steel

Generate tileable PBR maps of etched Damascus (pattern-welded) steel: bright and dark layers in random, ladder, raindrop or chevron patterns, with varying layer thickness, etch relief and grinding lines, and fine layers kept free of moire. Use for knife blades, swords, rings and props.

Recorded render of Damascus pattern-welded steel

What this component contains

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

How it works

Entry point
generate
Maps
albedo, normal, roughness, metallic, height, ao
Parameters
pattern, layers, distortion, features, randomness, thickness_variation, etch, grind_lines and 3 more
Presets
default, ladder, raindrop, chevron, coffee_etch
Tileable
yes
Command line
python damascus_steel.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 pattern is a contour model of a distorted layer stack, not a forging simulation; ladder, raindrop and chevron are idealized versions of the smith's grooves, dimples and restacking. Layers finer than about two pixels fade to their average tone instead of drawing, so very fine stacks need a large texture. The etch relief is shallow and best carried by the normal map. Occlusion is a blurred-height estimate, not ray traced.