You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit a060425
Browse filesBrowse the repository at this point in the historyBrowse files
feat(gallery): supported-version line and a copyable falsifier on example detail pages
Each example detail page now shows, from examples/index.json:
- "runs on": the smoked series at or above the row's min_version
(4.5 LTS · 5.1 · 5.2 LTS), with "skips below X" when the floor is
above 4.5
- "falsify it": the first exit-code falsifier as a copyable command
under the run line, with the exit it must produce (and its own
min_version when it has one)
Showcase pieces have no index row and are unchanged apart from the
shared detail JS, which now wires both copy buttons. 56 example pages
carry both lines; check_site_links passes (139 pages, 0 failures).
Closes#377
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: docs/gallery/armature-bend/index.html
+12-4Lines changed: 12 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -55,10 +55,16 @@ <h1>Armature Bend</h1>
55
55
<pclass="zoom-hint">Rendered headless by the example itself. Select it to enlarge.</p>
56
56
<divclass="callout"><spanclass="tag">witnesses</span> edit_bones exists only in edit mode (empty in object mode), vertex groups bind to bones strictly by name, and the armature modifier is exactly linear blend skinning: every evaluated vertex must equal Σ wᵢ·(pose_bone.matrix @ bone.matrix_local.inverted()) @ rest, root ring pinned, tip deflected — a straight tube fails.</div>
<navclass="jumpnav" aria-label="On this page"><spanclass="tag">jump to</span><ahref="#run">Run</a><ahref="#exit-codes">Exit codes</a><ahref="#source">Source</a><ahref="#related">Related</a></nav>
63
69
<sectionclass="detail-section md">
64
70
<p>A runnable example that rigs a tapered, ribbed bellows hose with a four-bone armature chain — <code>edit_bones</code> construction, name-bound vertex groups with smoothstep blend zones, a posed curl — and checks the depsgraph-evaluated result against closed-form linear blend skinning, following <ahref="https://github.com/TMHSDigital/Blender-Developer-Tools/tree/main/skills/mesh-editing-and-bmesh/SKILL.md"><code>mesh-editing-and-bmesh</code></a> and <ahref="https://github.com/TMHSDigital/Blender-Developer-Tools/tree/main/skills/depsgraph-and-evaluated-data/SKILL.md"><code>depsgraph-and-evaluated-data</code></a>.</p>
<pclass="zoom-hint">Rendered headless by the example itself. Select it to enlarge.</p>
56
56
<divclass="callout"><spanclass="tag">witnesses</span> Authoring per-face colors into a POINT-domain attribute overwrites shared vertices once per neighbor; the last write wins and intended colors shear across every shared vertex.</div>
<navclass="jumpnav" aria-label="On this page"><spanclass="tag">jump to</span><ahref="#run">Run</a><ahref="#exit-codes">Exit codes</a><ahref="#source">Source</a><ahref="#related">Related</a></nav>
63
69
<sectionclass="detail-section md">
64
70
<p>A runnable example that witnesses what <code>POINT</code> versus <code>CORNER</code><strong>means</strong> on <code>Mesh.color_attributes</code> once the mesh has shared vertices — the domain is not a storage detail, it decides where colors can live. Companion to <ahref="https://github.com/TMHSDigital/Blender-Developer-Tools/tree/main/examples/color-attribute-wheel"><code>color-attribute-wheel</code></a> (which covers <code>color_attributes.new()</code> versus the deprecated alias, CORNER sizing == <code>len(loops)</code>, and <code>active_color</code>); this example covers the trap one step later, when AI code knows the API exists but authors per-face colors into a <code>POINT</code>-domain attribute.</p>
<navclass="jumpnav" aria-label="On this page"><spanclass="tag">jump to</span><ahref="#run">Run</a><ahref="#exit-codes">Exit codes</a><ahref="#source">Source</a><ahref="#related">Related</a></nav>
63
69
<sectionclass="detail-section md">
64
70
<p>A runnable example that cage-bakes a ribbed bronze hatch plate onto a <code>DECIMATE COLLAPSE</code> LOD and asserts the tangent-space normal map carries measurable surface detail — following <ahref="https://github.com/TMHSDigital/Blender-Developer-Tools/tree/main/skills/bake-high-to-low/SKILL.md"><code>bake-high-to-low</code></a>.</p>
Copy file name to clipboardExpand all lines: docs/gallery/bmesh-gear/index.html
+12-4Lines changed: 12 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -55,10 +55,16 @@ <h1>BMesh Gear</h1>
55
55
<pclass="zoom-hint">Rendered headless by the example itself. Select it to enlarge.</p>
56
56
<divclass="callout"><spanclass="tag">witnesses</span> Parametric bmesh topology is exactly predictable: verts, edges, and faces match their closed forms, and every edge borders exactly two faces (watertight).</div>
<navclass="jumpnav" aria-label="On this page"><spanclass="tag">jump to</span><ahref="#run">Run</a><ahref="#exit-codes">Exit codes</a><ahref="#source">Source</a><ahref="#related">Related</a></nav>
63
69
<sectionclass="detail-section md">
64
70
<p>A runnable example that builds a 14-tooth gear entirely with bmesh — profile ring, face, <code>extrude_face_region</code>, translate — following the ownership contract from <ahref="https://github.com/TMHSDigital/Blender-Developer-Tools/tree/main/skills/mesh-editing-and-bmesh/SKILL.md"><code>mesh-editing-and-bmesh</code></a> and the <ahref="https://github.com/TMHSDigital/Blender-Developer-Tools/tree/main/rules/always-free-bmesh.mdc"><code>always-free-bmesh</code></a> rule: every <code>bmesh.new()</code> is paired with <code>bm.free()</code> in a <code>try</code>/<code>finally</code>.</p>
0 commit comments