Bake library AO and lift environment textures
Phase 4 of the v0.6.0 graphics plan: - tools/bake_ao.py bakes 256² AO maps for every Blender character/gear/prop (Cycles, existing UVs) next to each GLB; Materials.apply_ao() wires the red channel into character slots, gear, and props. Compatibility has no SSAO. - Regenerated brick/concrete/asphalt at 1024² with OpenRouter, derived tangent normal maps via tools/make_normal_maps.py, and wired them through SurfaceMaterials.textured() without changing UV scales. - Evaluated Forward+: boots on desktop Vulkan, but the renderer is project-wide and Web must stay GL Compatibility; v0.6.0 keeps Compatibility (decision in MEMORY/plan). A desktop-only override is deferred. - Recaptured screenshots; compare 11 good / 0 bad. Fixed marquee text alignment. - Tests: baked AO maps exist for all 46 assets; prop/character AO material checks; headless 222/222, Python 69/69, all smokes pass. - Version 0.6.0; ADR-0013 accepted; README/architecture/blender-assets/plan and TODO/DONE updated.
This commit is contained in:
1 parent
d8cfddbf89
commit
d872034388
78 files changed
+390
-28
No files matched your search
@@ -860,3 +860,21 @@ smokes pass, `compare` **11 good / 0 bad**. AO/ORM baking remains in Phase 4.
|
||||
~27,986 triangles. NPC budget smoke: 16 avatars = 112 meshes at ~6.9 ms.
|
||||
- [x] Recaptured the README/catalogue screenshots (including the prop gallery from the library
|
||||
models) and fixed the marquee text placement.
|
||||
|
||||
## Environment and Lighting Lift
|
||||
|
||||
Completed 2026-11-01 (v0.6.0). Headless **222/222**, Python **69/69**, all smokes pass,
|
||||
`compare` **11 good / 0 bad**.
|
||||
|
||||
- [x] Baked per-asset AO maps for the full Blender library with `tools/bake_ao.py` (Cycles,
|
||||
256×256, stored next to each GLB as `<name>_ao.png`); Godot wires the red channel into
|
||||
`StandardMaterial3D.ao_texture` for character slots, gear and props.
|
||||
- [x] Regenerated brick, concrete and asphalt at 1024² through `asset_pipeline.py`, derived
|
||||
tangent normal maps with `tools/make_normal_maps.py`, and wired them into
|
||||
`SurfaceMaterials.textured()` while keeping the existing UV scales.
|
||||
- [x] Evaluated Forward+: it boots on the desktop Vulkan driver, but the renderer is a
|
||||
project-wide setting and the Web build must stay on GL Compatibility. Decision: keep
|
||||
Compatibility for v0.6.0; a desktop-only preset needs a separate project/override and is
|
||||
deferred.
|
||||
- [x] Recaptured `docs/screenshots/` and ran `compare` + `judge`; no regressions.
|
||||
- [x] Fixed the library marquee text/face alignment and added the library AO/triangle tests.
|
||||
Reference in new issue
Block a user