diff --git a/README.md b/README.md index a0a39b67..308467d1 100644 --- a/README.md +++ b/README.md @@ -899,7 +899,7 @@ Neighbor of [`lod-decimate-chain`](examples/lod-decimate-chain/). -Vertex weight limit: a posed mech arm on a dark studio floor - orange armor shells, a glowing teal flex cuff around the hex-bolted elbow hinge, long plated forearm, three-finger gripper - deformed by weights pruned to the four-influence engine cap +Vertex weight limit: an orange industrial robot arm reaching down with a two-jaw gripper, painted with its own post-limit skin weights - each rigid segment glows in its bone colour and the back cables grade blue to teal to violet to magenta across the joints @@ -908,9 +908,10 @@ Neighbor of [`lod-decimate-chain`](examples/lod-decimate-chain/). The game-engine max-four-bone-influences constraint, enforced through the data API (`v.groups` + `VertexGroup.remove` + renormalize) rather than the `bpy.ops.object.vertex_group_limit_total` context path. Asserts the pre-limit -boots really carry five influences, no vertex ends over the cap, weights still +cables really carry five influences, no vertex ends over the cap, weights still sum to one, the pose survives pruning, and the modifier is still exact linear -blend skinning read back from the mesh's own deform layer. +blend skinning read back from the mesh's own deform layer. The render paints +those post-limit weights onto the arm as a colour attribute. diff --git a/docs/gallery/asset-sheets/vertex-weight-limit.webp b/docs/gallery/asset-sheets/vertex-weight-limit.webp new file mode 100644 index 00000000..756f2073 Binary files /dev/null and b/docs/gallery/asset-sheets/vertex-weight-limit.webp differ diff --git a/docs/gallery/assets/vertex-weight-limit-hero.webp b/docs/gallery/assets/vertex-weight-limit-hero.webp index d5e6bd57..499255d8 100644 Binary files a/docs/gallery/assets/vertex-weight-limit-hero.webp and b/docs/gallery/assets/vertex-weight-limit-hero.webp differ diff --git a/docs/gallery/contact-sheets/vertex-weight-limit-contact-sheet.webp b/docs/gallery/contact-sheets/vertex-weight-limit-contact-sheet.webp index 7754f75a..4ad5e557 100644 Binary files a/docs/gallery/contact-sheets/vertex-weight-limit-contact-sheet.webp and b/docs/gallery/contact-sheets/vertex-weight-limit-contact-sheet.webp differ diff --git a/docs/gallery/index.html b/docs/gallery/index.html index 624dc14b..15d46545 100644 --- a/docs/gallery/index.html +++ b/docs/gallery/index.html @@ -640,11 +640,11 @@

lod-decimate-chain

vertex-weight-limit

-

A rigged mech arm pruned to the game-engine cap of four bone influences per vertex, through the data API. The check proves no vertex exceeds the cap, weights still sum to one, the pose survives pruning, and the modifier is still exact linear blend skinning.

+

A rigged industrial robot arm pruned to the game-engine cap of four bone influences per vertex, through the data API. The check proves no vertex exceeds the cap, weights still sum to one, the pose survives pruning, and the modifier is still exact linear blend skinning.

witnesses Limit-total and normalize without bpy.ops: keep the top four groups, VertexGroup.remove the rest, renormalize. LBS is verified against the weights read back from the mesh's own deform layer, not the authoring function.

View example vertex-weight-limit
diff --git a/docs/gallery/vertex-weight-limit/index.html b/docs/gallery/vertex-weight-limit/index.html index cc265dce..ba9f2e00 100644 --- a/docs/gallery/vertex-weight-limit/index.html +++ b/docs/gallery/vertex-weight-limit/index.html @@ -4,25 +4,25 @@ vertex-weight-limit — Examples — Blender Developer Tools - + - + - + - + - +