Blender meets Claude at Wickerson Studios for FREE OPEN SOURCE
WICKERSON STUDIOS | OPEN SOURCE | 2026
New aesthetic direction: Spectral Brutalism
A complete departure from v6's champagne-and-brass warmth. The palette is raw PhC concrete mass + spectral liquid-metal BEC glass + near-black Weyl anodised fins + rammed earth berms + dark granite sett ground. At night it flips completely: deep ocean bioluminescent blue from the Noctiluca panels, He-II cyan from the pool, and warm amber from the street lamps — three distinct colour temperatures fighting against each other in darkness.
6 new physics materials
The BEC glass uses the Cauchy dispersion formula n(λ) = A + B/λ² (computed via cauchy_ior(0.55) → 1.492) and overlays an Abrikosov triangular vortex lattice from a near-zero-randomness Voronoi, driving an 8-stop spectral ramp from UV-violet through indigo, cobalt, steel, teal, cyan, and bright green edge. The PhC concrete has a perfect diamond-lattice Voronoi coat (randomness=0.0) producing a sharp chartreuse retroreflective flash at the PBG wavelength. The MOKE Corten has two separate colour ramps (R_L and R_R polarisations), mixed via an animated Value node that shifts hue 2% across the golden-hour orbit to encode the magneto-optical Kerr rotation angle. The Weyl semimetal fins use an inverted Fresnel to produce a narrow gold ring at the Hall angle (≈86% of the inverted Fresnel range). The bioluminescent wall is Noctiluca scintillans at λ=474nm, starting at 0.0 strength and animating to 22.0 by night. The He-II pool has IOR=1.028 (measured for superfluid helium) and Voronoi quantised vortex rings with near-zero randomness.
6 new mathematical structures
The entry canopy is a true catenary y = a·cosh(x/a) − a with a=8m — the naturally optimal compression arch — built as 30 ribs of 6 segments each, sampling the curve at discrete x-positions. The atrium roof samples Scherk's doubly-periodic minimal surface cos(z) = cos(x)·cos(y) on a 12×12 grid, producing 144 columns of varying height — a zero mean-curvature surface that's the global area-minimiser for its boundary conditions. The hotel east face gets Penrose P3 rhomb tiling — thin (36°) and thick (72°) rhombs generated via de Bruijn pentagonal indexing, with rotation angles driving panel orientation. The helipad gets a geodesic frequency-2 icosahedron with mathematically correct edge length l = r·sin(2π/5)·√(1+1/φ²). The 24 trees follow golden-angle spiral placement θₖ = k·π(3−√5) — the same formula used by sunflowers for optimal packing. The Act 3 camera traces a Lissajous figure-8 x=90·sin(3t+π/4), y=82·sin(2t) with a vertical sine-squared envelope.
Render settings upgraded to 2048 samples, 48 total bounces (24 glossy + 24 transmission — essential for multi-layer BEC glass), caustics ON, volume bounces 6, motion blur shutter 0.40, and a full compositor chain recommendation: Glare Bloom at 0.75 threshold + Streaks at 1.4 + ±3px chromatic aberration to make the spectral glass feel physically real.
LICENSE MIT — free to use, modify, and distribute commercially
BLENDER 3.6 LTS / 4.x
FRAMES 720 (30 seconds @ 24 fps)
RESOLUTION 2560 × 1440 (QHD)
ENGINE Cycles · 512 samples · OIDN denoising
LINES 1,686 Python
MATERIALS 25+ node-built shaders
ACTS 6 cinematic acts
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
QUICK START
1. Open Blender 3.6 LTS or 4.x
2. Switch to the Scripting workspace (top tab bar)
3. Click Open and select aec_massing_animation_v5.py
— OR — paste the entire script into a new Text block
4. Press Alt + P to run
5. Press Numpad 0 for camera view
6. Press Space to play
The script performs a full scene reset at the start of every run.
It is safe to execute multiple times — no duplicate objects or
orphaned materials will accumulate.
WHAT v5.0 BUILDS
PODIUM (6 storeys / 24 m)
Polished black granite plinth (0–1.8 m)
5-layer champagne limestone body
Transfer beam at podium–tower junction (expressed concrete)
4 visible concrete lift shaft cores (full tower height)
12-column limestone colonnade — east face
8-pilaster arcade with soffit beam — south face
Living wall panel behind arcade
Lobby glazing strip
Larch-frame retail / cafe units × 4 (low-iron glass fronts)
Retail warm glow emission planes
Site perimeter wall
Basement carpark ramp (below grade)
Floor spandrel bands with shadow reveal grooves
OFFICE TOWER (40 storeys / 168 m)
3-segment setback glass envelope (ChromaShift deep blue-green)
Per-floor slab + dark bronze spandrel bands + shadow reveal grooves
Expressed structural X-brace on south face (3 crosses)
Dark bronze vertical mullion fins every 1.6 m
Corten steel crown (top 8 m) with warm emissive strip
Blue glass beacon mast
Rooftop: cooling towers, plant room, lift overrun
Rooftop: solar PV array (4 rows × 5 panels)
Rooftop: infinity pool with animated rippling water + pool light
Rooftop: helipad (rubber disc + H marking + emissive)
Parapet walls — all 4 sides
Interior floor glow planes (day: 2.5 / night: 12.0)
RESIDENTIAL SLAB TOWER (32 storeys / 132 m)
2-segment setback glass envelope (ChromaShift warm green)
Per-floor slab + bronze spandrel bands
Cascading stepped terraces every 4 floors (south face):
— Polished concrete deck
— 4-noise green roof planting
— Aged brass handrails
Solar PV rows × 3
Lift overrun
Interior floor glow planes
HOTEL MID-RISE (12 storeys / 48 m)
Lower 7 st: champagne limestone
Upper 5 st: raw larch cladding
Projecting glazed bay windows every 2 floors (south face)
Perforated dark bronze brise-soleil screen (south face)
Parapet + polished granite coping
Plant room + solar panels on roof
Interior floor glow planes
CONTEXT (16 surrounding buildings)
3 LOD tiers: near / mid / far
3 material variants: warm buff / cool slate / neutral grey
Near-tier: animated dark bronze window spandrel bands
GROUND, ROADS & INFRASTRUCTURE
Washed aggregate plaza paving (Voronoi basalt)
3 drainage rills (animated water) + metal footbridge
Dual carriageway (NS + EW)
Tram rails (polished steel, 4 tracks)
Bus lane (yellow stripe)
Cycle lanes (blue tinted)
Zebra crossings at all 4 junctions
Kerb upstands
STREET FURNITURE (appears Act 2 reveal)
Limestone benches × 8
Granite bollards × 16
Limestone planting pots with living-wall plants × 12
Bus shelters × 2
LANDSCAPE
─────────────────────────────────────────────────────────────────────
Green roofs — podium + hotel
Planting beds — podium roof × 6 (base + living wall layer)
Specimen trees × 18 (trunk + lower canopy + upper canopy, 3 tiers)
Hedgerows × 6
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
MATERIAL LIBRARY (all built in Shader Node Editor)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
CHAMPAGNE LIMESTONE
5-layer Noise stack — vein, grain, stain, aggregate, micro-bump
Overlay + Multiply blends. Warm cream → honey → warm grey palette.
CHROMASHIFT GLASS (2 variants: office blue-green / resi warm-green)
Glass BSDF + Glossy Fresnel mix. Layer Weight drives a 3-stop
colour ramp — base teal → cyan → blue-violet at glancing angles.
Subtle interior emission (0.08 strength) for day glow.
BOARD-FORMED CONCRETE (standard + polished)
3-layer Noise: board grain + aggregate + stain. Polished variant
adds Coat Weight 0.25 / Coat Roughness 0.10 for floor reveal.
AGED BRASS
Metallic Principled + Noise oxide patina. 3-stop colour ramp:
deep brass → bright brass → patina green. Overlay blend 0.40.
RAW LARCH CLADDING
Wave Bands grain + Noise overlay. 3-stop ramp: raw honey →
aged silver. Roughness 0.82 for weathered feel.
LIVING WALL
4-Noise SSS green. Dark forest → lime → bronze autumn tip.
Subsurface 0.12. Heavy Bump (0.45) for stem texture.
CORTEN STEEL CROWN
4-stop Noise ramp: deep red oxide → warm orange. Heavy Bump 0.50.
Metallic 0.60 / Roughness 0.88.
POLISHED BLACK GRANITE
Noise variation. Roughness 0.03. Coat Weight 0.40 / Coat
Roughness 0.04 for wet polished look.
DARK BRONZE FINS
Wave Bands + Bump anisotropy. Base colour near-black warm brown.
Metallic 1.0 / Roughness 0.22.
4-NOISE GREEN ROOF
4 Noise layers: dark moss → bright sedum → Screen highlight.
Subsurface 0.08. Bump 0.40.
WASHED AGGREGATE PAVING
Voronoi exposed stone + Noise bump. Warm basalt ramp:
charcoal → warm grey → sand highlight.
WATER (pool + drainage rills)
Glass BSDF deep teal + Glossy Fresnel mix. Noise Bump ripple.
IOR 1.33.
SOLAR PV PANELS
Deep blue anisotropic Principled. Ring Wave Texture Bump
for cell grid. Roughness 0.06.
INTERIOR GLOW PLANES (per floor, all buildings)
Emission + Diffuse mix. Keyframed: strength 2.5 (day) → 12.0 (night).
CONTEXT BUILDINGS (3 tones)
Noise age variation over Principled base.
A — warm buff (0.64, 0.58, 0.50)
B — neutral (0.55, 0.54, 0.56)
C — cool slate (0.46, 0.50, 0.54)
ADDITIONAL MATERIALS
Road asphalt · Kerb stone · Road markings · Cycle lane blue
Yellow bus lane · Polished steel rail · Helipad rubber
Emissive warm white · Emissive blue · Emissive red · Emissive amber
Floor plate concrete · Black anodised metal
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ANIMATION — 6-ACT STRUCTURE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ACT 0 fr 1 – 30 PRE-DAWN
─────────────────────────────────────────────────────────────────────
Static wide establishing shot. Sun at 3°. Warm orange Nishita sky.
Dust density 1.4 — thick dawn haze. Site silhouetted against horizon.
ACT 1 fr 30 – 200 CONSTRUCTION
─────────────────────────────────────────────────────────────────────
Floor-by-floor growth animation. Concrete cores rise first.
Podium grows fr 12–46. Office floors animate sequentially
fr 34 onward (2 frames per floor). Residential follows offset fr 60.
Hotel fr 82–134. Context buildings stagger in fr 138 onward.
Handheld camera shake applied fr 30–200 (±0.12 m XY, ±0.04 m Z).
Sun animates from 6° → 16°.
ACT 2 fr 200 – 330 REVEAL
─────────────────────────────────────────────────────────────────────
Street furniture fades in. Living wall appears fr 220.
Trees stagger in fr 214 onward (3 frames between each).
Hedgerows fr 218 onward. Planting beds fr 210.
Pool water + pool light activate. Footbridge appears.
Sky continues rising to 34°.
ACT 3 fr 330 – 480 GOLDEN HOUR ORBIT
─────────────────────────────────────────────────────────────────────
330° cinematic camera orbit. Camera cranes from 86 m → 124 m.
Sun at 52°–62°. Dust density 0.18 — crystal clear air.
Sky background strength peaks at 1.7. Warm amber fills all surfaces.
Bronze fins catch rim light. Living wall backlit.
Focal length breathes 46–54 mm. DOF f/5.2 → f/4.2.
ACT 4 fr 480 – 580 BLUE HOUR
─────────────────────────────────────────────────────────────────────
Sky drops to 12°. Sun energy falls to 2.0. Fill light dims to 400 W.
14 street lamps animate ON fr 480–500 (warm amber, 1800 W each).
6 building uplights animate ON fr 479–510 (6000 W each).
Office: warm amber uplights
Residential: cool blue uplights
Hotel: warm orange uplights
Interior floor glow planes begin transitioning to night strength.
Pool light already active. Camera tightens to f/3.2 DOF.
ACT 5 fr 580 – 720 NIGHT
─────────────────────────────────────────────────────────────────────
Sky at 4°. Sun near zero energy. Interior glow at full 12.0.
Close glass glow shots. Tight DOF f/2.8.
Camera rises to 210–240 m for zenith aerial pull-back.
Focal length 60–70 mm. Full site revealed in context.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
CAMERA — 18 KEYFRAMES
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
All camera keyframes use Bezier interpolation with EASE_IN_OUT easing.
A Track-To constraint locks the camera to an animated empty target
so the look-at point rises with the construction throughout Act 1.
Frame Camera XYZ Lens f/stop Focus TgtZ
────── ──────────────── ──── ────── ───── ────
1 ( 96, -96, 10) 28mm 7.1 114m 22m
30 ( 92, -92, 12) 30mm 7.1 110m 28m
70 ( 84, -84, 24) 32mm 7.1 102m 44m
110 ( 76, -76, 36) 34mm 6.5 96m 64m
150 ( 68, -68, 50) 36mm 6.5 92m 82m
200 ( 60, -58, 62) 38mm 5.8 90m 92m
250 ( 32, -90, 74) 42mm 5.8 96m 96m
300 (-30, -90, 86) 46mm 5.2 102m 98m
350 (-78, -58, 96) 50mm 5.2 108m 100m
400 (-90, 8, 108) 52mm 4.8 114m 98m
440 (-58, 68, 116) 50mm 4.8 112m 92m
480 ( 6, 92, 124) 54mm 4.2 120m 86m
530 ( 14, -10, 176) 64mm 3.2 92m 98m
560 ( 22, 16, 172) 58mm 3.2 98m 106m
600 ( 18, 2, 190) 60mm 2.8 110m 90m
650 ( 60, -18, 154) 55mm 3.5 132m 82m
690 ( 26, -26, 210) 66mm 3.5 155m 72m
720 ( 32, -32, 240) 70mm 3.5 170m 66m
Handheld shake applied fr 30–200 every 5 frames, ±0.12 m XY, ±0.04 m Z
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
LIGHTING
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
NISHITA SKY
Sun rotation: 218°. Air density 1.0. Ozone density 1.0.
Sun elevation animated: 3° (fr 1) → 62° (fr 480) → 4° (fr 720)
Dust density animated: 1.4 (dawn haze) → 0.18 (clear noon) → 0.5
Sky strength animated: 1.1 → 1.7 → 0.3
SUN LIGHT (0.45° angular diameter)
fr 1 colour (1.00, 0.56, 0.30) energy 0.6 alt 9°
fr 30 colour (1.00, 0.68, 0.42) energy 1.4 alt 13°
fr 80 colour (1.00, 0.84, 0.58) energy 3.2 alt 22°
fr 200 colour (1.00, 0.92, 0.76) energy 4.6 alt 38°
fr 330 colour (1.00, 0.96, 0.88) energy 5.5 alt 54°
fr 480 colour (1.00, 0.98, 0.95) energy 5.9 alt 66°
fr 580 colour (0.90, 0.78, 0.60) energy 2.0 alt 15°
fr 720 colour (0.60, 0.50, 0.40) energy 0.2 alt 5°
FILL LIGHTS
Fill North Area 620 W sky blue (0.76, 0.86, 1.00) size 75m
animates: 180 W dawn → 620 W noon → 400 W dusk → 60 W night
Fill East Area 400 W neutral (0.82, 0.87, 0.96) size 64m
Sky Dome Area 360 W cool sky (0.68, 0.80, 1.00) size 95m
STREET LAMPS (× 14 posts)
Physically modelled: post + arm + emissive globe
Point light per lamp: warm amber (1.00, 0.88, 0.65)
Animate OFF → 1800 W over fr 479–500
Remain at 1800 W through fr 720
BUILDING UPLIGHTS (× 6 spots)
Office (× 3): warm amber (0.95, 0.82, 0.60)
Residential (× 2): cool blue (0.70, 0.88, 1.00)
Hotel (× 1): warm orange (1.00, 0.78, 0.50)
All animate OFF → 6000 W over fr 479–510
POOL LIGHT
Point light beneath pool surface. Cyan (0.55, 0.92, 1.00)
Animates 0 W → 800 W over fr 200–210
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
RENDER SETTINGS (applied automatically by script)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Engine Cycles · GPU Compute recommended
Samples 512 (raise to 1024 for final delivery)
Denoising OIDN (set OptiX if NVIDIA GPU available)
Resolution 2560 × 1440 QHD / 1920 × 1080 FHD also valid
Frame Rate 24 fps
Motion Blur ON · Shutter 0.5 · Steps 2
Max Bounces 12 total · 4 diffuse · 4 glossy · 8 transmission
Volume Bounces 0
Caustics Reflective OFF · Refractive OFF (speed)
Color Mgmt AgX Medium Contrast (Blender 4.x)
Filmic High Contrast (Blender 3.x fallback)
Exposure +0.65 EV
Output Format OpenEXR Multilayer (compositing)
PNG 16-bit (direct delivery)
Tile Size GPU: 512×512 · CPU: 64×64
RECOMMENDED COMPOSITOR NODES
Glare Type: Streaks · Threshold 1.0 · Mix −0.70
Lens Distort Distort −0.02 · Dispersion 0.006
Film Grain Add Noise node · Strength 0.04
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
BLENDER VERSION COMPATIBILITY
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
The script wraps every breaking API change in try/except blocks:
blend_method / shadow_method Removed Blender 4.2+ — try/except
Specular IOR Level vs Specular Renamed Blender 4.0 — try-loop
Subsurface Weight vs Subsurface Renamed Blender 4.0 — try-loop
Anisotropic input KeyError-safe access
Coat Weight / Clearcoat try-loop over known key names
AgX vs Filmic color management try/except with fallback
motion_blur_shutter try/except for older builds
Confirmed working on: Blender 3.6 LTS / Blender 4.x
NOT supported: Blender 2.9x
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
OUTLINER COLLECTIONS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
01_SITE
├── GROUND Sub-base + aggregate plaza + drainage rills
├── ROADS Road planes, tram rails, bus lane, cycle lanes,
│ zebra crossings, kerb upstands
├── STREET_FURN Benches, bollards, planting pots, bus shelters
├── LANDSCAPE Green roofs, planting beds, trees, hedgerows
├── CONTEXT 16 surrounding buildings
├── INFRA Site wall, basement ramp, footbridge
├── PODIUM Granite plinth, limestone body, transfer beam,
│ colonnade, arcade, living wall, lobby, retail
├── RETAIL Ground floor retail / cafe units
├── TOWERS Glass envelope segments for all towers
├── FLOORS Per-floor slab + spandrel objects
├── FACADE Mullion fins, spandrel bands, reveal grooves
├── CORES 4 concrete lift shaft cores
├── BRACING X-brace structural elements (office tower)
├── BALCONIES Residential terraces + handrails
├── HOTEL Hotel body + bays + brise-soleil + roof
├── ROOF All rooftop elements (plant, solar, pool, helipad,
│ parapet, cooling towers, lift overrun)
├── WATER Pool plane + drainage rill planes
└── INTERIOR_GLOW Per-floor emission planes (all buildings)
02_LIGHTING Sun, fill lights, street lamps, uplights, pool light
03_CAMERA Camera object + Track-To target empty
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
TROUBLESHOOTING
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
SCRIPT CRASHES BLENDER
Open the System Console before running:
Windows Window menu → Toggle System Console
Mac/Linux Launch Blender from a terminal window
The last printed line before the crash names the failing section.
Each section prints a progress marker, e.g. " Building podium..."
Share that output for a targeted patch at wickersonstudios.com.
NO OBJECTS APPEAR AFTER RUNNING
Ensure a 3D Viewport is visible when Alt+P is pressed.
Some mesh operators require an active viewport context.
MATERIALS LOOK TOO DARK / BLOWN OUT
Check Color Management. Properties → Scene → Color Management
View Transform should be AgX (Blender 4.x) or Filmic (3.x).
Exposure should be +0.65 EV. Do NOT use Standard.
INTERIOR GLOW NOT VISIBLE IN VIEWPORT
Switch viewport shading to Rendered (Cycles) or Material Preview.
Emission is invisible in Solid shading mode.
POOL WATER LOOKS WRONG
The water material uses Glass BSDF which requires Cycles.
EEVEE will not render it correctly.
MISSING MATERIAL (grey/pink error colour on objects)
Re-run the script. Full reset clears orphaned data blocks
that can cause material assignment failures on first run.
SLOW PLAYBACK IN VIEWPORT
Switch to Solid or Material Preview shading for playback.
Rendered viewport at 2560×1440 requires a fast GPU.
Cycles viewport progressive rendering is normal — it will
resolve as frames are cached.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
CUSTOMISATION
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
CHANGE TOWER HEIGHT
Edit OFLOORS (office) or RFLOORS (residential) constants.
Adjust the segment height tuples in each tower section accordingly.
Camera keyframe heights (cam_keys list) may need raising to match.
CHANGE GLASS TINT
Find mat_glass_cinematic() calls and adjust the tint=() tuple.
Office: tint=(0.18, 0.55, 0.62) — deep blue-green
Residential: tint=(0.22, 0.60, 0.52) — warm green
Sky bridge: tint=(0.88, 0.94, 0.98) — near clear
CHANGE LIMESTONE PALETTE
Find mat_limestone() and edit the ColorRamp positions/colours.
cm_vein: golden vein colour ramp
cm_col: base champagne colour ramp
CHANGE ANIMATION LENGTH
Edit scene.frame_end at the top of the script.
Adjust sky/sun keyframe lists and cam_keys accordingly.
DISABLE A SECTION
Each major section is delimited with clear comments and a print()
progress marker. Comment out or delete the entire block.
The reset and material library must remain intact.
ADD A CUSTOM MATERIAL
Copy the mat_simple() pattern:
mat_simple("MAT_Name", (R,G,B), rough=0.8, metal=0.0, spec=0.05)
For node-built shaders, copy any existing function as a template.
All materials follow the same node-builder pattern.
EXPORT TO ANOTHER FORMAT
After running, use File → Export.
FBX: good for game engines (materials export as basic PBR)
glTF: best Principled BSDF support
OBJ: widest compatibility (materials as MTL, limited)
Alembic: for animation in other DCC tools
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
VERSION HISTORY
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
v1.0 Basic massing, 7 node materials, 300 frames, 3-act camera
v2.0 Floor-by-floor animation, street grid, context buildings,
animated Nishita sky, 400 frames
v3.0 High-LOD mullions, podium arcade, full rooftop kit, 16 context
buildings, 3-layer concrete, corten crown, street furniture,
480 frames
v4.0 Wind turbines, helipad, infinity pool, sky bridge, balconies,
louvre fins, tram tracks, retail units, ETFE canopy,
underground entrance, 5-act camera, day→night arc, 600 frames
v5.0 Cinematic aesthetic direction: champagne limestone + ChromaShift
glass + aged brass + raw larch + corten. X-brace structure,
stepped terraces, living wall, 12-column colonnade, brise-soleil,
bay windows, drainage rills, footbridge, 5-layer node materials,
4-noise living wall SSS, AgX colour management, 6-act camera,
18 keyframes, 720 frames / 30 seconds. ← CURRENT
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
FREE & OPEN SOURCE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
This script is released under the MIT License.
You are free to use, modify, and distribute it commercially.
No attribution required — though it is always appreciated.
MIT License
Copyright (c) 2025 Wickerson Studios
Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation
files (the "Software"), to deal in the Software without restriction,
including without limitation the rights to use, copy, modify, merge,
publish, distribute, sublicense, and/or sell copies of the Software,
and to permit persons to whom the Software is furnished to do so,
subject to the following conditions: The above copyright notice and
this permission notice shall be included in all copies or substantial
portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
WICKERSON STUDIOS
www.wickersonstudios.com
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━