Loading...
Loading...
Set up XR Interaction Toolkit (XRI) for VR/AR
npx skill4agent add besty0728/unity-skills unity-xrBefore calling any skill in this module: if you are about to call a skill with parameters guessed from its name or description, STOP — read this file (or fetch its schema via) first. If you already have the parameter definitions from recommend/schema, you may proceed straight to dryRun.GET /skills/recommend?includeSchema=true
xr_*Requires:. Hard rule: Read this file before the firstcom.unity.xr.interaction.toolkitcall in a session. Wrong property names can fail silently because the bridge is reflection-based.xr_*
xr_check_setupxr_get_scene_reportxr_list_interactorsxr_list_interactablesMODE_RESTRICTED/permission/grantRiskLevel="high"com.unity.xr.interaction.toolkitxr_*NoXRI()xr_configure_interactablexr_configure_hapticsxr_configure_interaction_layersAPI_REFERENCE.mdXRHandXRPlayerXRTeleporterGrabInteractorVRControllerXRLocomotionXRManagerinteractable.OnGrab()OnRelease()selectEnteredselectExitedcontroller.vibrate()xr_configure_hapticsInteractionLayerMaskAPI_REFERENCE.mdXRInteractionManagerXROriginXRRayInteractorXRDirectInteractorXRSocketInteractorXRGrabInteractableXRSimpleInteractableTeleportationProviderTeleportationAreaTeleportationAnchorContinuousMoveProviderSnapTurnProviderContinuousTurnProviderTrackedDeviceGraphicRaycasterXRUIInputModuleTrackedPoseDriveruiarchitecturepatternsasyncscriptdesignAPI_REFERENCE.md| Skill | Use | Key parameters |
|---|---|---|
| Validate XR package, rig, managers, and scene prerequisites | |
| Create XR Origin + camera + controllers | |
| Add or find manager | none |
| Replace/add XR UI input stack | none |
| Report scene-side XR status | none |
| Skill | Use | Key parameters |
|---|---|---|
| Remote pointing / ray interaction | |
| Close-range hand grab | |
| Snap-to slot | |
| Rigidbody + collider + grab config | |
| Hover/select without grab | |
| Fine-tune interactable behavior | target + changed fields only |
| List all scene interactors | none |
| List all scene interactables | none |
| Skill | Use | Key parameters |
|---|---|---|
| Add teleport provider to XR Origin | none |
| Mark a surface as teleportable | |
| Create fixed teleport destination | |
| Add stick locomotion | |
| Add snap or smooth turn | |
| Convert Canvas for XR interaction | |
| Skill | Use | Key parameters |
|---|---|---|
| Set hover/select vibration | |
| Wire interaction callback to target method | |
| Set InteractionLayerMask | |
import unity_skills as u
u.call_skill("xr_check_setup")
u.call_skill("xr_setup_rig", name="XR Origin")
u.call_skill("xr_add_ray_interactor", name="Right Controller")
u.call_skill("xr_add_direct_interactor", name="Left Controller")
u.call_skill("xr_setup_teleportation")
u.call_skill("xr_setup_turn_provider", turnType="Snap", turnAmount=45)
u.call_skill("xr_add_grab_interactable", name="MyCube", movementType="VelocityTracking")xr_check_setupxr_setup_rigxr_setup_event_systemxr_add_direct_interactorxr_add_grab_interactablexr_add_ray_interactorxr_add_grab_interactablexr_add_socket_interactormovementTypeVelocityTrackingKinematicInstantaneousxr_setup_teleportationxr_add_ray_interactorxr_add_teleport_areaxr_add_teleport_anchorxr_setup_continuous_movexr_setup_turn_provider~2.0 m/sxr_setup_ui_canvasxr_setup_event_system| Component | Collider required | | Recommended collider | Reason |
|---|---|---|---|---|
| Yes | True | SphereCollider ( | Overlap detection |
| No | - | None | Uses raycasts |
| Yes | True | SphereCollider ( | Snap zone |
| Yes | False | BoxCollider or convex MeshCollider | Physics + ray target |
| Yes | False | BoxCollider | Selection detection |
| Yes | False | MeshCollider or BoxCollider | Surface raycast target |
| Yes | False | Thin BoxCollider | Point raycast target |
XRGrabInteractableRigidbody| Topic | XRI 2.x | XRI 3.x |
|---|---|---|
| Main namespace style | root namespace | split sub-namespaces |
| Rig type | | |
| Locomotion core | | |
| Controller type | | |
| Bridge behavior | Reflection helper falls back automatically | Reflection helper prefers 3.x first |
XRInteractionManagerXROriginInteractionLayerMaskUpdate()import unity_skills as u
u.call_skill("xr_setup_rig", name="XR Origin", cameraYOffset=1.36)
u.call_skill("xr_setup_event_system")
u.call_skill("xr_add_ray_interactor", name="Right Controller", maxDistance=30, lineType="StraightLine")
u.call_skill("xr_add_grab_interactable", name="Tool", movementType="VelocityTracking", throwOnDetach=True)
u.call_skill("xr_configure_haptics", name="Right Controller", selectIntensity=0.7, selectDuration=0.15)GET /skills/schemaunity_skills.get_skill_schema()API_REFERENCE.md