| name | snap-spectacles-design |
| description | Load when the user is polishing a Snap Spectacles lens for shipping โ FOV / safe zone, head vs body vs world lock, comfort and motion-sickness rules, performance and thermal budgets, lens publishing and review. Don't load for early build mechanics โ use snap-spectacles-build. |
| license | MIT |
| metadata | {"author":"HKTITAN","version":"1.0.0","graph":true,"depends":["snap-spectacles-build"]} |
Spectacles Design โ Comfort, Performance, Publishing
Shipping a Spectacles lens is more than getting it to work in the editor. It has to be comfortable for 10+ minutes of wear, fit Snap's perf budget, survive thermal / battery constraints, and pass review. This skill is the polish layer โ what separates a tech demo from a shipped lens. Pair with GUIDELINES.md at the repo root, which is the bible for display-glasses design across vendors.
When to load
Triggers:
- "Spectacles lens performance"
- "Lens won't pass review"
- "FOV safe zone Spectacles"
- "Motion sickness in my lens"
- "Lens approval Snap"
- "Performance budget Spectacles"
- "How to publish a Spectacles lens"
Don't load for:
- Early build mechanics โ [[../snap-spectacles-build/SKILL]].
- Interaction wiring โ [[../snap-spectacles-sik/SKILL]].
- Cross-vendor design principles โ read
GUIDELINES.md at the repo root.
Decide first
The architecture decisions before polish:
- Comfort budget. What's the longest you expect a user to wear your lens? 1 minute? 10? 60? Everything else flows from this.
- Anchor strategy. Head, body, or world lock for each content piece? See [[references/head-locked-vs-world-locked]].
- Performance target. What frame rate are you holding? 60 fps is the floor; below that, motion comfort suffers.
- Publishing path. Personal lens, unlisted, or public via lens review? Each has its own requirements.
Map of content
Visual comfort
- [[references/fov-safe-zone]] โ where content reads comfortably; where it doesn't.
- [[references/head-locked-vs-world-locked]] โ anchor choice and its comfort impact.
- [[references/body-locked-ui]] โ the underused middle option.
- [[references/text-legibility]] โ readable type on Spectacles' display.
Physical comfort
- [[references/comfort-rules]] โ vergence-accommodation, IPD, eye fatigue.
- [[references/motion-comfort]] โ avoiding motion sickness in dynamic lenses.
Performance
- [[references/performance-budget]] โ frame rate, draw calls, polycount.
- [[references/profiling]] โ measuring what your lens actually costs.
- [[references/draw-call-budget]] โ the per-frame draw count.
- [[references/thermal-budget]] โ thermal throttling under load.
- [[references/battery-budget]] โ what drains battery and how to slow it.
Shipping
- [[references/permissions-privacy]] โ designing for permission flows; Snap's privacy rules.
- [[references/publishing-checklist]] โ pre-submission audit.
- [[references/lens-approval]] โ what Snap reviews look for.
Verify
Before submitting a lens for review:
Smoke test
If this skill loaded correctly, the agent should answer:
- What's the floor frame rate for a Spectacles lens to feel comfortable? (Expected: 60 fps sustained; below 45 fps motion comfort degrades sharply; cites [[references/performance-budget]] and [[references/motion-comfort]].)
- The user has a UI panel that follows their head. What's wrong? (Expected: head-locked UI longer than a few seconds disorients; switch to body-locked or world-locked; cites [[references/head-locked-vs-world-locked]] and [[references/body-locked-ui]].)
- Lens rejected during review for "performance issues." What's the diagnostic order? (Expected: profile on device, check draw calls / poly / texture, audit thermal / battery, verify smooth at 60 fps; cites [[references/profiling]] and [[references/performance-budget]].)
Sibling skills
- [[../snap-spectacles-build/SKILL]] โ build basics.
- [[../snap-spectacles-sik/SKILL]] โ interaction polish.
- [[../snap-spectacles-sync/SKILL]] โ multiplayer-specific polish.
Cross-vendor reference
GUIDELINES.md at the repo root is the bible for display-glasses design across vendors. This skill is Snap-specific polish; the guidelines are universal.
Sources