Skip to main content

snap-spectacles-sik

Load when the user is wiring pinch, poke, gaze, or two-handed manipulation on Snap Spectacles — building AR buttons, sliders, draggable objects, scrollable lists, custom interactors, or asks "why isn't my Interactable firing." Don't load for general Lens Studio scene setup — use snap-spectacles-build.

Quellinformationen

Repository
HKTITAN/thenextinterface
Letzte Quellaktivität
15. Mai 2026 um 09:09
Erkannte Sprache von SKILL.md
Englisch
Sterne
4
Forks
0

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

Datei-Explorer
15 Dateien

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
snap-spectacles-sik
description
Load when the user is wiring pinch, poke, gaze, or two-handed manipulation on Snap Spectacles — building AR buttons, sliders, draggable objects, scrollable lists, custom interactors, or asks "why isn't my Interactable firing." Don't load for general Lens Studio scene setup — use snap-spectacles-build.
license
MIT
metadata
{"author":"HKTITAN","version":"1.0.0","graph":true,"depends":["snap-spectacles-build"]}
# Spectacles Interaction Kit (SIK) SIK is the canonical way to wire interactions on Spectacles. The architecture is three classes — **Interactor**, **Interactable**, **InteractionManager** — and a handful of UI prefabs. Once the model clicks, everything from pinch buttons to two-handed scaling falls into the same shape. ## When to load Triggers: - "Why isn't my pinch button firing on Spectacles" - "AR draggable Spectacles" - "Two-handed scale on Spectacles" - "Custom interactor SIK" - "PinchButton trigger event" - "Spectacles raycast interaction" - "Spectacles cursor" Don't load for: - General Lens Studio basics — see [[../snap-spectacles-build/SKILL]]. - Multiplayer / shared interactions — see [[../snap-spectacles-sync/SKILL]]. - Mobile controller pairing for non-interaction reasons — see [[../snap-spectacles-mobile-kit/SKILL]]. ## Decide first The architecture decisions before code: 1. **Near or far?** Direct-pinch is near (~5 cm from the Interactable's collider). Far interaction needs the cursor / gaze-driven ray. See [[references/hand-interactor]] and [[references/cursor-interactor]]. 2. **One hand or two?** Two-handed manipulation is supported but requires `InteractableManipulation` configured for two-handed. See [[references/manipulation]]. 3. **UI element source.** Build with SIK / UI Kit prefabs (Button, Toggle, Slider, Container) or write your own Interactable? Prefer prefabs first. 4. **Bubble-or-trickle.** SIK fires events down the scene-graph tree from ancestors to targets and back up — what catches the event? See [[references/event-cascading]]. ## Map of content ### Architecture - [[references/interaction-manager]] — the central manager and the bubble/trickle event flow. - [[references/event-cascading]] — how events propagate through ancestor Interactables. ### Interactors (input) - [[references/hand-interactor]] — direct-pinch and direct-poke; the near-field gesture model. - [[references/cursor-interactor]] — gaze-driven cursor for far interaction. - [[references/mobile-interactor]] — smartphone-as-controller, calibrated with Spectacles. - [[references/hand-visualization]] — visualising the user's hands in scene. ### Interactables (targets) - [[references/interactables]] — Interactable component, collider requirements, states (hover, trigger). - [[references/manipulation]] — InteractableManipulation: translate, scale, rotate, two-handed. - [[references/anchor-dynamics]] — anchor / pinning so UI stays where the user puts it. ### UI prefabs (composition) - [[references/ui-buttons]] — Button / PinchButton patterns and where the click really lands. - [[references/ui-toggles]] — Toggle component, state binding, accessibility. - [[references/ui-sliders]] — Slider and ScrollBar; the continuous-value pattern. - [[references/ui-containers]] — Container and ContainerFrame as the scene's UI organiser. ### Custom - [[references/custom-interactor]] — when prefabs aren't enough; writing your own. ## Verify Before claiming an interaction works: - [ ] Every Interactable has a Collider component sized for the target gesture. - [ ] Exactly one InteractionManager exists in the scene. - [ ] Hand-interactor and cursor-interactor (if both present) don't fight for the same Interactable — use raycast layers or priority. - [ ] Direct-pinch works within the Interactable's collider (≈5 cm range). - [ ] Event subscriptions are bound in `onAwake` / `onStart` and unbound in `onDestroy` / `onDisable`. - [ ] Tested with the actual hand pose, not just the editor mouse. - [ ] Two-handed manipulation (if used) is tested with both hands tracking. - [ ] The interaction is glanceable — see [[../../meta/meta-display-design/references/glanceable-principle]]. ## Smoke test If this skill loaded correctly, the agent should answer: 1. Why does an Interactable need a Collider component to receive events? (Expected: the Interactor raycasts against collider geometry; without a collider it can never be a hit; cites [[references/interactables]].) 2. What's the difference between direct-pinch and indirect-pinch? (Expected: direct-pinch fires within ~5 cm of the Interactable's collider; indirect routes through a raycast / cursor; cites [[references/hand-interactor]] and [[references/cursor-interactor]].) 3. Three reasons a pinch event might not fire on a properly-shaped Interactable. (Expected: collider too small / offset; no InteractionManager in scene; another Interactable ancestor is consuming the event in its bubble phase. Cites [[references/interactables]], [[references/interaction-manager]], [[references/event-cascading]].) ## Sibling skills - [[../snap-spectacles-build/SKILL]] — the Lens Studio basics this skill assumes. - [[../snap-spectacles-sync/SKILL]] — for multi-user / networked interactions. - [[../snap-spectacles-design/SKILL]] — the UX layer on top of these mechanics. ## Sources - SIK getting started — <https://developers.snap.com/spectacles/spectacles-frameworks/spectacles-interaction-kit/get-started> - SIK architecture — <https://developers.snap.com/spectacles/spectacles-frameworks/spectacles-interaction-kit/architecture> - SIK features overview — <https://developers.snap.com/spectacles/spectacles-frameworks/spectacles-interaction-kit/features/overview> - Interaction system — <https://developers.snap.com/spectacles/spectacles-frameworks/spectacles-interaction-kit/features/interactionsystem> - SIK release notes — <https://developers.snap.com/spectacles/spectacles-frameworks/spectacles-interaction-kit/release-notes> - Sample projects — <https://github.com/specs-devs/samples>
Auf GitHub ansehen