Generative furniture that rests together without clipping - #74
Merged
Merged
Conversation
Each non-computer kind now has three authored designs with seeded proportion changes (ladder, spindle and padded dining chairs; two-seat, three-seat and armchair sofas; lateral and upright files; and so on), cached per design so the prototype inventory stays finite (60 models). Placement keeps a registry of placed solids. Props, chairs, table seating, piles, computers, pillars and wall shelving are only accepted where their oriented part solids clear it, so sofas no longer land inside pillars and pieces no longer interpenetrate. Chairs and wall pieces use seeded positions and slight misalignment instead of fixed corner spots, and free-standing tables gather matching chairs. Chair piles are solved from the chair's measured frame: an upright chair, then chairs turned upside down resting seat-to-seat and on upturned legs, each backrest hanging clear. Office chair arms are bracketed to the seat, letter-block glyphs are no longer mirrored, and blocks and cartons rest on each other instead of overlapping. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Furniture now varies from room to room, and pieces no longer pass through each other.
Generative models. Each non-computer kind has three authored designs, each with small seeded proportion changes: ladder, spindle and padded dining chairs; two-seat, three-seat and armchair sofas; banquet, dining and round pedestal tables; upright and lateral files; tall, narrow and low shelving with seeded binder runs; and more. Prototypes are cached per design (60 in all, 3.86 MB of vertex data).
No clipping. Section construction keeps a registry of placed solids (oriented part boxes, pillars, wall shelving). Every placement is checked against it, including props, chairs, table seating, piles and computers, and pillars and shelving check it too. Before this change, 100 sections had about 88 pieces inside pillars or shelving (for example a sofa impaled by a pillar) and 15 pieces overlapping each other. Now both counts are 0 by solid-level test.
Chair piles. Piles are solved from the chair's measured frame: an upright chair, then chairs turned upside down, resting seat-to-seat and then on upturned legs, with each backrest hanging clear. They used to drive each chair's leg through the seat below.
Arrangement. Chairs use seeded spots, pairs sit side by side or face each other, and wall pieces slide along the wall with slight misalignment. Free-standing tables gather matching chairs.
Model fixes. Office chair arms are bracketed to the seat instead of floating. Letter-block glyphs are no longer mirrored. Blocks and cartons rest on each other instead of overlapping.
Deliberate wall and ceiling embedding is unchanged.
Verification
npm test237/237, including new tests: piles have touching support and no interpenetration across every design, style and 40 seeds (with a check that a 3 cm sink is caught), and generated sections have no furniture/furniture or furniture/fixture overlap.eslint,tsc, andnext buildpass.🤖 Generated with Claude Code