Skip to content

Add cathedral scene generator, render script, and design docs#27

Merged
lienardale merged 3 commits into
masterfrom
claude/cathedral-gen-tools
Mar 26, 2026
Merged

Add cathedral scene generator, render script, and design docs#27
lienardale merged 3 commits into
masterfrom
claude/cathedral-gen-tools

Conversation

@lienardale

Copy link
Copy Markdown
Owner

Summary

  • Extend tools/gen_scene.c with 5 new shape writers (write_disk, write_torus, write_ellipsoid, write_triangle, write_paraboloid) and material-aware _mat variants for existing writers
  • Add cathedral preset to gen_scene that procedurally generates the 236-shape medieval cathedral ruins scene, with seed-controlled debris randomization
  • Create scripts/render_cathedral.sh with --preview/--full/--generate-only modes, xvfb-based headless rendering, and elapsed time reporting
  • Create skills/scene-design.md documenting architectural scene design principles, the cathedral as a case study, material/lighting/color strategy, performance considerations, and the preview-iterate-render workflow
  • Add render-cathedral Makefile target

Usage

# Generate + render at preview resolution (~1-3 min)
make render-cathedral ARGS="--preview"

# Full resolution render (~20-30 min)
make render-cathedral ARGS="--full"

# Just generate the .rt file with a custom seed
scripts/render_cathedral.sh --generate-only --seed 123

# Use gen_scene directly
./gen_scene --preset cathedral --width 2560 --height 1440 --output my_scene.rt

Test plan

  • make gen_scene builds successfully
  • ./gen_scene --list shows cathedral preset
  • ./gen_scene --preset cathedral --output test.rt generates valid .rt (~242 shapes)
  • Generated scene parses without errors in miniRT
  • scripts/render_cathedral.sh --preview renders BMP at 640x360
  • make render-cathedral ARGS="--full" produces full-res BMP

https://claude.ai/code/session_011y4jf3XH1xLchcQXdo1NAy

claude added 3 commits March 26, 2026 16:58
- Extend gen_scene.c with 5 new shape writers (disk, torus, ellipsoid,
  triangle, paraboloid) and material-aware variants for existing writers
- Add "cathedral" preset that procedurally generates the 236-shape
  cathedral ruins scene with seed-controlled debris randomization
- Create scripts/render_cathedral.sh with --preview/--full/--generate-only
  modes, xvfb-based headless rendering, and elapsed time reporting
- Create skills/scene-design.md documenting architectural scene design,
  the cathedral as a case study, material/lighting strategy, performance
  considerations, and the preview-iterate-render workflow
- Add render-cathedral Makefile target

https://claude.ai/code/session_011y4jf3XH1xLchcQXdo1NAy
- Replace single cramped camera with 4 angles: elevated nave overview,
  angled entrance, transept crossing, and low dramatic perspective
- Add scripts/bmp2png.py for BMP-to-PNG conversion
- Update render_cathedral.sh with --png flag and fallback rendering

https://claude.ai/code/session_011y4jf3XH1xLchcQXdo1NAy
- Replace cramped camera (Z=12) with 4 angles: elevated nave overview
  (Z=25), angled entrance, transept crossing, low dramatic
- Add E directive for gradient sky background (no more black void)
- Add scripts/bmp2png.py for BMP-to-PNG conversion
- Update render_cathedral.sh with --png flag and fallback rendering
- Re-render at 2560x1440, convert to PNG (1.1MB vs 11MB BMP)
- Update README to reference renders_preview/cathedral_ruins.png
- Update gen_scene.c cathedral preset with new cameras + E directive

https://claude.ai/code/session_011y4jf3XH1xLchcQXdo1NAy
@lienardale
lienardale force-pushed the claude/cathedral-gen-tools branch from 7d50c50 to d291e58 Compare March 26, 2026 17:22
@lienardale
lienardale merged commit ce5e86d into master Mar 26, 2026
9 checks passed
@lienardale
lienardale deleted the claude/cathedral-gen-tools branch March 26, 2026 21:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants