From 78c852cfb7ace1e3d5873519c54187a5c619f23e Mon Sep 17 00:00:00 2001
From: TMHSDigital <154358121+TMHSDigital@users.noreply.github.com>
Date: Fri, 25 Sep 2026 14:53:47 -0400
Subject: [PATCH] feat(showcase): add grain-sacks
Grain sacks were the next unclaimed showcase candidate. What an envelope
check cannot see on a sack is whether it has settled: an egg-bottomed
sack still touches the floor at its lowest vertex, so zmin and the
per-sack support gate both pass it. The piece sums the flat-on-floor face
area under each sack, and --round-bottom exits 19 with every patch at 0
while zmin and the supports still pass.
Also asserts each twine tie sits in its neck's waist, bites the cloth by
a banded depth, and that the sacks press into one another and carry their
belly low, each with a falsifier proven on 4.5.11, 5.1.2 and 5.2.1.
Co-Authored-By: Claude Opus 5.5 (1M context)
Signed-off-by: TMHSDigital <154358121+TMHSDigital@users.noreply.github.com>
---
.cursor-plugin/plugin.json | 3 +-
CLAUDE.md | 2 +-
README.md | 9 +-
ROADMAP.md | 2 +-
docs/gallery/asset-sheets/grain-sacks.webp | Bin 0 -> 36394 bytes
docs/gallery/assets/grain-sacks-hero.webp | Bin 0 -> 33932 bytes
.../grain-sacks-contact-sheet.webp | Bin 0 -> 57954 bytes
docs/gallery/grain-sacks/index.html | 1783 +++++++++++++++++
docs/gallery/index.html | 15 +-
showcase/gallery.json | 13 +
showcase/grain-sacks/README.md | 214 ++
showcase/grain-sacks/grain_sacks.py | 1417 +++++++++++++
showcase/grain-sacks/preview.webp | Bin 0 -> 30960 bytes
tests/smoke/catalog.json | 3 +-
14 files changed, 3452 insertions(+), 9 deletions(-)
create mode 100644 docs/gallery/asset-sheets/grain-sacks.webp
create mode 100644 docs/gallery/assets/grain-sacks-hero.webp
create mode 100644 docs/gallery/contact-sheets/grain-sacks-contact-sheet.webp
create mode 100644 docs/gallery/grain-sacks/index.html
create mode 100644 showcase/grain-sacks/README.md
create mode 100644 showcase/grain-sacks/grain_sacks.py
create mode 100644 showcase/grain-sacks/preview.webp
diff --git a/.cursor-plugin/plugin.json b/.cursor-plugin/plugin.json
index 7dd03805..8a3b4435 100644
--- a/.cursor-plugin/plugin.json
+++ b/.cursor-plugin/plugin.json
@@ -166,6 +166,7 @@
"showcase/hay-bale",
"showcase/crate-stack",
"showcase/stone-archway",
- "showcase/rope-bridge"
+ "showcase/rope-bridge",
+ "showcase/grain-sacks"
]
}
diff --git a/CLAUDE.md b/CLAUDE.md
index 1b812e5a..5b94ab13 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -22,7 +22,7 @@ rules/.mdc - Anti-pattern rules, 9 total
templates// - Starter projects, 3 total
snippets/.py - Standalone code patterns, 27 total
examples// - Runnable smoke-gated examples, 59 total (+ gallery.json)
-showcase// - Budget-conformance props, 29 pieces (sibling of examples/; see showcase/README.md)
+showcase// - Budget-conformance props, 30 pieces (sibling of examples/; see showcase/README.md)
scripts/build_gallery.py - Regenerates docs/gallery/ from examples/gallery.json + showcase/gallery.json
scripts/site/ - Vendored landing-page build (Jinja2)
docs/gallery/ - Committed generated gallery pages + hero renders
diff --git a/README.md b/README.md
index fa932531..80bb0dcf 100644
--- a/README.md
+++ b/README.md
@@ -18,7 +18,7 @@
- 16 skills • 9 rules • 3 templates • 27 snippets • 59 examples • 29 showcase pieces
+ 16 skills • 9 rules • 3 templates • 27 snippets • 59 examples • 30 showcase pieces
@@ -37,7 +37,7 @@
## Overview
-This repository ships **16 skills, 9 rules, 3 templates, 27 snippets, 59 examples, and 29 showcase pieces** for Blender Python development targeting Blender 5.2 LTS (current stable) with Blender 4.5 LTS fallback support. Blender 5.1 is prior stable.
+This repository ships **16 skills, 9 rules, 3 templates, 27 snippets, 59 examples, and 30 showcase pieces** for Blender Python development targeting Blender 5.2 LTS (current stable) with Blender 4.5 LTS fallback support. Blender 5.1 is prior stable.
The content is consumed by AI coding agents reading these files directly from a checkout — **there is no MCP server in this repository, and none is required**. Cursor applies `rules/*.mdc` automatically wherever their scope globs match and takes skills by name in chat; Claude Code reads `skills/` and `rules/` from the project workspace, or from this repo kept as a referenced checkout. Any agent that can read files in a workspace can use it the same way. There is no build step for the content — edit the Markdown and Python files directly.
@@ -106,7 +106,7 @@ per-script exit-code model, are in
Budget-conformance props. Not examples. Conventions: [`showcase/README.md`](showcase/README.md).
-29 showcase pieces — click to expand the preview grid
+30 showcase pieces — click to expand the preview grid
@@ -138,6 +138,7 @@ Budget-conformance props. Not examples. Conventions: [`showcase/README.md`](show
+
[`shipping-crate`](showcase/shipping-crate/) — procedural crate through UVs, bake, LOD, collider, and Unity glTF, asserting recomputed budgets. Falsifier `--skip-decimate` exits 9.
@@ -194,6 +195,8 @@ Budget-conformance props. Not examples. Conventions: [`showcase/README.md`](show
[`rope-bridge`](showcase/rope-bridge/) — procedural rope footbridge whose plank deck is fitted to a parabola recomputed from the plank tops, with lashed hand ropes and staked foot ropes, through the same pipeline. Falsifiers `--vee-deck` exits 19, `--float-suspenders` exits 18.
+[`grain-sacks`](showcase/grain-sacks/) — procedural pile of burlap grain sacks settled onto flat bases and tied with twine, through the same pipeline. Falsifiers `--round-bottom` exits 19, `--slip-tie` exits 17.
+
## Examples
diff --git a/ROADMAP.md b/ROADMAP.md
index f3c51400..ea29741d 100644
--- a/ROADMAP.md
+++ b/ROADMAP.md
@@ -134,7 +134,7 @@ Not committed; target list for the next content version. (v0.3.0 shipped the smo
- ~~Stack of shipping crates as a game-prop showcase piece~~ **SHIPPED** as `showcase/crate-stack/` — one generator called three times with a per-instance seed driving yaw and plank widths, crates seated on the lid below; `--same-seed` exits 20 on the per-instance variation budget, `--float-stack` exits 18 on the seat
- ~~Keystone archway with voussoirs as a game-prop showcase piece~~ **SHIPPED** as `showcase/stone-archway/` — coursed piers, projecting imposts, nine voussoirs, proud keystone; the intrados circle fit is recomputed from vertex positions and `--off-circle` exits 19 on it while leaving every other budget passing
- ~~Rope bridge (planks, rope rails, sag between anchors) as a game-prop showcase piece~~ **SHIPPED** as `showcase/rope-bridge/` — log posts, through-tenoned sills, twenty planks seated on laid foot ropes, lashed hand ropes, suspenders, staked tie-offs; a least-squares parabola is fitted to the plank tops and `--vee-deck` exits 19 on it with the sag still in band
-- Grain sacks (cloth sacks, some slumped, tied necks) as a game-prop showcase piece
+- ~~Grain sacks (cloth sacks, some slumped, tied necks) as a game-prop showcase piece~~ **SHIPPED** as `showcase/grain-sacks/` — three settled, pleated burlap sacks, one lying, twine ties seated in the neck waist, sacks pressed into one another; flat contact patch summed from the mesh, `--round-bottom` exits 19 on it while zmin still passes
- Brazier (iron bowl on legs, coals, ash) as a game-prop showcase piece
- Apothecary shelf (shelf unit, bottles and jars of varied form) as a game-prop showcase piece
- Wooden yoke (oxbow, iron rings) as a game-prop showcase piece
diff --git a/docs/gallery/asset-sheets/grain-sacks.webp b/docs/gallery/asset-sheets/grain-sacks.webp
new file mode 100644
index 0000000000000000000000000000000000000000..20e559db26dc90b9ad88689b4950abeee85fd085
GIT binary patch
literal 36394
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
literal 0
HcmV?d00001
diff --git a/docs/gallery/assets/grain-sacks-hero.webp b/docs/gallery/assets/grain-sacks-hero.webp
new file mode 100644
index 0000000000000000000000000000000000000000..5f409ab61f4780b94ef110d4cea2b1c99bf7af43
GIT binary patch
literal 33932
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