Procedural wood material with growth rings
In your harnessBlender toolMIT
Build a node-based wood material whose growth rings, latewood share, warp, pores, roughness and bump are parameters, and assign it to the active mesh. Use it for furniture, floors and props without image textures.

What it takes and gives
- Operator
- baltor.material_wood_rings
- Parameters
- material_name, rings_per_metre, latewood_fraction, warp, warp_scale, grain_stretch, earlywood_color, latewood_color and 4 more
- Result
- One material with a node tree; assigned to the active mesh.
- Blender
- 4.2 or later
- Axes
- Blender Z up, -Y forward
- Units
- metres
Limits. Rings are cylinders around the object's local Z axis, so the grain follows the object's Z; rotate the object or edit the Grain Space mapping for other directions. Colours are a stylized approximation, not measured wood data. Pores come from stretched noise, not cell structure. Object coordinates make the pattern scale with the object. Rendered here with Cycles CPU only; EEVEE output is expected to match but was not rendered. Verified in Blender 5.2.1; written for the 4.2 API.
Details
- Kind
- Blender tool
- Engine
- Blender 4.2 or later
- Files
- 11 files, 117.5 KB
- Licence
- MIT
- Declared effects
- runs commands
- Checked with
- Blender 5.2.1, background (Cycles CPU for previews)
- Checks
- addon install and enable, operator runs with defaults, blender data matches core, addon disable unregisters, script mode runs, clean reopen addon file, clean reopen script file, gltf separate export, engine output clean
- Techniques
- Growth rings as fract(k * radial distance) from math nodes, Domain warping of coordinates by centred noise, Anisotropic noise by scaling the grain axis before sampling, Height-to-normal bump mapping
- Tags
- blender, material, shader nodes, wood, procedural texture, cycles, eevee
- Identity
library.supply.creative_originals.41b36496b6511d54a74a9067.bfa1f72244068c70- Version
bfa1f72244068c70ee4074cdeb6a991cff4186b03d3976062f2cb5ad26527d72
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.


