Skills

Blender Environment Kits

Game environments in Blender 5.2 - terrain from noise or heightmaps (erosion, terraces...

Install

npx skills add EL4CTEO/blender-skills --skill blender-environment-kits -g -a claude-code -y
Category
Engineering
Updated
5d ago
License
MIT
Context cost
Lightabout 1,165 tokens
Runs scripts
Yes, review before use

What it does

Game environments in Blender 5.2 - terrain from noise or heightmaps (erosion, terraces, play areas, slope/height materials, 16-bit heightmaps + splat maps for UE/Unity), biome scatter by slope/height/mask with Poisson spacing, modular kit metrics and validation (grid, pivots, seams, texel density). Use for levels, landscapes, forests, modular buildings, dungeons.

Environment kits

The execution model is in blender-core. Custom GN tools are in blender-geometry-nodes, materials in blender-texturing (trims, vertex blends), and mood/weather in blender-time-of-day/blender-weather-fx.

One call each

scripts/terrain.py -- --size 400 --res 513 --height 60 --type ridged --erosion 30 --flatten 0 0 40 --material
scripts/terrain.py -- --heightmap //hm.png --size 1000 --res 1009 --height 120 --export-splat //T_Splat.png
scripts/scatter.py -- --target Terrain --collection Trees --density 0.02 --min-distance 5 --max-slope 25 --height-max 45
scripts/scatter.py -- --target Terrain --collection Rocks --density 0.05 --max-slope 70 --align 0.8 --name ENV_Rocks
scripts/kit_check.py -- --objects SM_Wall_4m SM_Floor_4m SM_Door_4m --grid 0.5 --fix

Terrain (terrain.py)

  • Grid of --res² verts over --size m. Use 2^n + 1 for Unity (513/1025/2049, .raw 16-bit LE) and UE Landscape's recommended sizes (505/1009/2017/4033, 16-bit PNG). Above 1025, tile it.
  • --type fbm (rolling), ridged (mountains), hills (hetero terrain). --scale = feature size m. --erosion N = thermal erosion steps (talus 33°): slopes relax and debris fills valleys. --terrace m = stepped flats. --flatten X Y R = a level play/build area blended back with a smoothstep.
  • Writes ENV_Slope (deg/90) and ENV_Height (0, 1) point attributes. --material builds grass/rock/snow from them: rock above 35°, snow above 75% height on slopes below ~40°, with noise-broken edges.
  • Engines: --export-heightmap (PNG = 16-bit gray, .raw = 16-bit little-endian, row 0 = −Y edge; flip vertically in Unity if mirrored) plus heightmap_z_scale_m for the import Z scale. --export-splat = 16-bit RGBA weights (R grass, G rock, B snow, sum 1) for terrain layers. Both are written Raw (no display transform): measured round-trip error < 0.001.
Read the whole SKILL.md on GitHub

More in Engineering