|
1 | 1 | { |
2 | | - "_comment": "FORWARD-COMPATIBLE SOURCE OF TRUTH for the examples gallery. The local page at docs/gallery/index.html is GENERATED from this file by scripts/build_gallery.py -- do not hand-edit the HTML. When the fleet template (Developer-Tools-Directory: site-template/build_site.py + template.html.j2) gains examples support (see ROADMAP: 'Fleet Pages examples support'), it reads this same file and the local page is retired. That migration is a lift-and-shift, not a rewrite: keep this schema stable. Per-entry schema: {name, dir, teaches, witnessesFix, hero, preview}; hero/preview/dir are repo-root-relative.", |
| 2 | + "_comment": "FORWARD-COMPATIBLE SOURCE OF TRUTH for the examples gallery. The local page at docs/gallery/index.html is GENERATED from this file by scripts/build_gallery.py -- do not hand-edit the HTML. When the fleet template (Developer-Tools-Directory: site-template/build_site.py + template.html.j2) gains examples support (see ROADMAP: 'Fleet Pages examples support'), it reads this same file and the local page is retired. That migration is a lift-and-shift, not a rewrite: keep this schema stable. Per-entry schema: {name, dir, teaches, witnessesFix, hero, preview, tags?}; hero/preview/dir are repo-root-relative; tags is an optional additive list driving the gallery filter chips. build_gallery.py also emits a detail page per example at docs/gallery/<name>/.", |
3 | 3 | "title": "Examples Gallery", |
4 | 4 | "description": "Runnable, smoke-gated Blender Python examples — each executed headless on Blender 4.5 LTS and 5.1, so every render reflects code that actually runs.", |
5 | 5 | "repoBaseUrl": "https://github.com/TMHSDigital/Blender-Developer-Tools/tree/main", |
|
11 | 11 | "teaches": "Procedural Principled materials — metal and dielectric, the emission pattern, and the cross-version set_specular shim.", |
12 | 12 | "witnessesFix": "EEVEE engine-id mapping: BLENDER_EEVEE on 5.x, BLENDER_EEVEE_NEXT on 4.2–4.5.", |
13 | 13 | "hero": "docs/gallery/assets/swatch-grid-hero.webp", |
14 | | - "preview": "examples/swatch-grid/preview.webp" |
| 14 | + "preview": "examples/swatch-grid/preview.webp", |
| 15 | + "tags": ["materials", "rendering"] |
15 | 16 | }, |
16 | 17 | { |
17 | 18 | "name": "turntable", |
18 | 19 | "dir": "examples/turntable", |
19 | 20 | "teaches": "A slotted-actions Z-rotation turntable keyed through the cross-version channelbag path (get_channelbag_for_slot).", |
20 | 21 | "witnessesFix": "Slotted-actions boundary: ensure-helper channelbag on 5.x, strip.channelbag on 4.4/4.5.", |
21 | 22 | "hero": "docs/gallery/assets/turntable-hero.webp", |
22 | | - "preview": "examples/turntable/preview.webp" |
| 23 | + "preview": "examples/turntable/preview.webp", |
| 24 | + "tags": ["animation"] |
23 | 25 | }, |
24 | 26 | { |
25 | 27 | "name": "gn-sdf-remesh", |
26 | 28 | "dir": "examples/gn-sdf-remesh", |
27 | 29 | "teaches": "A Geometry Nodes SDF remesh (MeshToSDFGrid → GridToMesh at the SDF zero-level), with a Set Material node carrying the material through the remesh.", |
28 | 30 | "witnessesFix": "An SDF grid is meshed with Grid to Mesh, not Volume to Mesh; GN geometry needs Set Material or it renders untextured.", |
29 | 31 | "hero": "docs/gallery/assets/gn-sdf-remesh-hero.webp", |
30 | | - "preview": "examples/gn-sdf-remesh/preview.webp" |
| 32 | + "preview": "examples/gn-sdf-remesh/preview.webp", |
| 33 | + "tags": ["geometry-nodes", "materials"] |
31 | 34 | }, |
32 | 35 | { |
33 | 36 | "name": "depsgraph-export", |
34 | 37 | "dir": "examples/depsgraph-export", |
35 | 38 | "teaches": "The depsgraph lifetime contract — evaluated_get().to_mesh() paired with to_mesh_clear() — measured against an OBJ export of the same object.", |
36 | 39 | "witnessesFix": "Exports ship evaluated geometry: the exported vertex count equals the subsurf-applied count and is strictly greater than the base mesh.", |
37 | 40 | "hero": "docs/gallery/assets/depsgraph-export-hero.webp", |
38 | | - "preview": "examples/depsgraph-export/preview.webp" |
| 41 | + "preview": "examples/depsgraph-export/preview.webp", |
| 42 | + "tags": ["depsgraph", "export"] |
39 | 43 | } |
40 | 44 | ] |
41 | 45 | } |
0 commit comments