JMRSDK Development
v4.57
v4.57
  • Jio Mixed Reality SDK Documentation
    • Changelog
      • Upgrade Guide
    • Application Requirements
  • Device Information
    • JioGlass
    • JioDive
  • Supported Smartphones
  • Controller Specifications
    • Physical Controllers
    • External Gamepad
    • Virtual Controller
  • Getting Started
    • Development Platform
    • Setting Up Jio Mixed Reality Project in Unity
    • Video Tutorials
    • URP Support
      • Setting Up Your Project With URP
  • JMRSDK
    • JMRSDK Content
    • JMRMixedReality Prefab
    • System Dock
    • JMRRig
      • Local Rig
      • Setting Homepage (Quit functionality)
    • Webcast
  • Develop
    • Editor Emulator
    • JioGlass Controller Interactions
    • Cameras
    • Tesseract Mixed Reality UI Toolkits
    • In-app purchase
    • Examples
  • Interaction
    • Gaze Interaction
      • Gaze and Click
      • Gaze and Dwell
    • Interaction
      • Pointer Manager
        • Examples
      • Active Input Source
    • Interfaces
      • IFocusable
      • ISelectHandler
      • ISelectClickHandler
      • IBackHandler
      • IHomeHandler
      • IMenuHandler
      • IFn1Handler
      • IFn2Handler
      • ITouchHandler
      • ISwipeHandler
      • IManipulationHandler
    • Controller Input Actions
      • Touchpad - Touch
      • Touchpad - Swipe
      • Source Buttons
      • Manipulation
    • Actions
    • Device State
      • JioDive Device State
      • JioGlass Device State
      • Controller Device State
  • Tracking
    • Tracking
      • Coordinate System
    • Tracking Framework
      • TrackerManager Actions
        • Get Head Position
        • Get Head Rotation
        • Get Head Transform
      • TrackerManager Methods
        • Get Head Position
        • Get Head Rotation
        • Get Head Transform
    • Recenter
  • Building and Testing
    • Building to Target Device
      • Merging AndroidManifest
      • Performance Optimization
      • App optimization
    • Running your application
      • JioImmerse App For Jio Mixed Reality (JMR) Devices
      • Running the application
      • IPD Calibration
    • Licensing Journey In Android JioImmerse
    • Licensing Journey in iOS JioImmerse
  • Publish
    • Branding Guidelines
    • Signing your App
    • Publishing to Google Play Store
      • Play Store Upload Journey
    • Publishing to JioImmerse Developer Console
    • Publishing to Apple Store
    • iOS Deep linking
  • Capturing and Recording
    • Capture Videos and Screenshots
      • Capturing Screenshot/Videos using scrcpy
      • Capturing Screenshot/Videos using Vysor
  • Troubleshooting
    • FAQs - Develop
    • FAQs - Building to device
      • Gradle
      • FAQs - iOS
    • FAQs - Running and Publishing
    • Laser Point Not Visible
Powered by GitBook
On this page
  1. Interaction
  2. Gaze Interaction

Gaze and Dwell

Gaze and Dwell interaction uses your head movement as a pointer, and focusing on any object allows you to select any option in the application.

PreviousGaze and ClickNextInteraction

This feature is recommended for only a few applications where the objective is to explore the immersive environment with minimum interactions.

How to Implement Gaze and Dwell Interaction

  • Select the Pointer source and gaze mode from the editor inside the input manager.

  • Drag and drop JMRGazeInteractable.cs to use the default Gaze and Dwell features. For example, 3d objects,2d objects, UI elements, etc.; for more information, refer to the Example scene.

JMRGazeAndDwellInteraction script has been renamed to JMRGazeInteraction as it now functions with gaze and dwell with gaze and click as well.

Therefore all applications using gaze and dwell before JMRSDK 4.30 will get a missing component error in unity and will have to replace that component with JMRGazeInteraction.

  • To add custom behavior to dwell extent IDwellhandler Interface

    • OnDwellStart

    • OnDwellCancel

    • OnDwellCompleted

Gaze and dwell works on unity's scaled time scale, which means that interaction WILL get slower and faster with Time.timeScale. In the same way, if Time.timeScale is set to 0, Gaze and dwell will not be triggered.