Device, method and graphical user interface for interacting with a three-dimensional environment

The computer system addresses inefficiencies in virtual and augmented reality interactions by using advanced input devices and interfaces to reduce user inputs and conserve power, enhancing usability and privacy.

JP2025534284APending Publication Date: 2025-10-15APPLE INC
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
JP2025517683
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-09-18
Filing Date
2023-09-20
Publication Date
2025-10-15

AI Technical Summary

Technical Problem

Existing methods for interacting with virtual and augmented reality environments are cumbersome, inefficient, and place a significant cognitive burden on users, requiring multiple inputs and being error-prone, which also wastes energy, particularly in battery-operated devices.

Method used

A computer system with improved methods and interfaces that reduce the number, extent, and type of user inputs by using input devices such as touch-sensitive displays, eye-tracking, hand-tracking, and rotary mechanisms, allowing for intuitive interactions and efficient transitions between immersive and non-immersive modes, and enabling features like automatic session resumption and input registration resets.

Benefits of technology

Enhances user interaction efficiency, reduces errors, conserves power, and improves device usability by minimizing inputs and maintaining focus on shared applications, while also providing secure and private operation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025534284000001_ABST
    Figure 2025534284000001_ABST
Patent Text Reader

Abstract

While displaying the application user interface, the device detects a first input to an input device of one or more input devices, the input device being provided on a housing of the device including one or more display generating components. In response to detecting the first input, the device replaces the display of at least a portion of the application user interface by displaying a home menu user interface via the one or more display generating components. While displaying the home menu user interface, the device detects a second input to an input device provided on the housing of the device, and in response to detecting the second input to the input device provided on the housing of the device, the device closes the home menu user interface.
Need to check novelty before this filing date? Find Prior Art

Description

Related Applications

[0001] This application is a continuation of U.S. Patent Application No. 18 / 369,628, filed September 18, 2023, and claims priority to U.S. Patent Application No. 18 / 369,502, filed September 18, 2023, U.S. Patent Application No. 18 / 369,459, filed September 18, 2023, U.S. Patent Application No. 18 / 369,462, filed September 18, 2023, U.S. Provisional Patent Application No. 63 / 470,921, filed June 4, 2023, and U.S. Provisional Patent Application No. 63 / 409,748, filed September 24, 2022. [Technical Field]

[0002] The present disclosure generally relates to a computer system in communication with a display generation component and one or more input devices that provide a computer-generated experience, including, but not limited to, electronic devices that provide virtual reality and mixed reality experiences via a display. [Background technology]

[0003] The development of computer systems for augmented reality has progressed significantly in recent years. Exemplary augmented reality environments include at least some virtual elements that replace or augment the physical world. Input devices such as cameras, controllers, joysticks, touch-sensitive surfaces, and touchscreen displays for computer systems and other electronic computing devices are used to interact with the virtual / augmented reality environment. Exemplary virtual elements include virtual objects such as digital images, video, text, icons, and control elements such as buttons and other graphics. Summary of the Invention

[0004] Some methods and interfaces for interacting with environments that include at least some virtual elements (e.g., applications, extended reality environments including augmented reality environments, mixed reality environments, and virtual reality environments) are cumbersome, inefficient, and limited. For example, systems that provide insufficient means or mechanisms for performing actions associated with navigating within an extended reality environment, systems that require a series of inputs to achieve a desired result in the extended reality environment, and systems in which manipulation of virtual objects is complex, tedious, and error-prone impose a significant cognitive burden on the user and detract from the experience of the virtual / augmented reality environment. In addition, these methods are unnecessarily time-consuming, thereby wasting computer system energy. This latter consideration is particularly important in battery-operated devices.

[0005] Therefore, there is a need for a computer system having improved methods and interfaces for providing users with computer-generated experiences that make interaction with the computer system more efficient and intuitive for the user. Such methods and interfaces can optionally complement or replace conventional methods of providing users with extended reality experiences. Such methods and interfaces reduce the number, extent, and / or type of inputs from the user by helping the user understand the connection between the input provided and the device response to that input, thereby creating a more efficient human-machine interface.

[0006] The above-mentioned drawbacks and other problems associated with user interfaces of computer systems are reduced or eliminated by the disclosed system. In some embodiments, the computer system is a desktop computer with an associated display. In some embodiments, the computer system is a portable device (e.g., a notebook computer, a tablet computer, or a handheld device). In some embodiments, the computer system is a personal electronic device (e.g., a wearable electronic device such as a wristwatch or a head-mounted device). In some embodiments, the computer system has a touchpad. In some embodiments, the computer system has one or more cameras. In some embodiments, the computer system has a touch-sensitive display (also known as a "touch screen" or "touchscreen display"). In some embodiments, the computer system has one or more eye-tracking components. In some embodiments, the computer system has one or more hand-tracking components. In some embodiments, the computer system has one or more output devices in addition to the display generating components, the output devices including one or more tactile output generators and / or one or more audio output devices. In some embodiments, the computer system has a graphical user interface (GUI), one or more processors, memory, and one or more modules, programs, or instruction sets stored in the memory for performing a plurality of functions. In some embodiments, a user interacts with the GUI through stylus and / or finger contacts and gestures on a touch-sensitive surface, the movement of the user's eyes and hands in space relative to the GUI (and / or computer system) or the user's body as captured by cameras and other movement sensors, and / or voice input as captured by one or more audio input devices.In some embodiments, the functions performed through the interactions optionally include image editing, drawing, presenting, word processing, creating spreadsheets, playing games, making phone calls, video conferencing, emailing, instant messaging, training support, digital photography, digital videography, web browsing, playing digital music, note taking, and / or playing digital videos, and executable instructions to perform those functions are optionally contained in a transient and / or non-transitory computer-readable storage medium or other computer program product configured to be executed by one or more processors.

[0007] There is a need for electronic devices with improved methods and interfaces for interacting with three-dimensional environments. Such methods and interfaces can complement or replace conventional methods for interacting with three-dimensional environments. Such methods and interfaces reduce the number, extent, and / or type of inputs from a user, creating a more efficient human-machine interface. For battery-operated computing devices, such methods and interfaces conserve power and increase the time between battery charges.

[0008] According to some embodiments, the method is performed on a device that includes or is in communication with one or more display generating components and one or more input devices. The method includes detecting a first input to one of the one or more input devices, the input device being provided on a housing of the device that includes the one or more display generating components, while displaying an application user interface via the one or more display generating components, and replacing the display of at least a portion of the application user interface by displaying a home menu user interface via the one or more display generating components in response to detecting the first input to the input device provided on the housing of the device. The method includes detecting a second input to the input device provided on the housing of the device while displaying the home menu user interface via the one or more display generating components, and closing the home menu user interface in response to detecting the second input to the input device provided on the housing of the device.

[0009] According to some embodiments, the method is performed on a computer system including or in communication with a display generation component and one or more input devices. The method includes detecting a first input to an input device of the one or more input devices while displaying an application user interface via the display generation component, and in response to detecting the first input to the input device, in accordance with a determination that the application user interface is in a first display mode, the first display mode comprising an immersive mode in which only content of the application user interface is displayed, displaying, via the display generation component, the application user interface in a second display mode, the second display mode comprising a non-immersive mode in which individual content of the application user interface and other content are simultaneously displayed, and replacing display of at least a portion of the application user interface by displaying, via the display generation component, a home menu user interface in accordance with a determination that the application user interface is in the second display mode.

[0010] According to some embodiments, the method is performed on a computer system including or in communication with a display generation component and one or more input devices, the method including: detecting a first input to one of the one or more input devices while displaying an application user interface of the application via the display generation component; in response to detecting the first input to the input device, displaying a home menu user interface via the display generation component; maintaining display of at least a portion of the application user interface while displaying the home menu user interface in accordance with a determination that the application is currently being shared in a content sharing session in which content of the application is simultaneously visible to multiple participants in the content sharing session; and ceasing display of the application user interface in accordance with a determination that the application is not being shared in the content sharing session.

[0011] According to some embodiments, the method is performed in a computer system including or in communication with a display generation component and one or more input devices. The method includes, while the computer system is operating, detecting a first input of a first type of input via an input device of the one or more input devices, the first type of input being determined based on a location and / or movement of a first biometric feature, and performing a first action according to the first input in response to detecting the first input via the input device. The action is determined at least in part by first input registration information from a previous input registration process for the first type of input. After performing the first action according to the first input, the method includes detecting a second input of a second type of input via an input device of the one or more input devices, and initiating a process for input registration for the first type of input in response to detecting the second input.

[0012] According to some embodiments, the method is performed on a computer system including or in communication with a display generation component and one or more input devices. The method includes detecting a first input on a rotatable input mechanism of an input device of the one or more input devices. In response to detecting the first input on the rotatable input mechanism, the method includes altering an immersion level associated with a display of an extended reality (XR) environment generated by the display generation component in accordance with a determination that the first input is a first type of input to a first immersion level in which the display of the XR environment simultaneously includes virtual content from an application and a pass-through portion of the computer system's physical environment. The method includes performing an operation different from altering the immersion level associated with the display of the XR environment in accordance with a determination that the first input is a second type of input.

[0013] According to some embodiments, the method is performed on a wearable device that includes or is in communication with a display generating component and one or more input devices. The method includes detecting a first signal indicating that the wearable device has been removed while an individual session is active in an individual application and the wearable device is being worn, and deactivating the individual session of the individual application in response to detecting the first signal. The method also includes detecting a second signal indicating that the wearable device is being worn while the individual application is inactive, and in response to detecting the second signal, resuming the individual session of the individual application in accordance with a determination that respective criteria have been met, and refraining from resuming the individual session of the individual application in accordance with a determination that the respective criteria have not been met, each of the criteria including criteria that are met when a current user of the wearable device is determined to be an authorized user of the wearable device.

[0014] According to some embodiments, the method is performed on a computer system including or in communication with one or more display generation components and one or more input devices. The method includes detecting a first input directed to a first input device of the one or more input devices while configuration of the computer system is being performed, the computer system including one or more sensors that detect inputs including one or more of air gestures and eye gaze inputs. The method further includes, in response to detecting the first input to the first input device, displaying a menu including a plurality of selectable options for configuring one or more interaction models.

[0015] It should be noted that the various embodiments described above can be combined with any other embodiment described herein. The features and advantages described herein are not exhaustive, and many additional features and advantages will become apparent to those skilled in the art, particularly in light of the drawings, specification, and claims. Furthermore, it should be noted that the language used in this specification has been selected solely for the purposes of readability and explanation, and not to define or limit the subject matter of the present invention. [Brief explanation of the drawings]

[0016] For a better understanding of the various described embodiments, reference should be made to the following Detailed Description of the Invention in conjunction with the following drawings, in which like reference numerals refer to corresponding parts throughout:

[0017] [Figure 1A] FIG. 1 is a block diagram illustrating an operating environment for a computer system for providing an extended reality (XR) experience, according to some embodiments.

[0018] [Figure 1B] 1B is an example of a computer system for providing an XR experience in the operating environment of FIG. 1A. [Figure 1C]1B is an example of a computer system for providing an XR experience in the operating environment of FIG. 1A. [Figure 1D] 1B is an example of a computer system for providing an XR experience in the operating environment of FIG. 1A. [Figure 1E] 1B is an example of a computer system for providing an XR experience in the operating environment of FIG. 1A. [Figure 1F] 1B is an example of a computer system for providing an XR experience in the operating environment of FIG. 1A. [Figure 1G] 1B is an example of a computer system for providing an XR experience in the operating environment of FIG. 1A. [Figure 1H] 1B is an example of a computer system for providing an XR experience in the operating environment of FIG. 1A. [Figure 1I] 1B is an example of a computer system for providing an XR experience in the operating environment of FIG. 1A. [Figure 1J] 1B is an example of a computer system for providing an XR experience in the operating environment of FIG. 1A. [Figure 1K] 1B is an example of a computer system for providing an XR experience in the operating environment of FIG. 1A. [Figure 1L] 1B is an example of a computer system for providing an XR experience in the operating environment of FIG. 1A. [Figure 1M] 1B is an example of a computer system for providing an XR experience in the operating environment of FIG. 1A. [Figure 1N] 1B is an example of a computer system for providing an XR experience in the operating environment of FIG. 1A. [Figure 1O] 1B is an example of a computer system for providing an XR experience in the operating environment of FIG. 1A. [Figure 1P] 1B is an example of a computer system for providing an XR experience in the operating environment of FIG. 1A.

[0019] [Figure 2]FIG. 1 is a block diagram illustrating a controller of a computer system configured to manage and coordinate a user's XR experience, according to some embodiments.

[0020] [Figure 3] FIG. 1 is a block diagram illustrating display generation components of a computer system configured to provide a user with visual components of an XR experience, according to some embodiments.

[0021] [Figure 4] FIG. 1 is a block diagram illustrating a hand tracking unit of a computer system configured to capture a user's gesture input, according to some embodiments.

[0022] [Figure 5] FIG. 1 is a block diagram illustrating an eye-tracking unit of a computer system configured to capture a user's gaze input, according to some embodiments.

[0023] [Figure 6] FIG. 1 is a flow diagram illustrating a glint-assisted gaze tracking pipeline, according to some embodiments.

[0024] [Figure 7A] 1 illustrates an exemplary technique for displaying a home menu user interface within a three-dimensional environment, according to some embodiments. [Figure 7B] 1 illustrates an exemplary technique for displaying a home menu user interface within a three-dimensional environment, according to some embodiments. [Figure 7C1] 1 illustrates an exemplary technique for displaying a home menu user interface within a three-dimensional environment, according to some embodiments. [Figure 7C2] 1 illustrates an exemplary technique for displaying a home menu user interface within a three-dimensional environment, according to some embodiments. [Figure 7C3]1 illustrates an exemplary technique for displaying a home menu user interface within a three-dimensional environment, according to some embodiments. [Figure 7D] 1 illustrates an exemplary technique for displaying a home menu user interface within a three-dimensional environment, according to some embodiments. [Figure 7E] 1 illustrates an exemplary technique for displaying a home menu user interface within a three-dimensional environment, according to some embodiments. [Figure 7F] 1 illustrates an exemplary technique for displaying a home menu user interface within a three-dimensional environment, according to some embodiments. [Figure 7G] 1 illustrates an exemplary technique for displaying a home menu user interface within a three-dimensional environment, according to some embodiments. [Figure 7H] 1 illustrates an exemplary technique for displaying a home menu user interface within a three-dimensional environment, according to some embodiments. [Figure 7I] 1 illustrates an exemplary technique for displaying a home menu user interface within a three-dimensional environment, according to some embodiments. [Figure 7J] 1 illustrates an exemplary technique for displaying a home menu user interface within a three-dimensional environment, according to some embodiments. [Figure 7K] 1 illustrates an exemplary technique for displaying a home menu user interface within a three-dimensional environment, according to some embodiments. [Figure 7L] 1 illustrates an exemplary technique for displaying a home menu user interface within a three-dimensional environment, according to some embodiments. [Figure 7M] 1 illustrates an exemplary technique for displaying a home menu user interface within a three-dimensional environment, according to some embodiments. [Figure 7N] 1 illustrates an exemplary technique for displaying a home menu user interface within a three-dimensional environment, according to some embodiments. [Figure 7O]1 illustrates an exemplary technique for displaying a home menu user interface within a three-dimensional environment, according to some embodiments.

[0025] [Figure 8A] 1 illustrates an exemplary technique for performing different actions based on input to an input device depending on the current display mode, according to some embodiments. [Figure 8B] 1 illustrates an exemplary technique for performing different actions based on input to an input device depending on the current display mode, according to some embodiments. [Figure 8C1] 1 illustrates an exemplary technique for performing different actions based on input to an input device depending on the current display mode, according to some embodiments. [Figure 8C2] 1 illustrates an exemplary technique for performing different actions based on input to an input device depending on the current display mode, according to some embodiments. [Figure 8C3] 1 illustrates an exemplary technique for performing different actions based on input to an input device depending on the current display mode, according to some embodiments. [Figure 8D] 1 illustrates an exemplary technique for performing different actions based on input to an input device depending on the current display mode, according to some embodiments. [Figure 8E] 1 illustrates an exemplary technique for performing different actions based on input to an input device depending on the current display mode, according to some embodiments. [Figure 8F] 1 illustrates an exemplary technique for performing different actions based on input to an input device depending on the current display mode, according to some embodiments. [Figure 8G] 1 illustrates an exemplary technique for performing different actions based on input to an input device depending on the current display mode, according to some embodiments.

[0026] [Figure 9A]1 illustrates an exemplary technique for performing one or more different actions based on input to an input device depending on characteristics of a displayed application user interface, according to some embodiments. [Figure 9B1] 1 illustrates an exemplary technique for performing one or more different actions based on input to an input device depending on characteristics of a displayed application user interface, according to some embodiments. [Figure 9B2] 1 illustrates an exemplary technique for performing one or more different actions based on input to an input device depending on characteristics of a displayed application user interface, according to some embodiments. [Figure 9B3] 1 illustrates an exemplary technique for performing one or more different actions based on input to an input device depending on characteristics of a displayed application user interface, according to some embodiments. [Figure 9C] 1 illustrates an exemplary technique for performing one or more different actions based on input to an input device depending on characteristics of a displayed application user interface, according to some embodiments. [Figure 9D] 1 illustrates an exemplary technique for performing one or more different actions based on input to an input device depending on characteristics of a displayed application user interface, according to some embodiments.

[0027] [Figure 10A] 1 illustrates an example technique for resetting an input registration process, according to some embodiments. [Figure 10B1] 1 illustrates an example technique for resetting an input registration process, according to some embodiments. [Figure 10B2] 1 illustrates an example technique for resetting an input registration process, according to some embodiments. [Figure 10B3] 1 illustrates an example technique for resetting an input registration process, according to some embodiments. [Figure 10C]1 illustrates an example technique for resetting an input registration process, according to some embodiments. [Figure 10D] 1 illustrates an example technique for resetting an input registration process, according to some embodiments.

[0028] [Figure 11A] 1 illustrates an exemplary technique for adjusting the immersion level of a user's extended reality (XR) experience within a three-dimensional environment, according to some embodiments. [Figure 11B1] 1 illustrates an exemplary technique for adjusting the immersion level of a user's extended reality (XR) experience within a three-dimensional environment, according to some embodiments. [Figure 11B2] 1 illustrates an exemplary technique for adjusting the immersion level of a user's extended reality (XR) experience within a three-dimensional environment, according to some embodiments. [Figure 11B3] 1 illustrates an exemplary technique for adjusting the immersion level of a user's extended reality (XR) experience within a three-dimensional environment, according to some embodiments. [Figure 11C] 1 illustrates an exemplary technique for adjusting the immersion level of a user's extended reality (XR) experience within a three-dimensional environment, according to some embodiments. [Figure 11D] 1 illustrates an exemplary technique for adjusting the immersion level of a user's extended reality (XR) experience within a three-dimensional environment, according to some embodiments. [Figure 11E] 1 illustrates an exemplary technique for adjusting the immersion level of a user's extended reality (XR) experience within a three-dimensional environment, according to some embodiments. [Figure 11F] 1 illustrates an exemplary technique for adjusting the immersion level of a user's extended reality (XR) experience within a three-dimensional environment, according to some embodiments.

[0029] [Figure 12A]1 illustrates an exemplary technique for controlling a computer system based on the physical position and changes in physical position of the computer system relative to a user, and the state of the computer system, according to some embodiments. [Figure 12B1] 1 illustrates an exemplary technique for controlling a computer system based on the physical position and changes in physical position of the computer system relative to a user, and the state of the computer system, according to some embodiments. [Figure 12C1] 1 illustrates an exemplary technique for controlling a computer system based on the physical position and changes in physical position of the computer system relative to a user, and the state of the computer system, according to some embodiments. [Figure 12B2] 1 illustrates an exemplary technique for controlling a computer system based on the physical position and changes in physical position of the computer system relative to a user, and the state of the computer system, according to some embodiments. [Figure 12C2] 1 illustrates an exemplary technique for controlling a computer system based on the physical position and changes in physical position of the computer system relative to a user, and the state of the computer system, according to some embodiments. [Figure 12D1] 1 illustrates an exemplary technique for controlling a computer system based on the physical position and changes in physical position of the computer system relative to a user, and the state of the computer system, according to some embodiments. [Figure 12E1] 1 illustrates an exemplary technique for controlling a computer system based on the physical position and changes in physical position of the computer system relative to a user, and the state of the computer system, according to some embodiments. [Figure 12D2] 1 illustrates an exemplary technique for controlling a computer system based on the physical position and changes in physical position of the computer system relative to a user, and the state of the computer system, according to some embodiments. [Figure 12E2] 1 illustrates an exemplary technique for controlling a computer system based on the physical position and changes in physical position of the computer system relative to a user, and the state of the computer system, according to some embodiments. [Figure 12F1] 1 illustrates an exemplary technique for controlling a computer system based on the physical position and changes in physical position of the computer system relative to a user, and the state of the computer system, according to some embodiments. [Figure 12G1] 1 illustrates an exemplary technique for controlling a computer system based on the physical position and changes in physical position of the computer system relative to a user, and the state of the computer system, according to some embodiments. [Figure 12F2] 1 illustrates an exemplary technique for controlling a computer system based on the physical position and changes in physical position of the computer system relative to a user, and the state of the computer system, according to some embodiments. [Figure 12G2] 1 illustrates an exemplary technique for controlling a computer system based on the physical position and changes in physical position of the computer system relative to a user, and the state of the computer system, according to some embodiments.

[0030] [Figure 13] FIG. 1 is a flow diagram of a method for displaying a home menu user interface within a three-dimensional environment, according to various embodiments.

[0031] [Figure 14] FIG. 1 is a flow diagram of a method for performing different actions based on input to an input device depending on the current display mode, according to various embodiments.

[0032] [Figure 15]FIG. 1 is a flow diagram of a method for performing one or more different actions based on input to an input device depending on characteristics of a displayed application user interface, according to various embodiments.

[0033] [Figure 16] FIG. 10 is a flow diagram of a method for resetting a biometric input enrollment process, according to various embodiments.

[0034] [Figure 17] FIG. 1 is a flow diagram of a method for adjusting the immersion level of a user's extended reality (XR) experience within a three-dimensional environment, according to various embodiments.

[0035] [Figure 18] FIG. 1 is a flow diagram of a method for controlling a computer system based on the physical positioning and changes in the physical position of the computer system relative to a user and the state of the computer system, according to various embodiments.

[0036] [Figure 19A] 1 illustrates an exemplary technique for navigating accessibility menus during system configuration, according to some embodiments. [Figure 19B] 1 illustrates an exemplary technique for navigating accessibility menus during system configuration, according to some embodiments. [Figure 19C1] 1 illustrates an exemplary technique for navigating accessibility menus during system configuration, according to some embodiments. [Figure 19C2] 1 illustrates an exemplary technique for navigating accessibility menus during system configuration, according to some embodiments. [Figure 19C3] 1 illustrates an exemplary technique for navigating accessibility menus during system configuration, according to some embodiments. [Figure 19D] 1 illustrates an exemplary technique for navigating accessibility menus during system configuration, according to some embodiments. [Figure 19E] 1 illustrates an exemplary technique for navigating accessibility menus during system configuration, according to some embodiments. [Figure 19F] 1 illustrates an exemplary technique for navigating accessibility menus during system configuration, according to some embodiments. [Figure 19G] 1 illustrates an exemplary technique for navigating accessibility menus during system configuration, according to some embodiments. [Figure 19H] 1 illustrates an exemplary technique for navigating accessibility menus during system configuration, according to some embodiments. [Figure 19I] 1 illustrates an exemplary technique for navigating accessibility menus during system configuration, according to some embodiments. [Figure 19J] 1 illustrates an exemplary technique for navigating accessibility menus during system configuration, according to some embodiments. [Figure 19K] 1 illustrates an exemplary technique for navigating accessibility menus during system configuration, according to some embodiments. [Figure 19L] 1 illustrates an exemplary technique for navigating accessibility menus during system configuration, according to some embodiments. [Figure 19M] 1 illustrates an exemplary technique for navigating accessibility menus during system configuration, according to some embodiments. [Figure 19N] 1 illustrates an exemplary technique for navigating accessibility menus during system configuration, according to some embodiments. [Figure 19O] 1 illustrates an exemplary technique for navigating accessibility menus during system configuration, according to some embodiments. [Figure 19P] 1 illustrates an exemplary technique for navigating accessibility menus during system configuration, according to some embodiments.

[0037] [Figure 20] FIG. 1 is a flow diagram of a method for navigating an accessibility menu during system configuration, according to some embodiments. DETAILED DESCRIPTION OF THE INVENTION

[0038] The present disclosure relates to a user interface that provides an extended reality (XR) experience to a user, according to some embodiments.

[0039] The systems, methods, and GUIs described herein improve user interface interaction with virtual / augmented reality environments in several ways.

[0040] In some embodiments, the device allows a user to gain access to different collections of representations without displaying additional controls using a single input to an input device (e.g., provided on the housing of one or more display generating components, through which portions of the physical and virtual environments are visually rendered). The use of a single input to an input device reduces the amount of time required to navigate within or transition from the virtual environment. The physical location of the input device provides an intuitive and reliable mechanism (e.g., haptic touch / mechanical actuation mechanism) for receiving user input, which improves the reliability and operational efficiency of the device (e.g., computer system).

[0041] In some embodiments, a single input to an input device transitions the computer system from a high immersion level (e.g., a fully immersive mode in which only the content of an individual application is displayed) to a less immersive or non-immersive mode, or from a non-immersive mode to a mode in which a home menu user interface is also displayed, providing intuitive top-level access to different collections of representations when the user is in a non-immersive experience without displaying additional controls (e.g., without requiring the user to navigate user interface elements), thereby increasing the operational efficiency of user-machine interaction based on a single input. The use of a single input to an input device reduces the amount of time required to navigate within or transition from a virtual environment.

[0042] In some embodiments, a single input to an input device maintains the display of the application user interface(s) of one or more shared applications while ceasing to display the application user interface(s) of one or more private applications, helping to reduce the amount of disruption users may experience during a group interaction session. By closing one or more private applications while continuing to display the shared application in response to a single input, users can focus on the shared application without having to display additional controls. Furthermore, the number of inputs required to close private applications and maintain the display of shared applications is reduced; instead of having to individually minimize or close one or more private applications, a single input is sufficient to maintain the display of one or more shared applications while ceasing to display one or more private applications.

[0043] In some embodiments, the second type of input initializes a biometric input registration reset for the first type of input, allowing more precise and accurate input registration information to be used for calibration and / or performing operations based on the first type of input. Instead of having the user navigate through user interface elements (e.g., menus or other control elements) using the first type of input to reset the input registration for the first type of input (e.g., the first type of input may need to be reset due to inaccurate calibration, making it difficult to use the inaccurately calibrated first type of input to navigate interface control elements), using the second type of input to initialize the input registration improves operational efficiency, reduces user frustration, and reduces the number of inputs required to initialize the input registration reset process. The use of the second type of input to reset the input registration also helps reduce the amount of time required to initiate the input registration reset process. For example, the use of the second type of input allows the input registration reset to be initialized without displaying additional controls (e.g., navigating user interface elements using the first type of input).

[0044] In some embodiments, a single input device accepts two or more different types of input, reducing the number of separate input devices that must be provided to request and / or direct different functions. The use of a rotary input mechanism allows the user to provide a continuous range of inputs, and the bidirectional nature of the rotary input mechanism allows the input to be easily and intuitively changed in either direction without the need to display additional controls to the user. The same rotary input mechanism can receive a second type of input that achieves a separate function. Reducing the number of input devices that need to be provided reduces physical interruptions on the device, freeing up more physical space on the device and helping to prevent accidental inputs from inadvertent contact. The use of a rotary input mechanism provides direct access to varying levels of immersion and the performance of different actions, reducing the amount of time required to produce a particular result, thereby improving the operating efficiency of the computer system. Increasing the level of immersion helps remove constraints within the computer system's physical environment (e.g., a more spacious virtual environment is realistically simulated by blocking sensory out-input from the physical environment (e.g., blocking visual input in a confined room and / or removing (audio) echo from a small physical space)), providing a virtual environment that is more conducive to the user interacting with the application.

[0045] In some embodiments, using the respective criteria to determine whether to automatically resume an individual session of an individual application allows the individual session to be resumed without active user input and without displaying additional controls. Using the respective criteria causes the device to automatically resume the individual session when the respective criteria are met, providing a more efficient human-machine interface for the wearable device, which provides a more efficient way for the user to control the wearable device while minimizing interruptions or requiring the user to navigate additional control elements before the individual session can be resumed. Determining whether the current user of the wearable device is an authorized user of the wearable device provides improved security and / or privacy by ensuring that an individual session of an individual application is resumed only when an authorized user is detected.

[0046] In some embodiments, while configuration of the computer system is being performed, the computer system detects a first input directed to a first input device of the one or more input devices, the computer system including one or more sensors that detect input including one or more of an air gesture and an eye gaze input, and in response to detecting the first input to the first input device, displays a menu including a plurality of selectable options for configuring one or more interaction models. Providing (e.g., displaying and / or reading out) a menu of options for different interaction models with the computer system during configuration of the computer system (e.g., during initial setup of the computer system) allows a user to select in advance their preferred way of interacting with the computer system, including a way that is more intuitive to the user, in order to subsequently reduce the number and / or extent of inputs and / or the amount of time required to interact with the computer system, particularly to use an interaction model different from the default and allow a user who otherwise needs assistance to use the computer system to only need one-time assistance (e.g., at the beginning of initialization of the computer system) to set up the computer system with an interaction model appropriate for the user, so that the user can later use the computer system independently.

[0047] FIGS. 1A-6 provide a description of an exemplary computer system for providing an XR experience to a user. FIGS. 7A-7O illustrate an exemplary technique for displaying a home menu user interface within a three-dimensional environment, according to some embodiments. FIG. 13 is a flow diagram (also referred to as a flowchart) of a method for displaying a home menu user interface within a three-dimensional environment, according to various embodiments. The user interfaces of FIGS. 7A-7O are used to illustrate the process of FIG. 13. FIGS. 8A-8G illustrate an exemplary technique for performing different actions based on input to an input device depending on the current display mode, according to some embodiments. FIG. 14 is a flow diagram of a method for performing different actions based on input to an input device depending on the current display mode, according to various embodiments. The user interfaces of FIGS. 8A-8G are used to illustrate the process of FIG. 14. FIGS. 9A-9D illustrate an exemplary technique for performing one or more different actions based on input to an input device depending on characteristics of a displayed application user interface, according to some embodiments. FIG. 15 is a flow diagram of a method for performing one or more different actions based on input to an input device depending on characteristics of a displayed application user interface, according to various embodiments. The user interfaces of Figures 9A-9D are used to illustrate the process of Figure 15. Figures 10A-10D show an exemplary technique for resetting the input registration process, according to some embodiments. Figure 16 is a flow diagram of a method for resetting the input registration process, according to various embodiments. The user interfaces of Figures 10A-10D are used to illustrate the process of Figure 16. Figures 11A-11F show an exemplary technique for adjusting the immersion level of a user's extended reality (XR) experience in a three-dimensional environment, according to some embodiments. Figure 17 is a flow diagram of a method for adjusting the immersion level of a user's extended reality (XR) experience in a three-dimensional environment, according to various embodiments. The user interfaces of Figures 9A-9D are used to illustrate the process of Figure 17.Figures 12A-12G show exemplary techniques for controlling a computer system based on the physical position of the computer system relative to a user, changes in the physical position, and the state of the computer system, according to some embodiments. Figure 18 is a flow diagram of a method for controlling a computer system based on the physical position of the computer system relative to a user, changes in the physical position, and the state of the computer system, according to various embodiments. The user interfaces of Figures 12A-12G are used to illustrate the process of Figure 18. Figures 19A-19P show exemplary techniques for navigating an accessibility menu during system configuration, according to some embodiments. Figure 20 is a flow diagram of a method for navigating an accessibility menu during system configuration, according to some embodiments. The user interfaces of Figures 19A-19P are used to illustrate the process of Figure 20.

[0048] The processes described below enhance device usability and make user-device interfaces more efficient (e.g., by helping users provide appropriate inputs and reducing user errors when operating / interacting with the device) through various techniques, including providing improved visual feedback to the user, reducing the number of inputs required to perform an action, providing additional control options without cluttering the user interface with additional controls, performing an action without requiring further user input when a set of conditions is met, improving privacy and / or security, providing a more diverse, detailed, and / or realistic user experience while saving storage space, and / or additional techniques. These techniques also reduce power usage and improve device battery life by allowing users to use the device more quickly and efficiently. Saving battery power, and therefore weight, improves device ergonomics. These techniques also enable real-time communication and the use of fewer and / or less accurate sensors, resulting in more compact, lighter, and less expensive devices, and allowing devices to be used in a variety of lighting conditions. These techniques reduce energy use and thereby reduce the heat given off by the device, which is particularly important for wearable devices where a device that is well within the operating parameters for the device components may become uncomfortable for the user to wear if it is generating too much heat.

[0049] Furthermore, for methods described herein in which one or more steps are conditioned on one or more conditions being satisfied, it should be understood that the described method can be repeated in multiple iterations, such that over the course of the iterations, all of the conditions on which the method steps are conditioned are satisfied in different iterations of the method. For example, if a method requires performing a first step if a condition is satisfied and a second step if the condition is not satisfied, one skilled in the art will understand that the steps recited in the claim are repeated in a particular order until the conditions are satisfied and then no longer satisfied. Thus, a method described with one or more steps that depend on one or more conditions being satisfied can be rewritten as a method that is repeated until each condition recited in the method is satisfied. However, this is not required for system or computer-readable medium claims in which the system or computer-readable medium includes instructions for performing a conditional action based on the satisfaction of the corresponding one or more conditions, and thus can determine whether a contingency is met without explicitly repeating the method steps until all conditions on which the method steps are conditioned are satisfied. Those skilled in the art will also understand that, as with methods having conditional steps, the system or computer-readable storage medium may repeat the steps of the method as many times as necessary to ensure that all of the conditional steps have been performed.

[0050] 1A, an XR experience is provided to a user via an operating environment 100 that includes a computer system 101. The computer system 101 includes a controller 110 (e.g., a processor of a portable electronic device or a remote server), a display generation component 120 (e.g., a head-mounted device (HMD), a display, a projector, or a touchscreen), one or more input devices 125 (e.g., an eye-tracking device 130, a hand-tracking device 140, or other input devices 150), one or more output devices 155 (e.g., a speaker 160, a tactile output generator 170, and other output devices 180), one or more sensors 190 (e.g., an image sensor, a light sensor, a depth sensor, a tactile sensor, an orientation sensor, a proximity sensor, a temperature sensor, a location sensor, a motion sensor, or a velocity sensor), and optionally one or more peripheral devices 195 (e.g., a consumer electronics device or a wearable device). In some embodiments, one or more of input device 125, output device 155, sensor 190, and peripheral device 195 are integrated with display generation component 120 (e.g., within a head-mounted or handheld device).

[0051] When describing an XR experience, various terms are used to individually refer to several related, but distinct, environments that a user can sense and / or interact with (e.g., using inputs detected by the computer system 101 generating the XR experience that cause the computer system generating the XR experience to generate audio, visual, and / or haptic feedback corresponding to various inputs provided to the computer system 101). The following is a subset of these terms:

[0052] Physical Environment: The physical environment refers to the physical world that people can sense and / or interact with without the aid of electronic systems. A physical environment, such as a physical park, includes physical objects such as physical trees, physical buildings, and physical people. People can directly sense and / or interact with the physical environment through their senses, such as sight, touch, hearing, taste, and smell.

[0053] Extended reality: In contrast, an extended reality (XR) environment refers to a wholly or partially simulated environment that people sense and / or interact with through electronic systems. In XR, a subset of a person's body movements or representations thereof are tracked, and one or more properties of one or more virtual objects simulated within the XR environment are adjusted accordingly to behave according to at least one law of physics. For example, an XR system may detect a person's head rotation and adjust the graphical content and sound field presented to the person accordingly, in a manner similar to how such views and sounds change in a physical environment. In some circumstances (e.g., for accessibility reasons), adjustment of a property(ies) of a virtual object(ies) in an XR environment may occur in response to a representation of body motion (e.g., a voice command). A person may sense and / or interact with an XR object using any one of these senses, including sight, hearing, touch, taste, and smell. For example, a person may sense and / or interact with audio objects that create a 3D or spatial audio environment that provides the perception of a point audio source in 3D space. In another example, audio objects may enable audio transparency that selectively incorporates ambient sounds from the physical environment, with or without computer-generated audio. In some XR environments, a person may sense and / or interact with only audio objects.

[0054] Examples of XR include virtual reality and mixed reality.

[0055] Virtual Reality: A virtual reality (VR) environment refers to a simulated environment designed to be based entirely on computer-generated sensory input for one or more senses. A VR environment includes multiple virtual objects that a person can sense and / or interact with. For example, computer-generated images of trees, buildings, and avatars representing people are examples of virtual objects. A person can sense and / or interact with virtual objects in a VR environment through a simulation of the person's presence in the computer-generated environment and / or through a simulation of a subset of the person's physical movement within the computer-generated environment.

[0056] Mixed reality: A mixed reality (MR) environment refers to a simulated environment designed to incorporate sensory input from or representations of a physical environment in addition to including computer-generated sensory input (e.g., virtual objects), as opposed to a VR environment designed to be based entirely on computer-generated sensory input. On a virtual continuum, a mixed reality environment is anywhere between, but not including, a complete physical environment at one end and a virtual reality environment at the other. In some MR environments, computer-generated sensory input may respond to changes in sensory input from the physical environment. Some electronic systems for presenting MR environments may also track location and / or orientation relative to the physical environment to allow virtual objects to interact with real objects (i.e., physical items from the physical environment or representations thereof). For example, the system may take into account movement so that a virtual tree appears stationary relative to the physical ground.

[0057] Examples of mixed reality include augmented reality and augmented virtuality.

[0058] Augmented reality: An augmented reality (AR) environment refers to a simulated environment in which one or more virtual objects are superimposed on a physical environment or a representation thereof. For example, an electronic system for presenting an AR environment may have a transparent or translucent display through which a person can directly view the physical environment. The system may be configured to present virtual objects on the transparent or translucent display, whereby a person using the system perceives the virtual objects superimposed on the physical environment. Alternatively, the system may have an opaque display and one or more imaging sensors that capture images or videos of the physical environment that are representations of the physical environment. The system composites the images or videos with the virtual objects and presents the composite on the opaque display. The person uses the system to indirectly view the physical environment through the images or videos of the physical environment and perceive the virtual objects superimposed on the physical environment. As used herein, video of a physical environment shown on an opaque display is referred to as “pass-through video,” meaning that the system captures images of the physical environment using one or more image sensors and uses those images in presenting the AR environment on the opaque display. Alternatively, the system may include a projection system that projects virtual objects, e.g., as holograms, into the physical environment or onto a physical surface, such that a person using the system perceives the virtual objects superimposed on the physical environment. Augmented reality environments also refer to simulated environments in which a representation of the physical environment is transformed by computer-generated sensory information. For example, when providing pass-through video, the system may distort one or more sensor images to impose a selected perspective (e.g., viewpoint) different from that captured by the imaging sensor. As another example, the representation of the physical environment may be distorted by graphically modifying (e.g., enlarging) portions thereof, such that the modified portions become altered versions that represent the originally captured images but are non-photorealistic. As a further example, the representation of the physical environment may be distorted by graphically removing or obscuring portions thereof.

[0059] Augmented Virtuality: An augmented virtuality (AV) environment refers to a simulated environment in which a virtual or computer-generated environment incorporates one or more sensory inputs from a physical environment. The sensory inputs may be representations of one or more characteristics of the physical environment. For example, an AV park may have virtual trees and virtual buildings, while people with faces are realistically recreated from images taken of physical people. As another example, virtual objects may adopt the shape or color of physical items imaged by one or more imaging sensors. As a further example, virtual objects may adopt shadows that match the position of the sun in the physical environment.

[0060] In an augmented reality, mixed reality, or virtual reality environment, a view of a three-dimensional environment is visible to a user. The view of the three-dimensional environment is typically visible to a user via one or more display generating components (e.g., a display or pair of display modules providing stereoscopic content to different eyes of the same user) through a virtual viewport having a viewport boundary that defines the extent of the three-dimensional environment visible to the user via the one or more display generating components. In some embodiments, the area defined by the viewport boundary is smaller in one or more dimensions than the user's field of view (e.g., based on the user's field of view, the size, optical properties, or other physical characteristics of the one or more display generating components, and / or the location and / or orientation of the one or more display generating components relative to the user's eyes). In some embodiments, the area defined by the viewport boundary is larger in one or more dimensions than the user's field of view (e.g., based on the user's field of view, the size, optical properties, or other physical characteristics of the one or more display generating components, and / or the location and / or orientation of the one or more display generating components relative to the user's eyes). The viewport and viewport boundaries typically move as one or more display-generating components move (e.g., with the user's head in the case of a head-mounted device, or with the user's hands in the case of a handheld device such as a tablet or smartphone). The user's viewpoint determines what content is visible within the viewport; the viewpoint generally specifies a location and orientation relative to the three-dimensional environment; as the viewpoint shifts, the view of the three-dimensional environment also shifts within the viewport. In the case of a head-mounted device, the viewpoint is typically based on the location and orientation of the user's head, face, and / or eyes to provide a view of the three-dimensional environment that is perceptually accurate and provides an immersive experience when the user is using the head-mounted device.In the case of a handheld or stationary device, the viewpoint shifts as the handheld or stationary device is moved and / or as the user's position relative to the handheld or stationary device changes (e.g., as the user moves toward, away from, above, below, to the right of, and / or to the left of the device). In the case of a device that includes a display generation component with virtual pass-through, the portion of the physical environment that is visible (e.g., displayed and / or projected) through one or more display generation components is based on the field of view of one or more cameras in communication with the display generation components, which typically move with the display generation components (e.g., move with the user's head in the case of a head-mounted device, or move with the user's hands in the case of a handheld device such as a tablet or smartphone), as the user's viewpoint moves as the field of view of the one or more cameras moves (and the appearance of one or more virtual objects displayed through the one or more display generation components is updated based on the user's viewpoint (e.g., the displayed position and pose of the virtual objects are updated based on the movement of the user's viewpoint)). For display generating components that have an optical pass-through, the portions of the physical environment that are visible through one or more display generating components (e.g., optically visible through one or more partially or fully transparent portions of the display generating components) are based on the user's field of view through the partially or fully transparent portions of the display generating components (e.g., move with the user's head in the case of a head-mounted device, or move with the user's hand in the case of a handheld device such as a tablet or smartphone), as the user's viewpoint moves (and the appearance of one or more virtual objects is updated based on the user's viewpoint) as the user's field of view through the partially or fully transparent portion(s) of the display generating components moves.

[0061] In some embodiments, a representation of the physical environment (e.g., displayed via a virtual pass-through or optical pass-through) can be partially or completely obscured by the virtual environment. In some embodiments, the amount of the virtual environment that is displayed (e.g., the amount of the physical environment that is not displayed) is based on the immersion level of the virtual environment (e.g., relative to the representation of the physical environment). For example, increasing the immersion level optionally causes more of the virtual environment to be displayed, replacing and / or obscuring more of the physical environment, and decreasing the immersion level optionally causes less of the virtual environment to be displayed, revealing portions of the physical environment that were not previously displayed and / or obscured. In some embodiments, at a particular immersion level, one or more first background objects (e.g., in the representation of the physical environment) are visually less highlighted (e.g., dimmed, blurred, and / or displayed with increased transparency) than one or more second background objects, and one or more third background objects are discontinued. In some embodiments, the immersion level includes the relative extent to which the virtual content (e.g., the virtual environment and / or virtual content) displayed by the computer system obscures background content (e.g., content other than the virtual environment and / or virtual content) around / behind the virtual content, and optionally includes the number of items of background content displayed and / or the visual characteristics (e.g., color, contrast, and / or opacity) with which the background content is displayed, the angular range of the virtual content displayed via the display generating components (e.g., 60-degree content displayed at low immersion, 120-degree content displayed at medium immersion, or 180-degree content displayed at high immersion), and / or the percentage of the field of view displayed via the display generating components that is consumed by the virtual content (e.g., 33% of the field of view consumed by the virtual content at low immersion, 66% of the field of view consumed by the virtual content at medium immersion, or 100% of the field of view consumed by the virtual content at high immersion). In some embodiments, the background content is included in the background against which the virtual content is displayed (e.g., background content within a representation of the physical environment).In some embodiments, background content includes user interfaces (e.g., user interfaces generated by a computer system corresponding to an application), virtual objects (e.g., files or representations of other users generated by a computer system) that are not associated with or included in the virtual environment and / or virtual content, and / or real objects (e.g., pass-through objects that represent real objects in the physical environment around the user that are visible as displayed through the display generating components and / or that are visible through transparent or translucent components of the display generating components because the computer system does not obscure / prevent their visibility through the display generating components). In some embodiments, at a low immersion level (e.g., a first immersion level), background, virtual, and / or real objects are displayed in an unobscured manner. For example, a virtual environment at a low immersion level is optionally displayed simultaneously with background content, and the background content is optionally displayed at full brightness, color, and / or translucency. In some embodiments, at a higher immersion level (e.g., a second immersion level higher than the first immersion level), background, virtual, and / or real objects are displayed in an obscured manner (e.g., dimmed, blurred, or removed from the display). For example, a separate virtual environment having a high immersion level is displayed without simultaneously displaying background content (e.g., in full screen or fully immersive mode). As another example, a virtual environment displayed at an intermediate immersion level is simultaneously displayed with dimmed, blurred, or otherwise de-highlighted background content. In some embodiments, the visual characteristics of the background objects differ among the background objects. For example, at a particular immersion level, one or more first background objects are visually less highlighted (e.g., dimmed, blurred, and / or displayed with increased transparency) than one or more second background objects, and one or more third background objects are discontinued.In some embodiments, a null or zero level of immersion corresponds to ceasing to display the virtual environment, and instead displaying a representation of the physical environment (optionally along with one or more virtual objects, such as applications, windows, or virtual three-dimensional objects), without the representation of the physical environment being obscured by the virtual environment. Adjusting the immersion level using physical input elements provides a fast and efficient way to adjust immersion, improving usability of computer systems and making user-device interfaces more efficient.

[0062] Perspective-Locked Virtual Object: A virtual object is perspective-locked when the computer system displays the virtual object in the same location and / or position within the user's perspective, even as the user's perspective shifts (e.g., changes). In embodiments in which the computer system is a head-mounted device, the user's perspective is locked to the forward-facing orientation of the user's head (e.g., the user's perspective is at least a portion of the user's field of view when the user is looking straight ahead). Thus, the user's perspective remains fixed even as the user's line of sight moves without moving the user's head. In embodiments in which the computer system has a display generating component (e.g., a display screen) that can be repositioned relative to the user's head, the user's perspective is the augmented reality view being presented to the user on the display generating component of the computer system. For example, a perspective-locked virtual object that is displayed in the upper left corner of the user's perspective when the user's perspective is in a first orientation (e.g., the user's head is facing north) will continue to be displayed in the upper left corner of the user's perspective even if the user's perspective changes to a second orientation (e.g., the user's head is facing west). In other words, the location and / or position at which a viewpoint-locked virtual object is displayed in a user's viewpoint is independent of the user's position and / or orientation in the physical environment. In embodiments in which the computer system is a head-mounted device, the user's viewpoint is locked to the orientation of the user's head, such that the virtual object is also referred to as a "head-locked virtual object."

[0063] Environment-Locked Virtual Object: A virtual object is environment-locked (or "world-locked") when a computer system displays the virtual object at a location and / or position within a user's viewpoint that is based on (e.g., selected with reference to and / or anchored to) locations and / or objects within a three-dimensional environment (e.g., a physical environment or a virtual environment). As the user's viewpoint shifts, the locations and / or objects within the environment relative to the user's viewpoint change, resulting in the environment-locked virtual object appearing at a different location and / or position within the user's viewpoint. For example, an environment-locked virtual object locked to a tree directly in front of the user will appear centered within the user's viewpoint. If the user's viewpoint shifts to the right (e.g., the user's head is turned to the right) and the tree becomes more left-leaning in the user's viewpoint (e.g., the position of the tree in the user's viewpoint shifts), the environment-locked virtual object locked to the tree will appear more left-leaning in the user's viewpoint. In other words, the location and / or position at which the environment-locked virtual object appears within the user's viewpoint depends on the position and / or orientation of the location and / or object in the environment to which the virtual object is locked. In some embodiments, the computer system uses a stationary reference frame (e.g., a coordinate system fixed to a fixed location and / or object in the physical environment) to determine a position at which to display an environment-locked virtual object in the user's viewpoint. The environment-locked virtual object can be locked to a stationary portion of the environment (e.g., a floor, wall, table, or other stationary object) or can be locked to a moving portion of the environment (e.g., a vehicle, an animal, a person, or a representation of a part of the user's body that moves independent of the user's viewpoint, such as the user's hand, wrist, arm, or leg), so that the virtual object moves as the viewpoint or part of the environment moves in order to maintain a fixed relationship between the virtual object and the part of the environment.

[0064] In some embodiments, an environment-locked or viewpoint-locked virtual object exhibits delayed-following behavior, which reduces or delays the movement of the environment-locked or viewpoint-locked virtual object relative to the movement of a reference point that the virtual object is following. In some embodiments, when exhibiting delayed-following behavior, the computer system intentionally delays the movement of the virtual object when it detects movement of the reference point that the virtual object is following (e.g., a part of the environment, the viewpoint, or a point fixed relative to the viewpoint, such as a point between 5 and 300 cm from the viewpoint). For example, when the reference point (e.g., a part of the environment or the viewpoint) moves at a first speed, the virtual object is moved by the device to remain locked to the reference point, but at a second speed that is slower than the first speed (e.g., until the reference point stops or slows down, at which point the virtual object begins to catch up with the reference point). In some embodiments, when the virtual object exhibits delayed-following behavior, the device ignores small amounts of movement of the reference point (e.g., ignores movement of the reference point that is less than a threshold amount of movement, such as movement between 0 and 5 degrees or movement between 0 and 50 cm). For example, when the reference point (e.g., a portion of the environment or a viewpoint to which the virtual object is locked) moves by a first amount, the distance between the reference point and the virtual object increases (e.g., because the virtual object is displayed to maintain a fixed or substantially fixed position relative to a viewpoint or portion of the environment different from the reference point to which the virtual object is locked), and when the reference point (e.g., a portion of the environment or a viewpoint to which the virtual object is locked) moves by a second amount greater than the first amount, the distance between the reference point and the virtual object initially increases (e.g., because the virtual object is displayed to maintain a fixed or substantially fixed position relative to a viewpoint or portion of the environment different from the reference point to which the virtual object is locked), and then decreases as the amount of movement of the reference point increases beyond a threshold (e.g., a “delayed following” threshold) as the virtual object is moved by the computer system to maintain a fixed or substantially fixed position relative to the reference point.In some embodiments, a virtual object maintaining a substantially fixed position relative to a reference point includes the virtual object being displayed within a threshold distance (e.g., 1, 2, 3, 5, 15, 20, 50 cm) of the reference point in one or more dimensions (e.g., above / below, left / right, and / or forward / backward relative to the position of the reference point).

[0065] Hardware: There are many different types of electronic systems that allow a person to sense and / or interact with various XR environments. Examples include head-mounted systems, projection-based systems, head-up displays (HUDs), vehicle windshields with integrated display capabilities, windows with integrated display capabilities, displays formed as lenses designed to be placed over a person's eyes (e.g., contact lenses), headphones / earphones, speaker arrays, input systems (e.g., wearable or handheld controllers with or without haptic feedback), smartphones, tablets, and desktop / laptop computers. A head-mounted system may have one or more speaker(s) and an integrated opaque display. Alternatively, a head-mounted system may be configured to accept an external opaque display (e.g., a smartphone). A head-mounted system may incorporate one or more imaging sensors for capturing images or video of the physical environment and / or one or more microphones for capturing audio of the physical environment. A head-mounted system may have a transparent or translucent display rather than an opaque display. A transparent or translucent display may have a medium through which light representing an image is directed toward a person's eyes. The display may utilize digital light projection, OLED, LED, uLED, liquid crystal on silicon, laser-scanned light source, or any combination of these technologies. The medium may be a light guide, a holographic medium, an optical combiner, an optical reflector, or any combination thereof. In one embodiment, the transparent or translucent display may be configured to be selectively opaque. A projection-based system may employ retinal projection technology that projects graphical images onto a person's retina. The projection system may also be configured to project virtual objects into the physical environment, for example, as holograms or onto physical surfaces. In some embodiments, the controller 110 is configured to manage and coordinate the XR experience for the user.In some embodiments, controller 110 includes a suitable combination of software, firmware, and / or hardware. Controller 110 is described in more detail below with reference to FIG. 2. In some embodiments, controller 110 is a computing device that is local or remote to scene 105 (e.g., the physical environment). For example, controller 110 is a local server located within scene 105. In another example, controller 110 is a remote server (e.g., a cloud server or a central server) located outside scene 105. In some embodiments, controller 110 is communicatively coupled to display generation component 120 (e.g., an HMD, a display, a projector, or a touchscreen) via one or more wired or wireless communication channels 144 (e.g., BLUETOOTH, IEEE 802.11x, IEEE 802.16x, or IEEE 802.3x). In another example, the controller 110 is contained within the housing (e.g., physical housing) of one or more of the display generating component 120 (e.g., an HMD or a portable electronic device including a display and one or more processors), one or more of the input devices 125, one or more of the output devices 155, one or more of the sensors 190, and / or one or more of the peripheral devices 195, or shares the same physical housing or support structure as one or more of the foregoing.

[0066] In some embodiments, display generation component 120 is configured to provide an XR experience (e.g., at least a visual component of the XR experience) to a user. In some embodiments, display generation component 120 includes a suitable combination of software, firmware, and / or hardware. Display generation component 120 is described in more detail below with reference to FIG. 3. In some embodiments, the functionality of controller 110 is provided by and / or combined with display generation component 120.

[0067] According to some embodiments, the display generation component 120 provides an XR experience to the user while the user is virtually and / or physically present in the scene 105.

[0068] In some embodiments, the display generating component is worn on a part of the user's body (e.g., the user's head or the user's hand). Thus, display generating component 120 includes one or more XR displays provided for displaying XR content. For example, in various embodiments, display generating component 120 surrounds the user's field of view. In some embodiments, display generating component 120 is a handheld device (such as a smartphone or tablet) configured to present XR content, where the user holds the device with a display pointed toward the user's field of view and a camera pointed toward scene 105. In some embodiments, the handheld device is optionally located within a housing worn on the user's head. In some embodiments, the handheld device is optionally located on a support (e.g., a tripod) in front of the user. In some embodiments, display generating component 120 is an XR chamber, housing, or room configured to present XR content without the user wearing or holding display generating component 120. Many user interfaces described with reference to one type of hardware for displaying XR content (e.g., a handheld device or a device on a tripod) may be implemented on another type of hardware for displaying XR content (e.g., an HMD or other wearable computing device). For example, a user interface illustrating interactions with XR content that are triggered based on interactions occurring in the space in front of a handheld or tripod-mounted device may be implemented similarly to an HMD in which the interactions occur in the space in front of the HMD and the XR content responses are displayed via the HMD. Similarly, a user interface illustrating interactions with XR content that are triggered based on movement of a handheld or tripod-mounted device relative to the physical environment (e.g., scene 105 or a part of the user's body (e.g., the user's eye(s), head, or hands)) may be implemented similarly to an HMD in which the movement is caused by movement of the HMD relative to the physical environment (e.g., scene 105 or a part of the user's body (e.g., the user's eye(s), head, or hands)).

[0069] While relevant features of operating environment 100 are shown in FIG. 1A, those skilled in the art will understand from this disclosure that various other features are not shown for the sake of brevity and so as not to obscure more relevant aspects of the exemplary embodiments disclosed herein.

[0070] 1A-1P illustrate various examples of computer systems used to perform the present methods and provide audio, visual, and / or haptic feedback as part of the user interfaces described herein. In some embodiments, the computer system optionally includes one or more display generation components (e.g., first and second display assemblies 1-120a, 1-120b and / or first and second optical modules 11.1.1-104a and 11.1.1-104b) for displaying representations of virtual elements and / or the physical environment to a user of the computer system, generated based on detected events and / or user input detected by the computer system. The user interface generated by the computer system is optionally corrected by one or more corrective lenses 11.3.2-216, optionally removably attached to one or more of the optical modules, allowing the user interface to be more easily viewed by users who otherwise correct their vision using glasses or contacts. While many user interfaces shown herein show a single view of the user interface, the user interface in the HMD is optionally displayed using two optical modules (e.g., first and second display assemblies 1-120a, 1-120b and / or first and second optical modules 11.1.1-104a and 11.1.1-104b), one for the user's right eye and a different one for the user's left eye, with slightly different images presented to the two different eyes to create the illusion of stereoscopic depth, and the single view of the user interface is typically either a right-eye or left-eye view, and the depth effect is explained in text or using other schematic diagrams or views.In some embodiments, the computer system includes one or more external displays (e.g., display assembly 1-108) for displaying status information of the computer system to a user of the computer system (when the computer system is not attached) and / or other people near the computer system, optionally generated based on detected events and / or user input detected by the computer system. In some embodiments, the computer system includes one or more audio output components (e.g., electronic components 1-112) for generating audio feedback, optionally generated based on detected events and / or user input detected by the computer system. In some embodiments, the computer system includes one or more input devices for detecting inputs, such as one or more sensors (e.g., sensor assembly 1-356 and / or one or more sensors in FIG. 1I) for detecting information about the physical environment of a device that can be used (optionally in conjunction with one or more illuminators, such as the illuminators described in FIG. 1I) to generate a digital pass-through image, capture visual media (e.g., photographs and / or videos) corresponding to the physical environment, or determine the pose (e.g., position and / or orientation) of physical objects and / or surfaces within the physical environment, so that virtual objects can be positioned based on the detected pose of the physical objects and / or surfaces. In some embodiments, the computer system includes one or more input devices for detecting input, such as one or more sensors for detecting hand position and / or movement (e.g., sensor assembly 1-356 and / or one or more sensors in FIG. 1I), which can be used (optionally in conjunction with one or more illuminators, such as illuminator 6-124 shown in FIG. 1I) to determine when one or more air gestures are performed.In some embodiments, the computer system includes one or more input devices for detecting input, such as one or more sensors for detecting eye movement (e.g., the eye tracking and gaze tracking sensors of FIG. 1I ), which may be used (optionally in conjunction with one or more lights, such as light 11.3.2-110 of FIG. 1O ) to determine attention or gaze position and / or gaze movement, which may optionally be used to detect gaze-only input based on gaze movement and / or dwell. A combination of the various sensors described above may be used to determine a user's facial expressions and / or hand movements for use in generating an avatar or representation of the user, such as an anthropomorphic avatar or representation for use in a real-time communication session, the avatar having facial expressions, hand movements, and / or body movements based on or similar to the detected facial expressions, hand movements, and / or body movements of the user of the device. Gaze and / or attention information is optionally combined with hand tracking information to determine interactions between the user and one or more user interfaces based on direct and / or indirect inputs, such as air gestures or inputs using one or more hardware input devices, such as one or more buttons (e.g., first button 1-128, button 11.1.1-114, second button 1-132, and / or dial or button 1-328), knobs (e.g., first button 1-128, button 11.1.1-114, and / or dial or button 1-328), digital crowns (e.g., pressable and twistable or rotatable first button 1-128, button 11.1.1-114, and / or dial or button 1-328), trackpads, touchscreens, keyboards, mice, and / or other input devices.One or more buttons (e.g., first button 1-128, button 11.1.1-114, second button 1-132, and / or dial or button 1-328) are optionally used to perform system operations such as re-centering content within the three-dimensional environment visible to the device user, displaying a home user interface for launching an application, initiating a real-time communication session, or initiating the display of a virtual three-dimensional background. The knob or digital crown (e.g., a first button 1-128, button 11.1.1-114, and / or a dial or button 1-328 that is depressible and twistable or rotatable) is optionally rotatable to adjust parameters of the visual content, such as the immersion level of the virtual three-dimensional environment (e.g., the degree to which the virtual content occupies the user's viewport into the three-dimensional environment), or other parameters associated with the three-dimensional environment and the virtual content displayed via the optical modules (e.g., first and second display assemblies 1-120a, 1-120b and / or first and second optical modules 11.1.1-104a and 11.1.1-104b).

[0071] 1B shows a front, top, and perspective view of an example head-mounted display (HMD) device 1-100 configured to be worn by a user and provide a virtual and altered / mixed reality (VR / AR) experience. The HMD 1-100 can include a display unit 1-102 or assembly, an electronic strap assembly 1-104 connected to and extending from the display unit 1-102, and a band assembly 1-106 secured at either end to the electronic strap assembly 1-104. The electronic strap assembly 1-104 and band 1-106 can be part of a retention assembly configured to wrap around a user's head to hold the display unit 1-102 against the user's face.

[0072] In at least one example, the band assembly 1-106 can include a first band 1-116 configured to wrap around the back of the user's head and a second band 1-117 configured to extend over the top of the user's head. The second strap can extend between the first electronic strap 1-105a and the second electronic strap 1-105b of the electronic strap assembly 1-104, as shown. The strap assembly 1-104 and the band assembly 1-106 can be part of a fastening mechanism that extends rearward from the display unit 1-102 and is configured to hold the display unit 1-102 against the user's face.

[0073] In at least one example, the anchoring mechanism includes a first electronics strap 1-105a including a first proximal end 1-134 coupled to the display unit 1-102, e.g., a housing 1-150 of the display unit 1-102, and a first distal end 1-136 opposite the first proximal end 1-134. The anchoring mechanism can also include a second electronics strap 1-105b including a second proximal end 1-138 coupled to the housing 1-150 of the display unit 1-102, and a second distal end 1-140 opposite the second proximal end 1-138. The anchoring mechanism can also include a first band 1-116 including a first end 1-142 coupled to the first distal end 1-136 and a second end 1-144 coupled to the second distal end 1-140, and a second band 1-117 extending between the first electronic strap 1-105a and the second electronic strap 1-105b. The straps 1-105a-b and the band 1-116 can be coupled via a connection mechanism or assembly 1-114. In at least one example, the second band 1-117 includes a first end 1-146 coupled to the first electronic strap 1-105a between a first proximal end 1-134 and a first distal end 1-136, and a second end 1-148 coupled to the second electronic strap 1-105b between a second proximal end 1-138 and a second distal end 1-140.

[0074] In at least one example, the first and second electronic straps 1-105a-b include plastic, metal, or other structural material that forms the shape of the substantially rigid straps 1-105a-b. In at least one example, the first and second bands 1-116, 1-117 are formed from a resilient, flexible material including woven fabric, rubber, etc. The first and second bands 1-116, 1-117 can be flexible to conform to the shape of a user's head when wearing the HMD 1-100.

[0075] In at least one example, one or more of the first and second electronic straps 1-105a-b can define an internal strap volume and can include one or more electronic components disposed within the internal strap volume. In one example, as shown in FIG. 1B, the first electronic strap 1-105a can include an electronic component 1-112. In one example, the electronic component 1-112 can include a speaker. In one example, the electronic component 1-112 can include a computing component such as a processor.

[0076] In at least one example, the housing 1-150 defines a first, front-facing opening 1-152. The front-facing opening is labeled 1-152 with a dotted line in FIG. 1B because the display assembly 1-108 is positioned to block the first opening 1-152 from view when the HMD 1-100 is assembled. The housing 1-150 may also define a rear-facing, second opening 1-154. The housing 1-150 also defines an interior volume between the first opening 1-152 and the second opening 1-154. In at least one example, the HMD 1-100 includes a display assembly 1-108, which may include a front cover and a display screen (shown in other figures) disposed within or across the front opening 1-152 to block the front opening 1-152. In at least one example, the display screen of the display assembly 1-108, as well as the entire display assembly 1-108, has a curvature configured to follow the curvature of the user's face. The display screen of the display assembly 1-108 can curve to complement the user's facial features and the overall curvature from one side of the face to the other, e.g., from left to right and / or top to bottom when the display unit 1-102 is pressed, as shown.

[0077] In at least one example, the housing 1-150 can define a first aperture 1-126 between the first opening 1-152 and the second opening 1-154, and a second aperture 1-130 between the first opening 1-152 and the second opening 1-154. The HMD 1-100 can also include a first button 1-128 disposed in the first aperture 1-126 and a second button 1-132 disposed in the second aperture 1-130. The first and second buttons 1-128, 1-132 can be depressible through the respective apertures 1-126, 1-130. In at least one example, the first button 1-126 and / or the second button 1-132 can be twistable dials and depressible buttons. In at least one example, the first button 1-128 is a depressible and twistable dial button, and the second button 1-132 is a depressible button.

[0078] FIG. 1C shows a rear perspective view of the HMD 1-100. The HMD 1-100 can include a light seal 1-110 extending rearward from the housing 1-150 of the display assembly 1-108 around the periphery of the housing 1-150, as shown. The light seal 1-110 can be configured to extend from the housing 1-150 to the user's face around the user's eyes to block external light from being seen. In one example, the HMD 1-100 can include first and second display assemblies 1-120a, 1-120b disposed at or within a rearward-facing second opening 1-154 defined by the housing 1-150 and / or disposed within the interior volume of the housing 1-150 and configured to project light through the second opening 1-154. In at least one example, each display assembly 1-120a-b can include a respective display screen 1-122a, 1-122b configured to project light in a rearward direction through the second opening 1-154 toward the user's eyes.

[0079] In at least one example, with reference to both FIG. 1B and FIG. 1C , the display assembly 1-108 can be a front-facing display assembly including a display screen configured to project light in a first, forward direction, and the rear-facing display screens 1-122a-b can be configured to project light in a second, rearward direction opposite the first direction. As described above, the light seal 1-110 can be configured to block light external to the HMD 1-100, including light projected by the front-facing display screen of the display assembly 1-108 shown in the front perspective view of FIG. 1B, from reaching the user's eyes. In at least one example, the HMD 1-100 can also include a curtain 1-124 blocking a second opening 1-154 between the housing 1-150 and the rear-facing display assemblies 1-120a-b. In at least one example, the curtain 1-124 can be elastic or at least partially elastic.

[0080] Any of the features, components, and / or parts, including their arrangements and configurations, shown in Figures 1B and 1C, either alone or in any combination, may be included in any of the other example devices, features, components, and parts shown in Figures 1D-1F and described herein. Similarly, any of the features, components, and / or parts, including their arrangements and configurations, shown and described with reference to Figures 1D-1F, either alone or in any combination, may be included in the example devices, features, components, and parts shown in Figures 1B and 1C.

[0081] 1D shows an exploded view of an example of an HMD 1-200 including various portions or components separated according to modularity and selective coupling of those components. For example, the HMD 1-200 can include a band 1-216 that can be selectively coupled to first and second electronic straps 1-205a, 1-205b. The first anchoring strap 1-205a can include a first electronic component 1-212a, and the second anchoring strap 1-205b can include a second electronic component 1-212b. In at least one example, the first and second straps 1-205a-b can be removably coupled to the display unit 1-202.

[0082] Additionally, the HMD 1-200 may include a light seal 1-210 configured to be removably coupled to the display unit 1-202. The HMD 1-200 may also include lenses 1-218 that may be removably coupled to the display unit 1-202, for example, on first and second display assemblies including a display screen. The lenses 1-218 may include customized prescription lenses configured for vision correction. As noted, each component shown in the exploded view of FIG. 1D and described above may be removably coupled, attached, reattached, or interchangeable to update or replace components for different users. For example, bands such as band 1-216, light seals such as light seal 1-210, lenses such as lens 1-218, and electronic straps such as straps 1-205a-b may be interchangeable depending on the user, such that these components are customized to fit and accommodate individual users of the HMD 1-200.

[0083] Any of the features, components, and / or parts, including their arrangement and configuration, shown in Figure 1D, either alone or in any combination, may be included in any of the other example devices, features, components, and parts shown in Figures 1B, 1C, and 1E-1F and described herein. Similarly, any of the features, components, and / or parts, including their arrangement and configuration, shown and described with reference to Figures 1B, 1C, and 1E-1F, either alone or in any combination, may be included in the example devices, features, components, and parts shown in Figure 1D.

[0084] 1E shows an exploded view of an example display unit 1-306 of an HMD. The display unit 1-306 may include a front display assembly 1-308, a frame / housing assembly 1-350, and a curtain assembly 1-324. The display unit 1-306 may also include a sensor assembly 1-356, a logic board assembly 1-358, and a cooling assembly 1-360 disposed between the frame assembly 1-350 and the front display assembly 1-308. In at least one example, the display unit 1-306 may also include a rear-facing display assembly 1-320 including first and second rear-facing display screens 1-322a, 1-322b disposed between the frame 1-350 and the curtain assembly 1-324.

[0085] In at least one example, the display unit 1-306 can also include a motor assembly 1-362 configured as an adjustment mechanism for adjusting the position of the display screens 1-322a-b of the display assembly 1-320 relative to the frame 1-350. In at least one example, the display assembly 1-320 is mechanically coupled to the motor assemblies 1-362 with at least one motor for each display screen 1-322a-b such that the motors can translate the display screens 1-322a-b to match the interpupillary distance of a user's eyes.

[0086] In at least one example, the display unit 1-306 can include a dial or button 1-328 that is depressible relative to the frame 1-350 and accessible to a user outside of the frame 1-350. The button 1-328 can be electronically connected to the motor assembly 1-362 via a controller such that a user can operate the button 1-328 to cause motors in the motor assembly 1-362 to adjust the position of the display screen 1-322a-b.

[0087] Any of the features, components, and / or parts, including their arrangement and configuration, shown in Figure 1E, either alone or in any combination, may be included in any of the other example devices, features, components, and parts shown in Figures 1B-1D and 1F and described herein. Similarly, any of the features, components, and / or parts, including their arrangement and configuration, shown and described with reference to Figures 1B-1D and 1F, either alone or in any combination, may be included in the example devices, features, components, and parts shown in Figure 1E.

[0088] 1F shows an exploded view of another example display unit 1-406 of an HMD device similar to other HMD devices described herein. The display unit 1-406 can include a forward display assembly 1-402, a sensor assembly 1-456, a logic board assembly 1-458, a cooling assembly 1-460, a frame assembly 1-450, a rear-facing display assembly 1-421, and a curtain assembly 1-424. The display unit 1-406 can also include a motor assembly 1-462 for adjusting the position of first and second display subassemblies 1-420a, 1-420b of the rear-facing display assembly 1-421, including respective first and second display screens for interpupillary adjustment, as described above.

[0089] The various components, systems, and assemblies shown in the exploded view of Figure 1F are described in more detail herein with reference to Figures 1B-1E and subsequent figures referenced in this disclosure. The display unit 1-406 shown in Figure 1F can be assembled and integrated with the fastening mechanisms shown in Figures 1B-1E, including electronic straps, bands, and other components including light seals, connection assemblies, etc.

[0090] Any of the features, components, and / or parts, including their arrangement and configuration, shown in Figure 1F, either alone or in any combination, may be included in any of the other example devices, features, components, and parts shown in Figures 1B-1E and described herein. Similarly, any of the features, components, and / or parts, including their arrangement and configuration, shown and described with reference to Figures 1B-1E, either alone or in any combination, may be included in the example devices, features, components, and parts shown in Figure 1F.

[0091] FIG. 1G illustrates a perspective exploded view of a front cover assembly 3-100 of an HMD device described herein, such as the front cover assembly 3-1 of the HMD 3-100 shown in FIG. 1G, or any other HMD device illustrated and described herein. The front cover assembly 3-100 shown in FIG. 1G can include a transparent or translucent cover 3-102, a shroud 3-104 (or "canopy"), an adhesive layer 3-106, a display assembly 3-108 including a lenticular lens panel or array 3-110, and structural trim 3-112. The adhesive layer 3-106 can adhere the shroud 3-104 and / or the transparent cover 3-102 to the display assembly 3-108 and / or the trim 3-112. The trim 3-112 can adhere various components of the front cover assembly 3-100 to the frame or chassis of the HMD device.

[0092] In at least one example, as shown in FIG. 1G, a display assembly 3-108 including a transparent cover 3-102, a shroud 3-104, and a lenticular lens array 3-110 can be curved to accommodate the curvature of a user's face. The transparent cover 3-102 and the shroud 3-104 can be curved in two or three dimensions, for example, vertically in the Z direction in or out of the ZX plane and horizontally in the X direction in or out of the ZX plane. In at least one example, the display assembly 3-108 can include a display panel having pixels configured to project light through the lenticular lens array 3-110 and the shroud 3-104 and the transparent cover 3-102. The display assembly 3-108 can be curved in at least one direction, for example, horizontally, to accommodate the curvature of the user's face from one side (e.g., left side) to the other side (e.g., right side) of the face. In at least one example, shown and described in more detail in subsequent figures, each layer or component of the display assembly 3-108, which may include the lenticular lens array 3-110 and the display layer, can be curved horizontally in a similar or concentric manner to accommodate the curvature of the user's face.

[0093] In at least one example, the shroud 3-104 can include a transparent or translucent material through which the display assembly 3-108 projects light. In one example, the shroud 3-104 can include one or more opaque portions, such as opaque ink prints or other opaque film portions, on a rear surface of the shroud 3-104. The rear surface can be the surface of the shroud 3-104 that faces the user's eyes when the HMD device is worn. In at least one example, the opaque portion can be on a front surface of the shroud 3-104 opposite the rear surface. In at least one example, the one or more opaque portions of the shroud 3-104 can include a peripheral portion that visually obscures any components around the perimeter of the display screen of the display assembly 3-108. In this manner, the opaque portions of the shroud hide any other components, including electronic components, structural components, etc., of the HMD device that would otherwise be visible through the transparent or translucent cover 3-102 and / or shroud 3-104.

[0094] In at least one example, the shroud 3-104 can define one or more aperture transparent portions 3-120 through which sensors can transmit and receive signals. In one example, the portions 3-120 are apertures through which sensors can extend or transmit and receive signals. In one example, the portions 3-120 are transparent portions, or portions that are more transparent than the surrounding translucent or opaque portions of the shroud, through which sensors can transmit and receive signals through the shroud and through the transparent cover 3-102. In one example, the sensors can include a camera, an IR sensor, a LUX sensor, or any other visual or non-visual environmental sensor of the HMD device.

[0095] Any of the features, components, and / or parts, including their arrangement and configuration, shown in Figure 1G, either alone or in any combination, may be included in any of the other example devices, features, components, and parts described herein. Similarly, any of the features, components, and / or parts, including their arrangement and configuration, shown and described herein, either alone or in any combination, may be included in the example devices, features, components, and parts shown in Figure 1G.

[0096] 1H shows an exploded view of an example of an HMD device 6-100. The HMD device 6-100 can include a sensor array or system 6-102 including one or more sensors, cameras, projectors, etc. attached to one or more components of the HMD 6-100. In at least one example, the sensor system 6-102 can include a bracket 1-338 to which one or more sensors of the sensor system 6-102 can be secured / fixed.

[0097] FIG. 1I illustrates a portion of an HMD device 6-100, including a front transparent cover 6-104 and a sensor system 6-102. The sensor system 6-102 can include multiple different sensors, emitters, and receivers, including cameras, IR sensors, projectors, and the like. The transparent cover 6-104 is shown in front of the sensor system 6-102 to illustrate the relative positions of the various sensors and emitters and the orientation of each sensor / emitter in the system 6-102. As referenced herein, terms such as "sideways," "side," "lateral," "horizontal," and similar terms refer to the orientation or direction indicated by the X-axis shown in FIG. 1J. Terms such as "vertical," "upper," "lower," and similar terms refer to the orientation or direction indicated by the Z-axis shown in FIG. 1J. Terms such as "forward," "rearward," "forward," and "rearward," and similar terms refer to the orientation or direction indicated by the Y-axis shown in FIG. 1J.

[0098] In at least one example, a transparent cover 6-104 can define the front exterior surface of the HMD device 6-100, and a sensor system 6-102 including various sensors and their components can be disposed behind the cover 6-104 in the Y axis / direction. The cover 6-104 can be transparent or translucent to allow light, both detected by and emitted by the sensor system 6-102, to pass through the cover 6-104.

[0099] As discussed elsewhere herein, the HMD device 6-100 may include one or more controllers including a processor for electrically coupling the various sensors and emitters of the sensor system 6-102 with other electronic devices, such as one or more motherboards, processing units, and display screens. Additionally, as discussed in more detail below with reference to other figures, the various sensors, emitters, and other components of the sensor system 6-102 may be coupled to various structural frame members, brackets, etc. of the HMD device 6-100 that are not shown in FIG. 1I. For clarity of illustration, FIG. 1I shows the components of the sensor system 6-102 unattached to and electrically coupled to other components.

[0100] In at least one example, the device can include one or more controllers having a processor configured to execute instructions stored on a memory component electrically coupled to the processor, the instructions including, or capable of being executed by, one or more algorithms for self-correcting the various camera angles and positions described herein over time with use as the initial position, angle, or orientation of the camera is bumped or distorted due to an unintentional drop event or other event.

[0101] In at least one example, the sensor system 6-102 can include one or more scene cameras 6-106. The system 6-102 can include two scene cameras 6-106 disposed on either side of the bridge or arch of the nose of the HMD device 6-100, such that each of the two cameras 6-102 approximately corresponds to the position of the user's left and right eyes behind the cover 6-103. In at least one example, the scene cameras 6-106 are oriented generally forward in the Y direction to capture images in front of the user while the HMD 6-100 is in use. In at least one example, the scene cameras are color cameras and provide images and content for MR video pass-through to a display screen facing the user's eyes when using the HMD device 6-100. The scene cameras 6-106 can also be used for environment and object reconstruction.

[0102] In at least one example, the sensor system 6-102 may include a first depth sensor 6-108 oriented generally forward in the Y direction. In at least one example, the first depth sensor 6-108 may be used for environment and object reconstruction and hand and body tracking of the user. In at least one example, the sensor system 6-102 may include a second depth sensor 6-110 centrally disposed along the width of the HMD device 6-100 (e.g., along the X axis). For example, the second depth sensor 6-110 may be positioned in alignment with the center bridge or feature above the user's nose when wearing the HMD 6-100. In at least one example, the second depth sensor 6-110 may be used for environment and object reconstruction and hand and body tracking. In at least one example, the second depth sensor may include a LIDAR sensor.

[0103] In at least one example, the sensor system 6-102 can include a generally forward-facing depth projector 6-112 for projecting electromagnetic waves, e.g., in the form of a predetermined pattern of light dots, into and within a field of view of, or including and beyond, the user and / or scene camera 6-106. In at least one example, the depth projector can project electromagnetic waves of light in the form of a dot light pattern that reflects off objects and returns to the depth sensors described above, including the depth sensors 6-108, 6-110. In at least one example, the depth projector 6-112 can be used for environment and object reconstruction and hand and body tracking.

[0104] In at least one example, the sensor system 6-102 may include downward-facing cameras 6-114 having fields of view directed generally downward relative to the HMD device 6-100 in the Z-axis. In at least one example, the downward-facing cameras 6-114 may be disposed on the left and right sides of the HMD device 6-100 as shown and may be used for hand and body tracking, headset tracking, and facial avatar detection and creation to display a user avatar on the forward-facing display screen of the HMD device 6-100 as described elsewhere herein. The downward-facing cameras 6-114 may be used to capture facial expressions and movements of the user below the HMD device 6-100, including, for example, the cheeks, mouth, and chin.

[0105] In at least one example, the sensor system 6-102 may include chin cameras 6-116. In at least one example, the chin cameras 6-116 are disposed on the left and right sides of the HMD device 6-100 as shown and may be used for hand and body tracking, headset tracking, and facial avatar detection and creation to display a user avatar on the forward-facing display screen of the HMD device 6-100 as described elsewhere herein. The chin cameras 6-116 may be used to capture the expressions and movements of the user's face below the HMD device 6-100, including, for example, the user's chin, cheeks, mouth, and jaw. For hand and body tracking, headset tracking, and facial avatar

[0106] In at least one example, the sensor system 6-102 can include a side camera 6-118. The side camera 6-118 can be oriented to capture left and right side views in the X-axis or direction relative to the HMD device 6-100. In at least one example, the side camera 6-118 can be used for hand and body tracking, headset tracking, and facial avatar detection and reconstruction.

[0107] In at least one example, the sensor system 6-102 can include multiple eye tracking and gaze tracking sensors for determining the identity, status, and gaze direction of a user's eyes during and / or before use. In at least one example, the eye / gaze tracking sensors can include nose-eye cameras 6-120 disposed on either side of and adjacent to the user's nose when the HMD device 6-100 is worn. The eye / gaze sensors can also include under-eye cameras 6-122 disposed below each user's eye for capturing eye images for facial avatar detection and creation, gaze tracking, and iris identification functions.

[0108] In at least one example, the sensor system 6-102 includes an infrared illuminator 6-124 directed outward from the HMD device 6-100 to illuminate the external environment and any objects therein with IR light for IR detection by one or more IR sensors of the sensor system 6-102. In at least one example, the sensor system 6-102 can include a flicker sensor 6-126 and an ambient light sensor 6-128. In at least one example, the flicker sensor 6-126 can detect the overhead light refresh rate to avoid display flicker. In one example, the infrared illuminator 6-124 can include a light-emitting diode and can be used, among other things, in low-light environments to illuminate a user's hands and other objects in low light for detection by the infrared sensors of the sensor system 6-102.

[0109] In at least one example, multiple sensors including a scene camera 6-106, a downward-facing camera 6-114, a chin camera 6-116, a side camera 6-118, a depth projector 6-112, and depth sensors 6-108, 6-110 can be used in combination with an electrically coupled controller to combine depth data with camera data for hand tracking and sizing for better hand tracking and object recognition and tracking capabilities of the HMD device 6-100. In at least one example, the downward-facing camera 6-114, chin camera 6-116, and side camera 6-118 described above and shown in FIG. 1I can be wide-angle cameras capable of operating in the visible and infrared spectrum. In at least one example, these cameras 6-114, 6-116, 6-118 can operate with only black and white light detection to simplify image processing and increase sensitivity.

[0110] Any of the features, components, and / or parts, including their arrangement and configuration, shown in Figure 1I, either alone or in any combination, may be included in any of the other example devices, features, components, and parts shown in Figures 1J-1L and described herein. Similarly, any of the features, components, and / or parts, including their arrangement and configuration, shown and described with reference to Figures 1J-1L, either alone or in any combination, may be included in the example devices, features, components, and parts shown in Figure 1I.

[0111] 1J shows a bottom perspective view of an example of an HMD 6-200 including a cover or shroud 6-204 secured to a frame 6-230. In at least one example, the sensors 6-203 of the sensor system 6-202 can be disposed around the periphery of the HDM 6-200 such that the sensors 6-203 are disposed outwardly around the periphery of the display region or area 6-232 so as not to obstruct the view of the displayed light. In at least one example, the sensors can be disposed behind the shroud 6-204 and aligned with a transparent portion of the shroud to allow the sensors and projector to pass light back and forth through the shroud 6-204. In at least one example, an opaque ink or other opaque material or film / layer can be disposed on the shroud 6-204 around the display area 6-232 to obscure components of the HMD 6-200 outside of the display area 6-232 other than the transparent portion defined by the opaque portion, through which the sensors and projector transmit and receive light and electromagnetic signals during operation. In at least one example, the shroud 6-204 allows light to pass through it from the display (e.g., within the display area 6-232), but not radially outward from the display area around the outer periphery of the shroud 6-204.

[0112] In some examples, the shroud 6-204 includes a transparent portion 6-205 and an opaque portion 6-207, as described above and elsewhere herein. In at least one example, the opaque portion 6-207 of the shroud 6-204 can define one or more transparent areas 6-209 through which the sensors 6-203 of the sensor system 6-202 can send and receive signals. In the illustrated example, the sensors 6-203 of the sensor system 6-202, which transmit and receive signals through the shroud 6-204, or more specifically through the transparent region 6-209 of (or defined by) the opaque portion 6-207 of the shroud 6-204, may include sensors the same as or similar to those shown in the example of FIG. 1I, such as depth sensors 6-108 and 6-110, a depth projector 6-112, first and second scene cameras 6-106, first and second downward-facing cameras 6-114, first and second side cameras 6-118, and first and second infrared illuminators 6-124. These sensors are also shown in the examples of FIGS. 1K and 1L. Other sensors, sensor types, numbers of sensors, and their relative positions may be included in one or more other examples of the HMD.

[0113] Any of the features, components, and / or parts, including their arrangement and configuration, shown in Figure 1J, either alone or in any combination, may be included in any of the other example devices, features, components, and parts shown in Figure 1I and Figures 1K-1L and described herein. Similarly, any of the features, components, and / or parts, including their arrangement and configuration, shown and described with reference to Figure 1I and Figures 1K-1L, either alone or in any combination, may be included in the example devices, features, components, and parts shown in Figure 1J.

[0114] FIG. 1K shows a front view of a portion of an example HMD device 6-300, including a display 6-334, brackets 6-336, 6-338, and a frame or housing 6-330. The example shown in FIG. 1K does not include a front cover or shroud, so as to show the brackets 6-336, 6-338. For example, the shroud 6-204 shown in FIG. 1J includes an opaque portion 6-207 that visually covers / blocks the view of anything outside (e.g., radially / circumferentially outward) of the display / display area 6-334, including the sensor 6-303 and bracket 6-338.

[0115] In at least one example, the various sensors of the sensor system 6-302 are coupled to brackets 6-336, 6-338. In at least one example, the scene cameras 6-306 include tight tolerances on their angles relative to one another. For example, the tolerance on the mounting angle between the two scene cameras 6-306 can be 0.5 degrees or less, e.g., 0.3 degrees or less. To achieve and maintain such tight tolerances, in one example, the scene camera 6-306 can be mounted to the bracket 6-338 rather than the shroud. The bracket can include a cantilever arm to which the scene camera 6-306 and other sensors of the sensor system 6-302 can be mounted such that their position and orientation remain undeformed in the event of a drop event by the user that results in any deformation of the other brackets 6-226, the housing 6-330, and / or the shroud.

[0116] Any of the features, components, and / or parts, including their arrangement and configuration, shown in Figure 1K, either alone or in any combination, may be included in any of the other example devices, features, components, and parts shown in Figures 1I-1J and 1L and described herein. Similarly, any of the features, components, and / or parts, including their arrangement and configuration, shown and described with reference to Figures 1I-1J and 1L, either alone or in any combination, may be included in the example devices, features, components, and parts shown in Figure 1K.

[0117] FIG. 1L shows a bottom view of an example HMD 6-400 including a front display / cover assembly 6-404 and a sensor system 6-402. The sensor system 6-402 can be similar to other sensor systems described above and elsewhere herein, including with reference to FIGS. 1I-1K. In at least one example, the chin camera 6-416 can face downward to capture images of the user's lower facial features. In one example, the chin camera 6-416 can be directly coupled to a frame or housing 6-430 or to one or more internal brackets directly coupled to the illustrated frame or housing 6-430. The frame or housing 6-430 can include one or more apertures / openings 6-415 through which the chin camera 6-416 can send and receive signals.

[0118] Any of the features, components, and / or parts, including their arrangement and configuration, shown in Figure 1L, either alone or in any combination, may be included in any of the other example devices, features, components, and parts shown in Figures 1I-1K and described herein. Similarly, any of the features, components, and / or parts, including their arrangement and configuration, shown and described with reference to Figures 1I-1K, either alone or in any combination, may be included in the example devices, features, components, and parts shown in Figure 1L.

[0119] 1M shows a rear perspective view of an interpupillary distance (IPD) adjustment system 11.1.1-102 including first and second optical modules 11.1.1-104a-b slidably engaged / coupled to respective guide rods 11.1.1-108a-b and motors 11.1.1-110a-b of left and right adjustment subsystems 11.1.1-106a-b. The IPD adjustment system 11.1.1-102 can be coupled to a bracket 11.1.1-112 and can include a button 11.1.1-114 in electrical communication with the motors 11.1.1-110a-b. In at least one example, the button 11.1.1-114 is in electrical communication with the first and second motors 11.1.1-110a-b via a processor or other circuit components to activate the first and second motors 11.1.1-110a-b and cause the first and second optical modules 11.1.1-104a-b, respectively, to change position relative to one another.

[0120] In at least one example, the first and second optical modules 11.1.1-104a-b can include respective display screens configured to project light toward the user's eyes when wearing the HMD 11.1.1-100. In at least one example, the user can manipulate (e.g., press and / or rotate) the button 11.1.1-114 to actuate position adjustments of the optical modules 11.1.1-104a-b to match the interpupillary distance of the user's eyes. The optical modules 11.1.1-104a-b can also include one or more cameras or other sensors / sensor systems for imaging and measuring the user's IPD so that the optical modules 11.1.1-104a-b can be adjusted to match the IPD.

[0121] In one example, a user can actuate the button 11.1.1-114 to trigger an automatic position adjustment of the first and second optical modules 11.1.1-104a-b. In one example, a user can actuate the button 11.1.1-114 to trigger a manual adjustment, such as moving the optical modules 11.1.1-104a-b farther or closer together when the user rotates the button 11.1.1-114 in one direction or the other, until the user visually aligns their IPD. In one example, the manual adjustment is communicated electronically via one or more circuits, and power for movement of the optical modules 11.1.1-104a-b via the motors 11.1.1-110a-b is provided by a power source. In one example, the adjustment and movement of the optical modules 11.1.1-104a-b via actuation of the button 11.1.1-114 is mechanically actuated via movement of the button 11.1.1-114.

[0122] Any of the features, components, and / or parts, including their arrangement and configuration, shown in Figure 1M, either alone or in any combination, may be included in any of the other example devices, features, components, and parts shown in any other figure shown and described herein. Similarly, the example devices, features, components, and parts shown in Figure 1M may also include any of the features, components, and / or parts, including their arrangement and configuration, shown and described with reference to any other figure shown and described herein, either alone or in any combination.

[0123] FIG. 1N shows a front perspective view of a portion of an HMD 11.1.2-100 including an outer structural frame 11.1.2-102 and an inner or intermediate structural frame 11.1.2-104 that define first and second apertures 11.1.2-106a, 11.1.2-106b. The apertures 11.1.2-106a-b are shown with dashed lines in FIG. 1N because the view of the apertures 11.1.2-106a-b may be obstructed by one or more other components of the HMD 11.1.2-100 coupled to the inner frame 11.1.2-104 and / or the outer frame 11.1.2-102, as shown. In at least one example, the HMD 11.1.2-100 can include a first mounting bracket 11.1.2-108 coupled to the inner frame 11.1.2-104. In at least one example, a mounting bracket 11.1.2-108 is coupled to the inner frame 11.1.2-104 between the first and second apertures 11.1.2-106a-b.

[0124] The mounting bracket 11.1.2-108 may include an intermediate or central portion 11.1.2-109 coupled to the inner frame 11.1.2-104. In some examples, the intermediate or central portion 11.1.2-109 may not be the geometric middle or center of the bracket 11.1.2-108. Rather, the intermediate / central portion 11.1.2-109 may be disposed between first and second cantilevered extension arms extending away from the intermediate portion 11.1.2-109. In at least one example, the mounting bracket 108 includes first and second cantilevered arms 11.1.2-112 and 11.1.2-114 extending away from the intermediate portion 11.1.2-109 of the mounting bracket 11.1.2-108 coupled to the inner frame 11.1.2-104.

[0125] As shown in FIG. 1N, the outer frame 11.1.2-102 can define a curved shape on its underside to accommodate a user's nose when the user is wearing the HMD 11.1.2-100. The curved shape can be referred to as a nose bridge 11.1.2-111 and can be centrally located on the underside of the HMD 11.1.2-100 as shown. In at least one example, the mounting bracket 11.1.2-108 can be connected to the inner frame 11.1.2-102 between the apertures 11.1.2-106a-b such that the cantilever arms 11.1.2-112, 11.1.2-114 extend downward and laterally outward away from the intermediate portion 11.1.2-109 to complement the shape of the nose bridge 11.1.2-111 of the outer frame 11.1.2-104. In this manner, the mounting bracket 11.1.2-108 is configured to accommodate the user's nose as described above. The shape of the nose bridge 11.1.2-111 accommodates the nose in that the nose bridge 11.1.2-111 provides a curvature that curves with, over, on and around the user's nose for comfort and fit.

[0126] The first cantilevered arm 11.1.2-112 can extend in a first direction away from the intermediate portion 11.1.2-109 of the mounting bracket 11.1.2-108, and the second cantilevered arm 11.1.2-114 can extend in a second direction opposite the first direction away from the intermediate portion 11.1.2-109 of the mounting bracket 11.1.2-10. The first and second cantilevered arms 11.1.2-112, 11.1.2-114 are referred to as "cantilevered" or "cantilever" arms because each arm 11.1.2-112, 11.1.2-114 includes a distal free end 11.1.2-116, 11.1.2-118, respectively, that is not secured to the inner and outer frames 11.1.2-102, 11.1.2-104. In this way, the arms 11.1.2-112, 11.1.2-114 are cantilevered from intermediate portions 11.1.2-109 which may be connected to the inner frame 11.1.2-104 with the distal ends 11.1.2-102, 11.1.2-104 unattached.

[0127] In at least one example, the HMD 11.1.2-100 can include one or more components coupled to the mounting bracket 11.1.2-108. In one example, the components include a plurality of sensors 11.1.2-110a-f. Each sensor of the plurality of sensors 11.1.2-110a-f can include various types of sensors, including cameras, IR sensors, etc. In some examples, one or more of the sensors 11.1.2-110a-f can be used for object recognition in three-dimensional space, such that maintaining accurate relative positions of two or more of the plurality of sensors 11.1.2-110a-f is important. The cantilevered nature of the mounting bracket 11.1.2-108 can protect the sensors 11.1.2-110a-f from damage and repositioning in the event of an accidental drop by the user. Because the sensors 11.1.2-110a-f are cantilevered onto the arms 11.1.2-112, 11.1.2-114 of the mounting bracket 11.1.2-108, stresses and deformations of the inner and / or outer frames 11.1.2-104, 11.1.2-102 are not transferred to the cantilevered arms 11.1.2-112, 11.1.2-114 and therefore do not affect the relative positioning of the sensors 11.1.2-110a-f coupled / attached to the mounting bracket 11.1.2-108.

[0128] Any of the features, components, and / or parts, including their arrangement and configuration, shown in Figure 1N, either alone or in any combination, may be included in any of the other example devices, features, and parts described herein. Similarly, any of the features, components, and / or parts, including their arrangement and configuration, shown and described herein, either alone or in any combination, may be included in the example devices, features, components, and parts shown in Figure 1N.

[0129] FIG. 10 illustrates an example of an optical module 11.3.2-100 for use in an electronic device, such as an HMD, including the HDM device described herein. As shown in one or more other examples described herein, optical module 11.3.2-100 may be one of two optical modules in an HMD, each aligned to project light toward a user's eye. In this manner, a first optical module can project light toward a first eye of a user through a display screen, and a second optical module of the same device can project light toward a second eye of the user through another display screen.

[0130] In at least one example, the optical module 11.3.2-100 can include an optical frame or housing 11.3.2-102, which can also be referred to as a barrel or optical module barrel. The optical module 11.3.2-100 can also include a display 11.3.2-104, including a display screen or multiple display screens, coupled to the housing 11.3.2-102. The display 11.3.2-104 can be coupled to the housing 11.3.2-102 such that the display 11.3.2-104 is configured to project light toward a user's eyes when the HMD of which the display module 11.3.2-100 is a part is worn during use. In at least one example, the housing 11.3.2-102 can surround the display 11.3.2-104 and provide a connection mechanism for coupling other components of the optical module described herein.

[0131] In one example, the optical module 11.3.2-100 may include one or more cameras 11.3.2-106 coupled to the housing 11.3.2-102. The cameras 11.3.2-106 may be positioned relative to the display 11.3.2-104 and the housing 11.3.2-102 such that the cameras 11.3.2-106 are configured to capture one or more images of a user's eyes during use. In at least one example, the optical module 11.3.2-100 may also include a light strip 11.3.2-108 surrounding the display 11.3.2-104. In one example, the light strip 11.3.2-108 is disposed between the display 11.3.2-104 and the camera 11.3.2-106. The light strip 11.3.2-108 may include a plurality of lights 11.3.2-110. The plurality of lights may include one or more light-emitting diodes (LEDs) or other lights configured to project light toward the user's eyes when the HMD is worn. The individual lights 11.3.2-110 of the light strip 11.3.2-108 may be spaced around the strip 11.3.2-108 and thus may be evenly or unevenly spaced around the display 11.3.2-104 at various locations on the strip 11.3.2-108 and around the display 11.3.2-104.

[0132] In at least one example, the housing 11.3.2-102 defines a viewing opening 11.3.2-101 through which a user can view the display 11.3.2-104 when the HMD device is worn. In at least one example, the LEDs are configured and arranged to emit light onto the user's eyes through the viewing opening 11.3.2-101. In one example, the camera 11.3.2-106 is configured to capture one or more images of the user's eyes through the viewing opening 11.3.2-101.

[0133] As noted above, each of the components and features of optical module 11.3.2-100 shown in FIG. 1O may be replicated in another (e.g., a second) optical module disposed with the HMD to interact with the user's other eye (e.g., project light and capture images).

[0134] Any of the features, components, and / or parts, including their arrangement and configuration, shown in Figure 1O, either alone or in any combination, may be included in any of the other example devices, features, components, and parts shown in Figure 1P or otherwise described herein. Similarly, any of the features, components, and / or parts, including their arrangement and configuration, shown and described with reference to Figure 1P or otherwise described herein, either alone or in any combination, may be included in the example devices, features, components, and parts shown in Figure 1O.

[0135] 1P illustrates a cross-sectional view of an example optical module 11.3.2-200 including a housing 11.3.2-202, a display assembly 11.3.2-204 coupled to the housing 11.3.2-202, and a lens 11.3.2-216 coupled to the housing 11.3.2-202. In at least one example, the housing 11.3.2-202 defines a first aperture or channel 11.3.2-212 and a second aperture or channel 11.3.2-214. The channels 11.3.2-212, 11.3.2-214 may be configured to slidably engage respective rails or guide rods of an HMD device to enable the optical module 11.3.2-200 to be positioned relative to a user's eyes to match the user's inter-papillary distance (IPD). The housing 11.3.2-202 can slidably engage guide rods to secure the optical module 11.3.2-200 in place within the HMD.

[0136] In at least one example, the optical module 11.3.2-200 may also include a lens 11.3.2-216 coupled to the housing 11.3.2-202 and disposed between the display assembly 11.3.2-204 and the user's eyes when the HMD is worn. The lens 11.3.2-216 may be configured to direct light from the display assembly 11.3.2-204 toward the user's eyes. In at least one example, the lens 11.3.2-216 may be part of a lens assembly that includes a corrective lens removably attached to the optical module 11.3.2-200. In at least one example, the lens 11.3.2-216 is disposed over the light strip 11.3.2-208 and one or more eye tracking cameras 11.3.2-206, such that the camera 11.3.2-206 is configured to capture images of the user's eyes through the lens 11.3.2-216, and the light strip 11.3.2-208 includes lights configured to project light into the user's eyes through the lens 11.3.2-216 during use.

[0137] Any of the features, components, and / or parts, including their arrangement and configuration, shown in Figure 1P, either alone or in any combination, may be included in any of the other example devices, features, components, and parts described herein. Similarly, any of the features, components, and / or parts, including their arrangement and configuration, shown and described herein, either alone or in any combination, may be included in the example devices, features, components, and parts shown in Figure 1P.

[0138] 2 is a block diagram of an example controller 110, according to some embodiments. While certain features are shown, those skilled in the art will understand from this disclosure that various other features are not shown for the sake of brevity so as not to obscure more pertinent aspects of the embodiments disclosed herein. Thus, by way of non-limiting example, in some embodiments, the controller 110 includes one or more processing units 202 (e.g., a microprocessor, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a graphics processing unit (GPU), a central processing unit (CPU), a processing core, etc.), one or more input / output (I / O) devices 206, one or more communication interfaces 208 (e.g., Universal Serial Bus (USB), FIREWIRE, THUNDERBOLT, IEEE 802.3x, IEEE 802.11x, IEEE 802.16x, Global System for Mobile Communications (GSM), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Global Positioning System (GPS), Infrared (IR), BLUETOOTH, ZIGBEE, or similar types of interfaces), one or more programming (e.g., I / O) interfaces 210, memory 220, and one or more communication buses 204 for interconnecting these and various other components.

[0139] In some embodiments, one or more communication buses 204 include circuitry that interconnects and controls communications between system components. In some embodiments, one or more I / O devices 206 include at least one of a keyboard, a mouse, a touchpad, a joystick, one or more microphones, one or more speakers, one or more image sensors, one or more displays, etc.

[0140] Memory 220 includes high-speed random-access memory, such as dynamic random-access memory (DRAM), static random-access memory (SRAM), double-data-rate random-access memory (DDRRAM), or other random-access solid-state memory devices. In some embodiments, memory 220 includes non-volatile memory, such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid-state storage devices. Memory 220 optionally includes one or more storage devices located remotely from the one or more processing units 202. Memory 220 includes a non-transitory computer-readable storage medium. In some embodiments, memory 220, or its non-transitory computer-readable storage medium, stores the following programs, modules, and data structures, or a subset thereof, including optional operating system 230 and XR experience module 240:

[0141] Operating system 230 includes instructions for handling various basic system services and performing hardware-dependent tasks. In some embodiments, XR experience module 240 is configured to manage and coordinate one or more XR experiences for one or more users (e.g., a single XR experience for one or more users, or multiple XR experiences for respective groups of one or more users). To that end, in various embodiments, XR experience module 240 includes a data acquisition unit 242, a tracking unit 244, an adjustment unit 246, and a data transmission unit 248.

[0142] 1A , and optionally one or more of input device 125, output device 155, sensor 190, and / or peripheral device 195. To that end, in various embodiments, data acquisition unit 242 includes instructions and / or logic therefor, as well as heuristics and metadata therefor.

[0143] In some embodiments, tracking unit 244 is configured to map scene 105 and track the position / location of at least display generating component 120 relative to scene 105 of FIG. 1A , and optionally relative to one or more of input device 125, output device 155, sensor 190, and / or peripheral device 195. To that end, in various embodiments, tracking unit 244 includes instructions and / or logic therefor, as well as heuristics and metadata therefor. In some embodiments, tracking unit 244 includes hand tracking unit 245 and / or eye tracking unit 243. In some embodiments, hand tracking unit 245 is configured to track the position / location of one or more parts of a user's hand and / or the movement of one or more parts of a user's hand relative to scene 105 of FIG. 1A , relative to display generating component 120, and / or relative to a coordinate system defined relative to the user's hand. Hand tracking unit 245 is described in more detail below with respect to FIG. 4. In some embodiments, eye tracking unit 243 is configured to track the position and movement of the user's gaze (or, more broadly, the user's eyes, face, or head) relative to scene 105 (e.g., relative to the physical environment and / or the user (e.g., the user's hands)), or relative to XR content displayed via display generation component 120. Eye tracking unit 243 is described in more detail below with respect to FIG. 5.

[0144] In some embodiments, coordination unit 246 is configured to manage and coordinate the XR experience presented to the user by display generation component 120 and, optionally, by one or more of output devices 155 and / or peripheral devices 195. To that end, in various embodiments, coordination unit 246 includes instructions and / or logic therefor, as well as heuristics and metadata therefor.

[0145] In some embodiments, data transmission unit 248 is configured to transmit data (e.g., presentation data or location data) to at least display generation component 120, and optionally to one or more of input device 125, output device 155, sensor 190, and / or peripheral device 195. To that end, in various embodiments, data transmission unit 248 includes instructions and / or logic therefor, as well as heuristics and metadata therefor.

[0146] Although the data acquisition unit 242, the tracking unit 244 (e.g., including the eye tracking unit 243 and the hand tracking unit 245), the adjustment unit 246, and the data transmission unit 248 are shown as being present on a single device (e.g., the controller 110), it should be understood that in other embodiments, any combination of the data acquisition unit 242, the tracking unit 244 (e.g., including the eye tracking unit 243 and the hand tracking unit 245), the adjustment unit 246, and the data transmission unit 248 can be located within separate computing devices.

[0147] Furthermore, Figure 2 is intended more to illustrate the functionality of various features that may be present in particular embodiments, as opposed to a structural overview of the embodiments described herein. As will be recognized by those skilled in the art, items shown separately may be combined and some items may be separated. For example, some functional modules shown separately in Figure 2 may be implemented in a single module, and various functions of a single functional block may be implemented by one or more functional blocks in various embodiments. The actual number of modules, as well as the division of specific functions and how functions are allocated among them, will vary depending on implementation and, in some embodiments, will depend in part on the particular combination of hardware, software, and / or firmware selected for a particular implementation.

[0148] 3 is a block diagram of an example of a display generation component 120, according to some embodiments. While certain features are shown, those skilled in the art will understand from this disclosure that, for the sake of brevity, various other features are not shown so as to not obscure more pertinent aspects of the embodiments disclosed herein. To that end, by way of non-limiting example, in some embodiments, the display generation component 120 (e.g., an HMD) includes one or more processing units 302 (e.g., microprocessors, ASICs, FPGAs, GPUs, CPUs, processing cores, etc.), one or more input / output (I / O) devices and sensors 306, one or more communication interfaces 308 (e.g., USB, FIREWIRE, THUNDERBOLT, IEEE 802.3x, IEEE 802.11x, IEEE 802.16x, GSM, CDMA, TDMA, GPS, infrared, BLUETOOTH, ZIGBEE, and / or similar types of interfaces), one or more programming (e.g., I / O) interfaces 310, one or more XR displays 312, one or more optional inward-facing and / or outward-facing image sensors 314, memory 320, and one or more communication buses 304 for interconnecting these and various other components.

[0149] In some embodiments, the one or more communication buses 304 include circuitry that interconnects and controls communications between system components. In some embodiments, the one or more I / O devices and sensors 306 include at least one of an inertial measurement unit (IMU), an accelerometer, a gyroscope, a thermometer, one or more physiological sensors (e.g., a blood pressure monitor, a heart rate monitor, a blood oxygen sensor, or a blood glucose sensor), one or more microphones, one or more speakers, a haptic engine, one or more depth sensors (e.g., structured light, time of flight, etc.), etc.

[0150] In some embodiments, the one or more XR displays 312 are configured to provide an XR experience to a user. In some embodiments, the one or more XR displays 312 correspond to holographic, digital light processing (DLP), liquid crystal display (LCD), liquid crystal on silicon (LCOS), organic light-emitting field-effect transistor (OLET), organic light-emitting diode (OLED), surface-conduction electron emitter display (SED), field-emission display (FED), quantum dot light-emitting diode (QD-LED), microelectromechanical system (MEMS), and / or similar display types. In some embodiments, the one or more XR displays 312 correspond to diffractive, reflective, polarized, or holographic waveguide displays. For example, the display generation component 120 (e.g., an HMD) includes a single XR display. In another example, the display generation component 120 includes an XR display for each eye of the user. In some embodiments, the one or more XR displays 312 are capable of presenting mixed reality (MR) or virtual reality (VR) content. In some embodiments, the one or more XR displays 312 are capable of presenting mixed reality (MR) or virtual reality (VR) content.

[0151] In some embodiments, the one or more image sensors 314 are configured to acquire image data corresponding to at least a portion of the user's face, including the user's eyes (and may be referred to as eye-tracking cameras). In some embodiments, the one or more image sensors 314 are configured to acquire image data corresponding to at least a portion of the user's hand(s) and optionally the user's arm(s) (and may be referred to as hand-tracking cameras). In some embodiments, the one or more image sensors 314 are configured to face forward to acquire image data corresponding to a scene as the user would view it if the display generating component 120 (e.g., an HMD) were not present (and may be referred to as a scene camera). The one or more optional image sensors 314 may include one or more RGB cameras (e.g., with a complementary metal-oxide semiconductor (CMOS) image sensor or a charge-coupled device (CCD) image sensor), one or more infrared (IR) cameras, one or more event-based cameras, and / or the like.

[0152] Memory 320 includes high-speed random-access memory, such as DRAM, SRAM, DDR RAM, or other random-access solid-state memory devices. In some embodiments, memory 320 includes non-volatile memory, such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid-state storage devices. Memory 320 optionally includes one or more storage devices located remotely from the one or more processing units 302. Memory 320 includes a non-transitory computer-readable storage medium. In some embodiments, memory 320, or its non-transitory computer-readable storage medium, stores the following programs, modules, and data structures, or a subset thereof, including an optional operating system 330 and an XR presentation module 340:

[0153] The operating system 330 includes instructions for handling various basic system services and for performing hardware-dependent tasks. In some embodiments, the XR presentation module 340 is configured to present XR content to a user via one or more XR displays 312. To that end, in various embodiments, the XR presentation module 340 includes a data acquisition unit 342, an XR presentation unit 344, an XR map generation unit 346, and a data transmission unit 348.

[0154] In some embodiments, the data acquisition unit 342 is configured to acquire data (e.g., presentation data, interaction data, sensor data, or location data) from at least the controller 110 of Figure 1. To that end, in various embodiments, the data acquisition unit 342 includes instructions and / or logic therefor, as well as heuristics and metadata therefor.

[0155] In some embodiments, the XR presentation unit 344 is configured to present XR content via one or more XR displays 312. To that end, in various embodiments, the XR presentation unit 344 includes instructions and / or logic therefor, as well as heuristics and metadata therefor.

[0156] In some embodiments, the XR map generation unit 346 is configured to generate an XR map (e.g., a 3D map of a mixed reality scene, or a map of a physical environment in which computer-generated objects can be placed to generate an extended reality) based on the media content data. To that end, in various embodiments, the XR map generation unit 346 includes instructions and / or logic therefor, as well as heuristics and metadata therefor.

[0157] In some embodiments, data transmission unit 348 is configured to transmit data (e.g., presentation data or location data) to at least controller 110, and optionally to one or more of input device 125, output device 155, sensor 190, and / or peripheral device 195. To that end, in various embodiments, data transmission unit 348 includes instructions and / or logic therefor, as well as heuristics and metadata therefor.

[0158] Although the data acquisition unit 342, the XR presentation unit 344, the XR map generation unit 346, and the data transmission unit 348 are shown as residing on a single device (e.g., the display generation component 120 of FIG. 1), it should be understood that in other embodiments, any combination of the data acquisition unit 342, the XR presentation unit 344, the XR map generation unit 346, and the data transmission unit 348 may be located in separate computing devices.

[0159] Furthermore, Figure 3 is intended more to illustrate the functionality of various features that may be present in particular implementations, as opposed to a structural overview of the embodiments described herein. As will be recognized by those skilled in the art, items shown separately can be combined and some items can be separated. For example, some functional modules shown separately in Figure 3 can be implemented within a single module, and various functions of a single functional block can be performed by one or more functional blocks in various embodiments. The actual number of modules, as well as the division of specific functions and how functions are allocated among them, will vary from implementation to implementation and, in some embodiments, will depend in part on the particular combination of hardware, software, and / or firmware selected for a particular implementation.

[0160] 4 is a schematic diagram of an example embodiment of hand tracking device 140. In some embodiments, hand tracking device 140 (FIG. 1) is controlled by hand tracking unit 245 (FIG. 2) to track the position / location of one or more parts of a user's hand and / or the movement of one or more parts of a user's hand relative to a coordinate system defined relative to scene 105 of FIG. 1A (e.g., relative to a portion of the physical environment surrounding the user, relative to display generating component 120, or relative to a portion of the user (e.g., the user's face, eyes, or head)) and / or relative to the user's hand. In some embodiments, hand tracking device 140 is part of display generating component 120 (e.g., embedded in or attached to a head-mounted device). In some embodiments, hand tracking device 140 is separate from display generating component 120 (e.g., located in a separate housing or attached to a separate physical support structure).

[0161] In some embodiments, the hand tracking device 140 includes an image sensor 404 (e.g., one or more IR cameras, 3D cameras, depth cameras, and / or color cameras) that captures three-dimensional scene information including at least the hand 406 of a human user. The image sensor 404 captures hand images with sufficient resolution to allow for differentiation of the fingers and their respective positions. The image sensor 404 typically captures images of other parts of the user's body, or all of the body, and can have either zoom capabilities or a dedicated sensor with high magnification to capture hand images at a desired resolution. In some embodiments, the image sensor 404 also captures 2D color video images of the hand 406 and other elements of the scene. In some embodiments, the image sensor 404 is used in conjunction with or functions as an image sensor that captures the physical environment of the scene 105. In some embodiments, the image sensor 404 is positioned relative to the user or the user's environment such that the field of view of the image sensor, or a portion thereof, is used to define an interaction space in which hand movements captured by the image sensor are processed as inputs to the controller 110.

[0162] In some embodiments, image sensor 404 outputs a sequence of frames containing 3D map data (and possibly color image data) to controller 110, which extracts high-level information from the map data. This high-level information is provided, typically via an application program interface (API), to an application running on the controller, which drives display generation component 120 accordingly. For example, a user can interact with software running on controller 110 by moving their hand 406 and / or changing the posture of their hand.

[0163] In some embodiments, the image sensor 404 projects a spot pattern onto a scene including the hand 406 and captures an image of the projected pattern. In some embodiments, the controller 110 calculates the 3D coordinates of points in the scene (including points on the surface of the user's hand) by triangulation based on the lateral shift of the spots of the pattern. This approach is advantageous in that it does not require the user to hold or wear any type of beacon, sensor, or other marker. This provides depth coordinates of points in the scene relative to a predetermined reference plane at a specific distance from the image sensor 404. In this disclosure, the image sensor 404 is assumed to define an orthogonal set of x, y, and z axes such that the depth coordinate of a point in the scene corresponds to the z component measured by the image sensor. Alternatively, the image sensor 404 (e.g., a hand tracking device) can use other 3D mapping methods, such as stereoscopic imaging or time-of-flight measurements, based on single or multiple cameras or other types of sensors.

[0164] In some embodiments, the hand tracking device 140 captures and processes a time sequence of depth maps containing the user's hand while the user moves their hand (e.g., the whole hand or one or more fingers). Software running on the image sensor 404 and / or a processor in the controller 110 processes the 3D map data to extract patch descriptors of the hand in these depth maps. The software matches these descriptors with patch descriptors stored in the database 408, based on a previous training process, to estimate the pose of the hand in each frame. The pose typically includes the 3D locations of the user's hand joints and fingertips.

[0165] The software can also analyze hand and / or finger trajectories across multiple frames in a sequence to identify gestures. The pose estimation functionality described herein may be interleaved with motion tracking functionality, whereby patch-based pose estimation is performed only once every two (or more) frames, while tracking is used to discover pose changes that occur across the remaining frames. The pose, motion, and gesture information is provided to an application program running on controller 110 via the API described above. This program can, for example, move and modify an image presented on display generation component 120 or perform other functions in response to the pose and / or gesture information.

[0166] In some embodiments, the gesture includes an air gesture, which is detected without (or independent of) the user touching an input element that is part of a device (e.g., computer system 101, one or more input devices 125, and / or hand tracking device 140) and is based on detected movement of a part of the user's body in the air (e.g., head, one or more arms, one or more hands, one or more fingers, and / or one or more legs), including movement of the user's body relative to an absolute reference (e.g., the angle of the user's arm relative to the ground or the distance of the user's hand relative to the ground), movement of the user's body relative to another part of the user's body (e.g., movement of the user's hand relative to the user's shoulder, movement of one of the user's hands relative to another of the user's hands, and / or movement of a user's finger relative to another finger or part of the user's hand), and / or absolute movement of the user's body part (e.g., a tap gesture involving movement of a hand in a predetermined posture by a predetermined amount and / or speed, or a shake gesture involving a predetermined speed or amount of rotation of the user's body part).

[0167] In some embodiments, input gestures used in various examples and embodiments described herein include air gestures performed by movement of a user's finger(s) relative to other finger(s) or part(s) of the user's hand to interact with an XR environment (e.g., a virtual or mixed reality environment), according to some embodiments. In some embodiments, an air gesture is a gesture that is detected without the user touching an input element that is part of the device (or independent of an input element that is part of the device) and is based on detected movement of a part of the user's body in the air, including movement of the user's body relative to an absolute reference (e.g., the angle of the user's arm relative to the ground or the distance of the user's hand relative to the ground), movement of the user's body relative to another part of the user's body (e.g., movement of the user's hand relative to the user's shoulder, movement of the user's other hand relative to one of the user's hands, and / or movement of the user's fingers relative to another finger or part of the user's hand), and / or absolute movement of the user's body part (e.g., a tap gesture that includes movement of the hand in a predetermined pose by a predetermined amount and / or speed, or a shake gesture that includes rotation of the user's body part at a predetermined speed or amount).

[0168] In some embodiments where the input gesture is an air gesture (e.g., in the absence of physical contact with an input device that provides a computer system with information about which user interface element is the target of the user input, such as contact with a user interface element displayed on a touchscreen or contact with a mouse or trackpad to move a cursor to a user interface element), the gesture takes into account the user's attention (e.g., gaze) to determine the target of the user input (e.g., in the case of direct input, as described below). Thus, in implementations that include air gestures, the input gesture is detected attention (e.g., gaze) to a user interface element in combination with (e.g., simultaneous with) movement of the user's finger(s) and / or hand to perform pinch and / or tap input, as described in more detail below.

[0169] In some embodiments, an input gesture directed at a user interface object is performed directly or indirectly with reference to the user interface object. For example, user input is performed directly at a user interface object in response to performing an input gesture with the user's hand at a position corresponding to the user interface object's position in the three-dimensional environment (e.g., as determined based on the user's current viewpoint). In some embodiments, an input gesture is performed indirectly at a user interface object in response to detecting the user's attention (e.g., gaze) to the user interface object while performing the input gesture while the user's hand position is not at a position corresponding to the user interface object's position in the three-dimensional environment. For example, for a direct input gesture, a user can direct the user's input at a user interface object by initiating the gesture at or near a position corresponding to the user interface object's displayed position (e.g., within a distance of 0.5 cm, 1 cm, 5 cm, or 0-5 cm, measured from an outer edge of the option or a central portion of the option). For indirect input gestures, a user can direct their input to a user interface object by paying attention to the user interface object (e.g., by gazing at the user interface object), and while paying attention to the option, the user initiates an input gesture (e.g., at any position detectable by the computer system) (e.g., at a position that does not correspond to the displayed position of the user interface object).

[0170] In some embodiments, input gestures (e.g., air gestures) used in various examples and embodiments described herein include pinch inputs and tap inputs for interacting with a virtual or mixed reality environment, according to some embodiments. For example, the pinch inputs and tap inputs described below are implemented as air gestures.

[0171] In some embodiments, the pinch input is part of an air gesture, including one or more of a pinch gesture, a long pinch gesture, a pinch-and-drag gesture, or a double pinch gesture. For example, a pinch gesture that is an air gesture includes moving two or more fingers of a hand to contact each other, i.e., optionally with a short break (e.g., within 0-1 second) after contact with each other. A long pinch gesture that is an air gesture includes moving two or more fingers of a hand to contact each other for at least a threshold amount of time (e.g., at least 1 second) before detecting a break in contact with each other. For example, a long pinch gesture includes a user holding a pinch gesture (e.g., when two or more fingers are in contact), and the long pinch gesture continues until a break in contact between the two or more fingers is detected. In some embodiments, a double pinch gesture that is an air gesture includes two (e.g., or more) pinch inputs (e.g., performed by the same hand) that are detected immediately in succession (e.g., within a predetermined period of time) after each other. For example, a user performs a first pinch input (e.g., a pinch input or a long pinch input), releases the first pinch input (e.g., breaking contact between two or more fingers), and performs a second pinch input within a predetermined period of time (e.g., within 1 second or 2 seconds) after releasing the first pinch input.

[0172] In some embodiments, a pinch-and-drag gesture that is an air gesture (e.g., an air drag gesture or an air swipe gesture) includes a pinch gesture (e.g., a pinch gesture or a long pinch gesture) performed in conjunction with (e.g., followed by) a drag input that changes the position of the user's hand from a first position (e.g., a start position of the drag) to a second position (e.g., an end position of the drag). In some embodiments, the user maintains the pinch gesture while performing the drag input and releases the pinch gesture (e.g., spreading two or more fingers apart) to end the drag gesture (e.g., at the second position). In some embodiments, the pinch input and the drag input are performed by the same hand (e.g., the user pinches two or more fingers together and moves the same hand to the second position in the air with a drag gesture). In some embodiments, the pinch input is performed with a first hand of the user and the drag input is performed with a second hand of the user (e.g., the second hand of the user moves in the air from a first position to a second position while the user continues to perform the pinch input with the first hand). In some embodiments, an input gesture that is an air gesture includes an input (e.g., a pinch input and / or a tap input) performed using both of the user's hands. For example, the input gesture includes two (e.g., or more) pinch inputs performed in conjunction with each other (e.g., simultaneously or within a predetermined period of time). For example, a first pinch gesture (e.g., a pinch input, a long pinch input, or a pinch and drag input) performed using the first hand of the user and a second pinch input performed using the other hand (e.g., the second hand of the user's two hands) in conjunction with performing the pinch input using the first hand. In some embodiments, a movement between the user's hands occurs (e.g., to increase and / or decrease the distance or relative orientation between the user's hands).

[0173] In some embodiments, a tap input (e.g., directed toward a user interface element) performed as an air gesture includes movement(s) of a user's finger(s) toward the user interface element, movement of a user's hand toward a user interface element, optionally with the user's finger(s) extended toward the user interface element, a downward movement of a user's finger (e.g., mimicking a mouse click action or a tap on a touchscreen), or other predefined movement of the user's hand. In some embodiments, a tap input performed as an air gesture is detected based on movement characteristics of the finger or hand performing the tap gesture, moving the finger or hand away from the user's viewpoint and / or toward the object that is the target of the tap input followed by an end of the movement. In some embodiments, an end of the movement is detected based on a change in movement characteristics of the finger or hand performing the tap gesture (e.g., an end of movement away from the user's viewpoint and / or toward the object that is the target of the tap input, a reversal of the direction of movement of the finger or hand, and / or a reversal of the direction of acceleration of the movement of the finger or hand).

[0174] In some embodiments, the user's attention is determined to be directed to a portion of the three-dimensional environment based on detecting a gaze directed to the portion of the three-dimensional environment (optionally, without requiring other conditions). In some embodiments, the device determines that the user's attention is directed to the portion of the three-dimensional environment based on detecting a gaze directed to the portion of the three-dimensional environment with one or more additional conditions, such as requiring the gaze to be directed to the portion of the three-dimensional environment for at least a threshold duration (e.g., dwell time) while the user's viewpoint is within a distance threshold from the portion of the three-dimensional environment, and / or requiring the gaze to be directed to the portion of the three-dimensional environment, and if one of the additional conditions is not met, the device determines that the user's attention is not directed to the portion of the three-dimensional environment to which the gaze is directed (e.g., until one or more additional conditions are met).

[0175] In some embodiments, detection of a ready configuration of a user or a portion of a user is detected by a computer system, and detection of a ready configuration of the hands is used by the computer system as an indication that the user is likely preparing to interact with the computer system using one or more air gesture inputs performed with the hands (e.g., pinch, tap, pinch and drag, double pinch, long pinch, or other air gestures described herein). For example, the ready state of a hand is determined based on whether the hand has a predetermined hand geometry (e.g., a pre-pinch geometry with the thumb and one or more fingers extended and spaced apart, ready to perform a pinch or grab gesture, or a pre-tap geometry with one or more fingers extended and the palm facing away from the user), whether the hand is in a predetermined position relative to the user's viewpoint (e.g., below the user's head, above the user's waist, extended at least 15 cm, 20 cm, 25 cm, 30 cm, or 50 cm from the body), and / or whether the hand has moved in a particular manner (e.g., above the user's waist, moved toward an area in front of the user below the user's head, or away from the user's body or legs). In some embodiments, the ready state is used to determine whether an interactive element of a user interface is responsive to attentional (e.g., gaze) input.

[0176] In scenarios where input is described with reference to air gestures, it should be understood that similar gestures can also be detected using a hardware input device attached to or held by one or more of the user's hands, where the position of the hardware input device in space can be tracked using optical tracking, one or more accelerometers, one or more gyroscopes, one or more magnetometers, and / or one or more inertial measurement units, and where the position and / or movement of the hardware input device is substituted for the position and / or movement of the one or more hands in the corresponding air gesture(s). It should be understood that in scenarios where input is described with reference to air gestures, similar gestures can also be detected using a hardware input device attached to or held by one or more of the user's hands. User input can be detected using controls included in a hardware input device, such as one or more touch-sensitive input elements, one or more pressure-sensitive input elements, one or more buttons, one or more knobs, one or more dials, one or more joysticks, one or more hand or finger covers capable of detecting the position or change in position of parts of the hands and / or fingers relative to each other, relative to the user's body, and / or relative to the user's physical environment, and / or other hardware input device controls, where user input using controls included in a hardware input device is used in place of a hand and / or finger gesture, such as an air tap or air pinch, in a corresponding air gesture(s). For example, a selection input described as being performed with an air tap or air pinch input can alternatively be detected with a button press, a tap on a touch-sensitive surface, a press on a pressure-sensitive surface, or other hardware input.As another example, a movement input described as being performed with an air pinch and drag (e.g., an air drag gesture or an air swipe gesture) may alternatively be detected based on an interaction with a hardware input control, such as a press and hold of a button, a touch on a touch-sensitive surface, a press on a pressure-sensitive surface, or other hardware input followed by movement of the hardware input device (e.g., along with the hand with which the hardware input device is associated) through space. Similarly, two-handed input, including movement of both hands relative to each other, may be performed using one air gesture and one hardware input device held in the hand not performing the air gesture, two hardware input devices held in separate hands, or two air gestures performed by separate hands, using various combinations of air gestures and / or input detected by one or more of the hardware input devices described above.

[0177] In some embodiments, the software may be downloaded to the controller 110 in electronic form, for example, over a network, or alternatively may be provided on a tangible, non-transitory medium, such as an optical, magnetic, or electronic memory medium. In some embodiments, the database 408 is similarly stored in memory associated with the controller 110. Alternatively, or additionally, some or all of the described functionality of the computer may be implemented in dedicated hardware, such as a custom or semi-custom integrated circuit or a programmable digital signal processor (DSP). While the controller 110 is shown in FIG. 4 as, by way of example, a separate unit from the image sensor 404, some or all of the processing functions of the controller may be performed by a suitable microprocessor and software, or by dedicated circuitry within the housing of the image sensor 404 (e.g., a hand tracking device), or otherwise associated with the image sensor 404. In some embodiments, at least some of these processing functions may be performed by a suitable processor integrated with the display generation component 120 (e.g., in a television set, handheld device, or head-mounted device) or using any other suitable computerized device, such as a game console or media player. The sensing function of the image sensor 404 may likewise be integrated into a computer or other computerized device that is controlled by the sensor output.

[0178] FIG. 4 also includes a schematic diagram of a depth map 410 captured by the image sensor 404, according to some embodiments. The depth map includes a matrix of pixels having respective depth values, as described above. A pixel 412 corresponding to the hand 406 is segmented from the background and wrist in this map. The intensity of each pixel in the depth map 410 is inversely proportional to the depth value, i.e., the measured z-distance from the image sensor 404, with increasing depth resulting in darker shades. The controller 110 processes these depth values ​​to identify and segment components of the image (i.e., groups of adjacent pixels) that have characteristics of a human hand. These characteristics can include, for example, the overall size, shape, and frame-to-frame motion of the depth map sequence.

[0179] 4 also schematically illustrates a hand skeleton 414 that the controller 110 ultimately extracts from the depth map 410 of the hand 406, according to some embodiments. In FIG. 4, the hand skeleton 414 is overlaid on a hand background 416 that was segmented from the original depth map. In some embodiments, key feature points of the hand (e.g., points corresponding to the knuckles, fingertips, palm center, or the end of the hand that connects to the wrist), and optionally key feature points on the wrist or arm connected to the hand, are identified and located on the hand skeleton 414. In some embodiments, the location and movement of these key feature points over multiple image frames are used by the controller 110 to determine hand gestures performed by the hand or the current state of the hand, according to some embodiments.

[0180] FIG. 5 shows an exemplary embodiment of eye tracking device 130 ( FIG. 1 ). In some embodiments, eye tracking device 130 is controlled by eye tracking unit 243 ( FIG. 2 ) to track the position and movement of a user's gaze relative to scene 105 or relative to XR content displayed via display generation component 120. In some embodiments, eye tracking device 130 is integrated with display generation component 120. For example, in some embodiments, if display generation component 120 is a head-mounted device such as a headset, helmet, goggles, or glasses, or a handheld device disposed in a wearable frame, the head-mounted device includes both components for generating XR content for viewing by the user and components for tracking the user's gaze relative to the XR content. In some embodiments, eye tracking device 130 is separate from display generation component 120. For example, if the display generation component is a handheld device or an XR chamber, eye tracking device 130 is optionally a device separate from the handheld device or the XR chamber. In some embodiments, eye tracking device 130 is a head-mounted device or part of a head-mounted device. In some embodiments, head-mounted eye tracking device 130 is optionally used in conjunction with head-mounted or non-head-mounted display generating components. In some embodiments, eye tracking device 130 is not a head-mounted device, and is optionally used in combination with head-mounted display generating components. In some embodiments, eye tracking device 130 is not a head-mounted device, and is optionally part of non-head-mounted display generating components.

[0181] In some embodiments, the display generation component 120 uses a display mechanism (e.g., left and right near-eye display panels) that displays frames including left and right images in front of the user's eyes to provide the user with a 3D virtual view. For example, the head-mounted display generation component may include left and right optical lenses (referred to herein as eyepieces) positioned between the display and the user's eyes. In some embodiments, the display generation component may include or be coupled to one or more external video cameras that capture video of the user's environment for display. In some embodiments, the head-mounted display generation component may have a transparent or translucent display that allows the user to view the physical environment directly and display virtual objects on the transparent or translucent display. In some embodiments, the display generation component projects virtual objects into the physical environment. The virtual objects are projected, for example, onto a physical surface or as a hologram, allowing an individual using the system to observe the virtual objects superimposed on the physical environment. In such cases, separate display panels and image frames for the left and right eyes may not be required.

[0182] As shown in FIG. 5 , in some embodiments, eye tracking device 130 (e.g., gaze tracking device) includes at least one eye tracking camera (e.g., an infrared (IR) camera or near-IR (NIR) camera) and an illumination source (e.g., an IR or NIR light source such as an array or ring of LEDs) that emits light (e.g., IR or NIR light) toward the user's eyes. The eye tracking camera may be aimed at the user's eyes to receive reflected IR or NIR light from the light source directly from the eyes, or alternatively, may be aimed at a “hot” mirror positioned between the user's eyes and a display panel that reflects the IR or NIR light from the eyes to the eye tracking camera while allowing visible light to pass through. Eye tracking device 130 optionally captures images of the user's eyes (e.g., as a video stream captured at 60-120 frames per second (fps)), analyzes the images to generate eye tracking information, and communicates the eye tracking information to controller 110. In some embodiments, the user's eyes are tracked separately by their respective eye tracking cameras and illumination sources. In some embodiments, only one eye of the user is tracked by a separate eye-tracking camera and lighting source.

[0183] In some embodiments, the eye tracking device 130 is calibrated using a device-specific calibration process to determine the eye tracking device's parameters for the particular operating environment 100, such as the 3D geometric relationships and parameters of the LEDs, camera, hot mirror (if present), eyepiece, and display screen. The device-specific calibration process may be performed at a factory or another facility before delivery of the AR / VR equipment to the end user. The device-specific calibration process may be an automatic or manual calibration process. The user-specific calibration process may include estimation of a particular user's eye parameters, such as pupil location, fovea location, optical axis, visual axis, or eye spacing. Once the device-specific and user-specific parameters have been determined for the eye tracking device 130, according to some embodiments, images captured by the eye tracking camera can be processed using glint-assisted methods to determine the user's current visual axis and viewpoint relative to the display.

[0184] As shown in FIG. 5, eye tracking device 130 (e.g., 130A or 130B) includes an eyepiece(s) 520 and a gaze tracking system including at least one eye tracking camera 540 (e.g., an infrared (IR) or near-IR (NIR) camera) positioned on the side of the user's face where eye tracking occurs and an illumination source 530 (e.g., an IR or NIR light source such as an array or ring of NIR light emitting diodes (LEDs)) that emits light (e.g., IR or NIR light) toward the user's eye(s) 592. The eye tracking camera 540 may be positioned between the user's eye(s) 592 and the display 510 (e.g., the left or right display panel of a head-mounted display, or the display of a handheld device, or a projector) and may be directed at a mirror 550 that reflects IR or NIR light from the eye(s) 592 while transmitting visible light (e.g., as shown in the top of Figure 5), or may be directed at the user's eye(s) 592 to receive reflected IR or NIR light from the eye(s) 592 (e.g., as shown in the bottom of Figure 5).

[0185] In some embodiments, controller 110 renders AR or VR frames 562 (e.g., left and right frames for left and right display panels) and provides frames 562 to display 510. Controller 110 uses gaze tracking input 542 from eye tracking camera 540 for various purposes, such as in processing frames 562 for display. Controller 110 optionally estimates the user's viewpoint on display 510 based on gaze tracking input 542 obtained from eye tracking camera 540, using a glint-assisted method or other suitable method. The viewpoint estimated from gaze tracking input 542 is optionally used to determine the direction the user is currently looking.

[0186] Some possible use cases of the user's current gaze direction are described below, but are not intended to be limiting. As an exemplary use case, the controller 110 can render virtual content differently based on the determined user's gaze direction. For example, the controller 110 may generate virtual content with higher resolution in a central visual area determined from the user's current gaze direction than in a peripheral area. As another example, the controller may position or move virtual content within a view based at least in part on the user's current gaze direction. As another example, the controller may display particular virtual content within a view based at least in part on the user's current gaze direction. As another exemplary use case in an AR application, the controller 110 can orient an external camera to capture the physical environment of the XR experience and focus in the determined direction. The external camera's autofocus mechanism can then focus on an object or surface within the environment the user is currently viewing on the display 510. As another exemplary use case, eyepiece 520 may be a focusable lens, and eye-tracking information is used by the controller to adjust the focus of eyepiece 520 so that the virtual object the user is currently looking at has the proper binocular coordination to match the convergence of the user's eyes 592. Controller 110 can utilize the eye-tracking information to orient and focus eyepiece 520 so that close objects the user is looking at appear at the correct distance.

[0187] In some embodiments, the eye tracking device is part of a head-mounted device that includes a display (e.g., display 510), two eyepieces (e.g., eyepiece(s) 520), an eye tracking camera (e.g., eye tracking camera(s) 540), and a light source (e.g., light source 530 (e.g., IR or NIR LED)) attached to the wearable housing. The light source emits light (e.g., IR or NIR light) toward the user's eye(s) 592. In some embodiments, the light sources may be arranged in a ring or circle around each lens, as shown in FIG. 5. In some embodiments, eight light sources 530 (e.g., LEDs) are arranged around each lens 520, as an example. However, more or fewer light sources 530 may be used, and other arrangements and locations of the light sources 530 may be used.

[0188] In some embodiments, the display 510 emits light in the visible light range and not in the IR or NIR range, and therefore does not introduce noise into the gaze tracking system. Note that the location and angle of the eye tracking camera(s) 540 are given by way of example and are not intended to be limiting. In some embodiments, a single eye tracking camera 540 is located on each side of the user's face. In some embodiments, two or more NIR cameras 540 may be used on each side of the user's face. In some embodiments, a camera 540 with a wider field of view (FOV) and a camera 540 with a narrower FOV may be used on each side of the user's face. In some embodiments, a camera 540 operating at one wavelength (e.g., 850 nm) and a camera 540 operating at a different wavelength (e.g., 940 nm) may be used on each side of the user's face.

[0189] Embodiments of an eye tracking system such as that shown in FIG. 5 may be used, for example, in computer-generated reality, virtual reality, and / or mixed reality applications to provide a user with a computer-generated reality, virtual reality, augmented reality, and / or augmented virtual experience.

[0190] FIG. 6 illustrates a glint-assisted gaze tracking pipeline according to some embodiments. In some embodiments, the gaze tracking pipeline is implemented by a glint-assisted gaze tracking system (e.g., eye tracking device 130 as shown in FIGS. 1 and 5). The glint-assisted gaze tracking system can maintain a tracking state. Initially, the tracking state is off or "no." When in the tracking state, the glint-assisted gaze tracking system tracks the pupil contour and glint in the current frame using prior information from previous frames when analyzing the current frame. When not in the tracking state, the glint-assisted gaze tracking system attempts to detect the pupil and glint in the current frame, and if successful, initializes the tracking state to "yes" and continues to the next frame in the tracking state.

[0191] As shown in FIG. 6, an eye-tracking camera can capture left and right images of a user's left and right eyes. The captured images are then input into an eye-tracking pipeline for processing beginning at 610. As indicated by the arrow returning to element 600, the eye-tracking system can continue to capture images of the user's eyes at a rate of, for example, 60-120 frames per second. In some embodiments, each set of captured images may be input into the pipeline for processing. However, in some embodiments, or under some conditions, not all captured frames are processed by the pipeline.

[0192] At 610, if the tracking status is yes for the currently captured image, the method proceeds to element 640. If the tracking status is no at 610, the image is analyzed to detect the user's pupil and glint in the image, as shown at 620. If the pupil and glint are successfully detected at 630, the method proceeds to element 640. If not, the method returns to element 610 to process the next image of the user's eyes.

[0193] At 640, proceeding from element 610, the current frame is analyzed to track pupils and glints based in part on previous information from the previous frame. At 640, proceeding from element 630, a tracking state is initialized based on the detected pupils and glints in the current frame. The results of the processing at element 640 are checked to ensure that the tracking or detection results are reliable. For example, the results can be checked to determine whether a sufficient number of glints are successfully tracked or detected in the current frame to perform pupil and gaze estimation. At 650, if the results are not reliable, the tracking state is set to no at element 660 and the method returns to element 610 to process the next image of the user's eyes. At 650, if the results are reliable, the method proceeds to element 670. At 670, the tracking state is set to yes (if not already yes) and the pupil and glint information is passed to element 680 to estimate the user's gaze point.

[0194] 6 is intended to serve as an example of eye-tracking technology that may be used in particular implementations. As will be recognized by those skilled in the art, other eye-tracking technologies, now existing or developed in the future, may be used in place of or in combination with the glint-assisted eye-tracking technology described herein in computer system 101 to provide a user with an XR experience according to various embodiments.

[0195] In some embodiments, the captured portion of the real-world environment 602 is used to provide the user with an XR experience, e.g., a mixed reality environment in which one or more virtual objects are overlaid on a representation of the real-world environment 602.

[0196] Accordingly, the description herein describes some embodiments of three-dimensional environments (e.g., XR environments) that include representations of real-world objects and representations of virtual objects. For example, the three-dimensional environment optionally includes a representation of a table present in a physical environment that is captured and displayed within the three-dimensional environment (e.g., actively via a camera and display of the computer system, or passively via a transparent or translucent display of the computer system). As described above, the three-dimensional environment is optionally a mixed reality system based on a physical environment, where the three-dimensional environment is captured by one or more sensors of the computer system and displayed via a display generation component. As a mixed reality system, the computer system can optionally selectively display portions and / or objects of the physical environment such that each portion and / or object of the physical environment appears to exist within the three-dimensional environment displayed by the computer system. Similarly, the computer system can optionally display virtual objects in the three-dimensional environment such that the virtual objects appear to exist within the real world (e.g., the physical environment) by placing the virtual objects at respective locations within the three-dimensional environment that have corresponding locations in the real world. For example, the computer system optionally displays the vase so that it appears as if the real vase were placed on a table in the physical environment, hi some embodiments, distinct locations in the three-dimensional environment have corresponding locations in the physical environment.Thus, when a computer system is described as displaying a virtual object at a location distinct from a physical object (e.g., at or near the location of a user's hand, or on or near a physical table, etc.), the computer system displays the virtual object at a particular location in the three-dimensional environment so that the virtual object appears to be at or near the physical object in the physical world (e.g., the virtual object is displayed at a location in the three-dimensional environment that corresponds to the location in the physical environment where the virtual object would be displayed if the virtual object were a real object at that particular location).

[0197] In some embodiments, real-world objects present in the physical environment (e.g., and / or visible via display generation components) that are displayed in the three-dimensional environment can interact with virtual objects that exist only in the three-dimensional environment. For example, the three-dimensional environment can include a table and a vase placed on the table, where the table is a view (or representation) of the physical table in the physical environment and the vase is a virtual object.

[0198] In a three-dimensional environment (e.g., a real environment, a virtual environment, or an environment containing a mixture of real and virtual objects), objects may be referred to as having depth or simulated depth, or objects may be referred to as being visible, displayed, or located at different depths. In this context, depth refers to a dimension other than height or width. In some embodiments, depth is defined relative to a fixed set of coordinates (e.g., a room or object has a height, depth, and width defined relative to a fixed set of coordinates). In some embodiments, depth is defined relative to a user's location or viewpoint, where the depth dimension varies based on the user's location and / or the location and angle of the user's viewpoint. In some embodiments where depth is defined relative to the location of the user positioned relative to a surface of the environment (e.g., the floor or ground surface of the environment), objects that are farther away from the user along a line extending parallel to the surface are considered to have a greater depth within the environment, and / or the depth of an object is measured along an axis that extends outward from the user's location and is parallel to the surface of the environment (e.g., depth is defined in a cylindrical or substantially cylindrical coordinate system with the user's position at the center of the cylinder extending from the user's head toward the user's feet). Depth is defined relative to the user's viewpoint (e.g., a direction relative to a point in space that determines which parts of the environment are visible through a head-mounted device or other display). In some embodiments, objects that are further away from the user's viewpoint along a line that extends parallel to the direction of the user's viewpoint are considered to have greater depth in the environment, and / or the depth of an object is measured along an axis that extends from the user's viewpoint and extends outward from a line that is parallel to the direction of the user's viewpoint (e.g., depth is defined in a spherical or substantially spherical coordinate system with the origin of the viewpoint at the center of a sphere extending outward from the user's head).In some embodiments, depth is defined relative to a user interface container (e.g., a window or application in which application and / or system content is displayed), where the user interface container has a height and / or width, and depth is a dimension orthogonal to the height and / or width of the user interface container. In some embodiments, in situations where depth is defined relative to a user interface container, the height and / or width of the container are typically orthogonal or substantially orthogonal to a line extending from a user-based location (e.g., a user's viewpoint or location) to the user interface container (e.g., a center of the user interface container or another feature of the user interface container) when the container is placed or initially displayed in a three-dimensional environment (e.g., such that the depth dimension of the container extends outward, away from the user or the user's viewpoint). In some embodiments, in situations where depth is defined relative to a user interface container, the depth of an object relative to the user interface container refers to the object's position along the depth dimension of the user interface container. In some embodiments, different containers can have different depth dimensions (e.g., different depth dimensions extending in different directions and / or away from different starting points from a user or a user's viewpoint). In some embodiments, when depth is defined for a user interface container, the direction of the depth dimension remains constant for the user interface container when the location of the user interface container, the user, and / or the user's viewpoint changes (e.g., or when multiple different viewers are viewing the same container in a three-dimensional environment, such as during a face-to-face collaboration session, and / or when multiple participants are in a real-time communication session with shared virtual content that includes the container). In some embodiments, in the case of curved containers (e.g., including containers with curved surfaces or curved content regions), the depth dimension optionally extends into the surface of the curved container.In some situations, z separation (e.g., the separation of two objects in the depth dimension), z height (e.g., the distance of one object from another object in the depth dimension), z position (e.g., the position of one object in the depth dimension), z depth (e.g., the position of one object in the depth dimension), or simulated z dimension (e.g., depth used as an object's dimension, an environment's dimension, a direction in space, and / or a direction in a simulated space) are used to refer to the concept of depth as described above.

[0199] In some embodiments, a user can optionally use one or more hands to interact with virtual objects in the three-dimensional environment as if the virtual objects were actual objects in the physical environment. For example, as described above, one or more sensors of the computer system optionally capture one or more of the user's hands and display a representation of the user's hands in the three-dimensional environment (e.g., in a manner similar to displaying real-world objects in the three-dimensional environment described above), or in some embodiments, due to the transparency / translucency of the user interface, or the projection of the user interface onto a transparent / translucent surface, or the portion of the display generating components displaying the projection of the user interface to the user's eyes or the field of view of the user's eyes, the user's hands are visible through the display generating components by the ability to see the physical environment through the user interface. Thus, in some embodiments, the user's hands are displayed at discrete locations in the three-dimensional environment and are treated as if they were objects in the three-dimensional environment that can interact with virtual objects in the three-dimensional environment as if they were actual physical objects in the physical environment. In some embodiments, the computer system can update the display of the representation of the user's hands in the three-dimensional environment in conjunction with the movement of the user's hands in the physical environment.

[0200] In some of the embodiments described below, for example, for purposes of determining whether a physical object is directly interacting with a virtual object (e.g., whether a hand is touching, grabbing, holding, etc., a virtual object, or whether it is within a threshold distance from the virtual object), the computer system can optionally determine an “effective” distance between the physical object in the physical world and the virtual object in the three-dimensional environment. For example, a hand directly interacting with a virtual object optionally includes one or more of the fingers of a hand pressing a virtual button, a user's hand grasping a virtual vase, two fingers of a user's hand pinching / holding an application's user interface together, and any other types of interactions described herein. For example, when determining whether and / or how a user is interacting with a virtual object, the computer system optionally determines the distance between the user's hand and the virtual object. In some embodiments, the computer system determines the distance between the user's hand and the virtual object by determining the distance between the location of the hand in the three-dimensional environment and the location of the target virtual object in the three-dimensional environment. For example, one or more hands of a user are positioned at particular positions in the physical world, which the computer system optionally captures and displays at particular corresponding positions in the three-dimensional environment (e.g., positions in the three-dimensional environment at which the hands are displayed, if the hands are virtual rather than physical hands). The positions of the hands in the three-dimensional environment are optionally compared to positions of target virtual objects in the three-dimensional environment to determine a distance between the user's one or more hands and the virtual objects. In some embodiments, the computer system optionally determines the distance between a physical object and a virtual object by comparing positions in the physical world (e.g., as opposed to comparing positions in the three-dimensional environment).For example, when determining the distance between one or more of a user's hands and a virtual object, the computer system optionally determines the corresponding location in the physical world of the virtual object (e.g., the position where the virtual object would be located in the physical world if the virtual object were a physical object rather than a virtual object), and then determines the distance between the corresponding physical position and the user's one or more hands. In some embodiments, the same technique is optionally used to determine the distance between any physical object and any virtual object. Thus, as described herein, when determining whether a physical object is in contact with a virtual object or whether a physical object is within a threshold distance of a virtual object, the computer system optionally performs any of the above-mentioned techniques to map the location of the physical object to the three-dimensional environment and / or to map the location of the virtual object to the physical environment.

[0201] In some embodiments, the same or similar techniques are used to determine where or what a user's gaze is directed at and / or where or what a physical stylus held by the user is directed at. For example, if a user's gaze is directed at a particular position in the physical environment, the computer system optionally determines a corresponding position in the three-dimensional environment (e.g., a virtual position of the gaze), and if a virtual object is located at that corresponding virtual position, the computer system optionally determines that the user's gaze is directed at that virtual object. Similarly, the computer system can optionally determine where the physical stylus is pointing in the physical environment based on the orientation of the stylus. In some embodiments, based on this determination, the computer system determines a corresponding virtual position in the three-dimensional environment that corresponds to the location in the physical environment where the stylus is pointing, and optionally determines that the stylus is pointing to the corresponding virtual position in the three-dimensional environment.

[0202] Similarly, embodiments described herein may refer to the location of a user (e.g., a user of a computer system) and / or the location of the computer system within a three-dimensional environment. In some embodiments, a user of a computer system is holding, wearing, or otherwise located at or near the computer system. Thus, in some embodiments, the location of the computer system is used as a proxy for the location of the user. In some embodiments, the location of the computer system and / or the user within the physical environment corresponds to a distinct location within the three-dimensional environment. For example, if a user stands at a location facing a distinct portion of the physical environment that is visible through the display generating components, the location of the computer system is the location within the physical environment (and its corresponding location within the three-dimensional environment) at which the user would see objects within the physical environment in the same position, orientation, and / or size (e.g., absolutely and / or relative to each other) as the objects are visible through the display generating components of the computer system within the three-dimensional environment. Similarly, if the virtual objects displayed in the three-dimensional environment were physical objects in the physical environment (e.g., the physical objects were located in the same physical environment location and had the same physical environment size and orientation as in the three-dimensional environment), the location of the computer system and / or user is the position at which the user would see the virtual objects in the physical environment in the same position, orientation, and / or size (e.g., absolutely and / or relative to each other and to real-world objects) as they were displayed by the display generation components of the computer system in the three-dimensional environment.

[0203] In this disclosure, various input methods are described with respect to interaction with a computer system. Where one example is provided using one input device or input method and another example is provided using a different input device or input method, it should be understood that each example may be compatible with, and optionally utilize, the input device or input method described with respect to the other example. Similarly, various output methods are described with respect to interaction with a computer system. Where one example is provided using one output device or output method and another example is provided using a different output device or output method, it should be understood that each example may be compatible with, and optionally utilize, the output device or output method described with respect to the other example. Similarly, various methods are described with respect to interaction with a virtual environment or a mixed reality environment via a computer system. Where one example is provided using interaction with a virtual environment and another example is provided using a mixed reality environment, it should be understood that each example may be compatible with, and optionally utilize, the method described with respect to the other example. Thus, this disclosure discloses embodiments that are combinations of features of multiple examples, without exhaustively listing all features of the embodiments in the description of each exemplary embodiment. User Interface and Related Processes

[0204] Attention is now directed to embodiments of user interfaces (“UIs”) and associated processes that may be implemented on a computer system, such as a portable multifunction device or a head-mounted device, in communication with display generating components, one or more input devices, and optionally one or more cameras.

[0205] 7A-7O, 8A-8G, 9A-9D, 10A-10D, 11A-11F, 12A-12G, and 19A-19P illustrate a three-dimensional environment viewable through a display generating component (e.g., display generating component 7100, display generating component 7100-t, or display generating component 120) of a computer system (e.g., computer system 101), and interactions occurring within the three-dimensional environment caused by user input directed at the three-dimensional environment and / or input received from other computer systems and / or sensors. In some embodiments, input is directed at a virtual object in the three-dimensional environment by a user's gaze detected within an area occupied by the virtual object or by a hand gesture performed at a location in the physical environment corresponding to the area of ​​the virtual object. In some embodiments, input is directed at a virtual object in the three-dimensional environment by a hand gesture (e.g., optionally at a location in the physical environment independent of the region of the virtual object in the three-dimensional environment) while the virtual object has input focus (e.g., while the virtual object is selected by simultaneously and / or previously detected gaze input, simultaneously or previously detected pointer input, and / or simultaneously and / or previously detected gesture input). In some embodiments, input is directed at a virtual object in the three-dimensional environment by an input device that has positioned a focus selector object (e.g., a pointer object or a selector object) at the position of the virtual object. In some embodiments, input is directed at a virtual object in the three-dimensional environment via other means (e.g., voice and / or control buttons). In some embodiments, input is directed to a representation of a physical object or a virtual object corresponding to a physical object by movement of the user's hand (e.g., movement of the entire hand, movement of the entire hand in a discrete pose, movement of one part of the user's hand relative to another part of the hand, and / or relative movement between the two hands) and / or manipulation of the physical object (e.g., touching, swiping, tapping, opening, moving towards, and / or moving relative to).In some embodiments, the computer system modifies the display in the three-dimensional environment (e.g., displays additional virtual content or stops displaying existing virtual content, and / or transitions between different immersion levels at which visual content is displayed) according to input from sensors (e.g., image sensors, temperature sensors, biometric sensors, motion sensors, and / or proximity sensors) and contextual conditions (e.g., location, time, and / or the presence of others in the environment). In some embodiments, the computer system displays some changes in the three-dimensional environment (e.g., displays additional virtual content, stops displaying existing virtual content, and / or transitions between different immersion levels at which visual content is displayed) according to input from other computers used by other users sharing the computer-generated environment with the user of the computer system (e.g., in a shared computer-generated experience, in a shared virtual environment, and / or in a shared virtual or augmented reality environment of a communication session). In some embodiments, the computer system displays changes in portions of the three-dimensional environment (e.g., displays movements, deformations, and / or changes in visual characteristics of the user interface, virtual surfaces, user interface objects, and / or virtual scenery) in accordance with input from sensors that detect movements of the user as well as movements of other people and objects that may not qualify as recognized gesture input for triggering an associated action of the computer system.

[0206] In some embodiments, the three-dimensional environment viewable via the display generation components described herein is a virtual three-dimensional environment that includes virtual objects and content at different virtual positions within the three-dimensional environment, without a representation of the physical environment. In some embodiments, the three-dimensional environment is a mixed reality environment that displays virtual objects at different virtual positions within the three-dimensional environment constrained by one or more physical aspects of the physical environment (e.g., the position and orientation of walls, floors, surfaces, the direction of gravity, the time of day, and / or the spatial relationships between physical objects). In some embodiments, the three-dimensional environment is an augmented reality environment that includes a representation of the physical environment. In some embodiments, the representation of the physical environment includes respective representations of physical objects and surfaces at different positions within the three-dimensional environment, such that the spatial relationships between different physical objects and surfaces in the physical environment are reflected by the spatial relationships between the representations of the physical objects and surfaces in the three-dimensional environment. In some embodiments, when virtual objects are positioned relative to the positions of the representations of the physical objects and surfaces within the three-dimensional environment, they appear to have corresponding spatial relationships with the physical objects and surfaces in the physical environment. In some embodiments, the computer system transitions between displaying different types of environments based on user input and / or contextual conditions (e.g., transitioning between presenting computer-generated environments or experiences with different levels of immersion and adjusting the relative prominence of audio / visual sensory input from the virtual content and from the representation of the physical environment).

[0207] In some embodiments, the display generating components include a pass-through portion through which a representation of the physical environment is displayed. In some embodiments, the pass-through portion of the display generating components is a transparent or translucent (e.g., see-through) portion of the display generating components that reveals at least a portion of the physical environment surrounding and within the user's field of view. For example, the pass-through portion is a translucent (e.g., less than 50%, 40%, 30%, 20%, 15%, 10%, or 5% opacity) or transparent portion of a head-mounted or head-up display, allowing the user to view the real world surrounding the user without removing or moving away from the head-mounted display. In some embodiments, the pass-through portion gradually transitions from translucent or transparent to fully opaque when displaying a virtual or mixed reality environment. In some embodiments, the pass-through portion of the display generating components displays a live feed of images or video of at least a portion of the physical environment captured by one or more cameras (e.g., rear-facing camera(s) of a mobile device or associated with a head-mounted display, or other cameras that provide image data to a computer system). In some embodiments, the one or more cameras are pointed at a portion of the physical environment that is directly in front of the user (e.g., behind the display generating component, relative to the user of the display generating component). In some embodiments, the one or more cameras point at a portion of the physical environment that is not directly in front of the user's eyes (e.g., in a different physical environment, or to the side or behind the user).

[0208] In some embodiments, when displaying a virtual object in a position corresponding to the location of one or more physical objects in a physical environment (e.g., a position in a virtual reality environment, a mixed reality environment, or an augmented reality environment), at least some of the virtual object is displayed in place of (e.g., replaces) a portion of a camera's live view (e.g., a portion of the physical environment captured in the live view). In some embodiments, at least some of the virtual objects and content are projected onto physical surfaces or open space in the physical environment and are visible through pass-through portions of the display generation components (e.g., as part of the camera view of the physical environment or visible through transparent or semi-transparent portions of the display generation components). In some embodiments, at least some of the virtual objects and virtual content are displayed so as to overlay a portion of the display and block the view of at least some of the physical environment that is visible through the transparent or semi-transparent portions of the display generation components.

[0209] In some embodiments, the display generating components display different views of the three-dimensional environment according to user inputs or movements to change the virtual position of the viewpoint of the currently displayed view of the three-dimensional environment relative to the three-dimensional environment. In some embodiments, when the three-dimensional environment is a virtual environment, the viewpoint moves according to a navigation or movement request (e.g., an air hand gesture and / or a gesture performed by moving one part of a hand relative to another part of the hand) without requiring movement of the user's head, torso, and / or display generating components within the physical environment. In some embodiments, movement of the user's head and / or torso relative to the physical environment and / or movement of the display generating components or other location-sensing elements of the computer system (e.g., by the user holding the display generating components or wearing an HMD) causes a corresponding movement of the viewpoint relative to the three-dimensional environment (e.g., with a corresponding change in direction, distance, speed, and / or orientation of movement), resulting in a corresponding change in the currently displayed view of the three-dimensional environment. In some embodiments, when a virtual object has a predetermined spatial relationship to the viewpoint (e.g., is fixed to the viewpoint), movement of the viewpoint relative to the three-dimensional environment causes movement of the virtual object relative to the three-dimensional environment while the position of the virtual object within the field of view is maintained (e.g., the virtual object is said to be head-locked). In some embodiments, the virtual object is body-locked to the user, moving relative to the three-dimensional environment as the user moves as a whole within the physical environment (e.g., carrying or wearing the display-generating components and / or other location-sensing components of the computer system), but does not move within the three-dimensional environment solely in response to movement of the user's head (e.g., the display-generating components and / or other location-sensing components of the computer system rotating around the user's fixed location within the physical environment).In some embodiments, the virtual object is optionally locked to another part of the user, such as the user's hand or the user's wrist, and moves within the three-dimensional environment according to movements of the part of the user in the physical environment, maintaining a preset spatial relationship between the position of the virtual object and the virtual position of the part of the user in the three-dimensional environment. In some embodiments, the virtual object is locked to a preset portion of the field of view provided by the display generation component, and moves within the three-dimensional environment according to movements of the field of view, regardless of user movements that do not cause a change in the field of view.

[0210] In some embodiments, as shown in Figures 7A-7O, 8A-8G, 9A-9D, 10A-10D, 11A-11F, 12A-12G, and 19A-19P, representation(s) of a user's hand(s), arm(s), and / or wrist(s) are included in the view of the three-dimensional environment. In some embodiments, representation(s) of a user's hand(s), arm(s), and / or wrist(s) are included in the view of the three-dimensional environment as part of a representation of the physical environment provided via a display generation component. In some embodiments, the representations are not part of the representation of the physical environment but are captured separately (e.g., by one or more cameras pointing at the user's hand(s), arm(s), and wrist(s)) and displayed within the three-dimensional environment independently of the currently displayed view of the three-dimensional environment. In some embodiments, the representation(s) include a stylized version of the arm(s), wrist(s), and / or hand(s) based on camera images captured by one or more cameras of the computer system(s) or information captured by various sensors. In some embodiments, the representation(s) replace the display of, overlap with, or block the view of a portion of the representation of the physical environment. In some embodiments, if the display generation component does not provide a view of the physical environment but rather an entirely virtual environment (e.g., no camera view and no transparent pass-through portions), a real-time visual representation (e.g., a stylized representation or segmented camera image) of one or both of the user's arms, wrists, and / or hands is optionally still displayed in the virtual environment. In some embodiments, if a representation of the user's hand is not provided within the view of the three-dimensional environment, a position corresponding to the user's hand is optionally indicated within the three-dimensional environment, for example, by the changing appearance (e.g., through changes in translucency and / or simulated reflectivity) of virtual content at a position in the three-dimensional environment that corresponds to the location of the user's hand in the physical environment.In some embodiments, a representation of the user's hand or wrist is outside the currently displayed view of the three-dimensional environment while a virtual position in the three-dimensional environment corresponding to the location of the user's hand or wrist is outside the current field of view provided via the display generation component, and the representation of the user's hand or wrist is made visible within the view of the three-dimensional environment in response to the virtual position corresponding to the location of the user's hand or wrist being moved within the current field of view due to movement of the display generation component, the user's hand or wrist, the user's head, and / or the user as a whole.

[0211] Figures 7A-7O show examples of displaying a home menu user interface within a three-dimensional environment. Figure 13 is a flow diagram of an example method 1300 for displaying a home menu user interface within a three-dimensional environment. The user interfaces of Figures 7A-7O are used to illustrate processes described below, including the process of Figure 13.

[0212] FIG. 7A illustrates an exemplary physical environment 7000 including a user 7002 interacting with a computer system 101. As shown in the examples of FIGS. 7A-7O, a display generating component 7100 of the computer system 101 is a touchscreen operated by the user 7002. The physical environment 700 includes physical walls 7004, 7006, and a floor 7008. The physical environment 7000 also includes a physical object 7014, such as a table. The user 7002 holds the display generating component 7100 in either hand 7020 or hand 7022, or both. In some embodiments, the display generating component of the computer system 101 is a head-mounted display worn on the head of the user 7002 (e.g., what is shown in FIGS. 7A-7O as visible through the display generating component 7100 of the computer system 101 corresponds to the field of view of the user 7002 when wearing the head-mounted display). In some embodiments, the display generating component is a standalone display, a projector, or another type of display. In some embodiments, the computer system communicates with one or more input devices, including cameras or other sensors and input devices, that detect the movement of the user's hand(s), the user's entire body, and / or the user's head in the physical environment. In some embodiments, the one or more input devices detect the movement of the user's hand(s), face, and / or entire body, as well as their current posture, orientation, and position. For example, in some embodiments, while the user's hand 7020 is within the field of view of one or more sensors of the HMD 7100a (e.g., within the user's field of view), a representation of the user's hand 7020′ is displayed within a user interface that is displayed on the display of the HMD 7100a (e.g., as a pass-through representation and / or a virtual representation of the user's hand 7020). For example, in some embodiments, while the user's hand 7022 is within the field of view of one or more sensors of the HMD 7100a (e.g., within the user's field of view), a representation of the user's hand 7022' is displayed within a user interface that is displayed on the display of the HMD 7100a (e.g., as a pass-through representation and / or a virtual representation of the user's hand 7022).In some embodiments, the user's hand 7020 and / or user's hand 7022, optionally in combination with gaze input, are used to perform one or more gestures (e.g., one or more air gestures). In some embodiments, the one or more gestures performed with the user's hand(s) 7020 and / or 7022 include a direct air gesture input based on the position of a representation of the user's hand(s) 7020′ and / or 7022′ displayed within a user interface on the display of the HMD 7100a. For example, the direct air gesture input is determined to be directed at a user interface object displayed in a position that intersects with the displayed position of the representation of the user's hand(s) 7020′ and / or 7022′ within the user interface. In some embodiments, one or more gestures performed with the user's hand(s) 7020 and / or 7022 include indirect air gesture input based on a virtual object displayed at a position corresponding to the position at which the user's attention is currently detected (e.g., and / or optionally not based on the position of a representation of the user's hand(s) 7020′ and / or 7022′ displayed within the user interface). For example, an indirect air gesture is performed with respect to a user interface object while detecting the user's attention to the user interface object (e.g., based on gaze or other indication of the user's attention), such as gaze and pinch (e.g., or other gesture performed with the user's hands).

[0213] In some embodiments, user input is detected via a touch-sensitive surface or touchscreen. In some embodiments, the one or more input devices include an eye-tracking component that detects the location and movement of the user's gaze. In some embodiments, the display generating components, and optionally the one or more input devices and the computer system, are part of a head-mounted device that moves and rotates with the user's head in the physical environment, changing the user's viewpoint within the three-dimensional environment provided via the display generating components. In some embodiments, the display generating components are a head-up display that does not move or rotate with the user's head or body as a whole, but optionally changes the user's viewpoint within the three-dimensional environment according to movement of the user's head or body relative to the display generating components. In some embodiments, the display generating components (e.g., a touchscreen) are optionally moved and rotated by the user's hands relative to the physical environment or relative to the user's head, changing the user's viewpoint within the three-dimensional environment according to movement of the display generating components relative to the user's head or face or relative to the physical environment.

[0214] In some embodiments, display generation component 7100 includes head-mounted display (HMD) 7100a and / or HMD 12011 (e.g., FIG. 12). For example, as shown in FIG. 7C2 (e.g., as well as FIGS. 7C3, 8C1-8C2, 9B2-9B3, 10B2-10B3, 11B2-11B3, 12B2-12G2, and 19C1-19C2), head-mounted display 7100a (e.g., and / or HMD 12011) includes one or more displays that display a representation of a portion of three-dimensional environment 7000′ corresponding to a user's perspective, while an HMD typically includes multiple displays, including a right-eye display and a separate left-eye display that display slightly different images to generate a user interface with stereoscopic depth; in the figures, a single image corresponding to a single eye's image is shown, with depth information indicated in other annotations or descriptions of the figures. In some embodiments, the HMD 7100a includes one or more sensors (e.g., one or more inward-facing and / or outward-facing image sensors 314), such as sensors 7101a, 7101b, and / or 7101c, for detecting a user's state, including face and / or eye tracking of the user (e.g., using one or more inward-facing sensors 7101a and / or 7101b) and / or tracking of the user's hand, torso, or other movements (e.g., using one or more outward-facing sensors 7101c). In some embodiments, the HMD 7100a includes one or more input devices, optionally located on the housing of the HMD 7100a, such as one or more buttons, a trackpad, a touchscreen, a scroll wheel, a rotatable and depressible digital crown, or other input device. In some embodiments, the input element is a mechanical input element, and in some embodiments, the input element is a solid-state input element that responds to a press input based on detected pressure or intensity.For example, in FIG. 7C2 (e.g., FIG. 8C1, FIG. 9B2, FIG. 10B2, FIG. 11B2, FIG. 12B2-FIG. 12B2-FIG. 12G2, and FIG. 19C1), the HMD 7100a includes one or more of button 701, button 702, and digital crown 703 (e.g., and / or other hardware input element 7108) for providing input to the HMD 7100a. It will be understood that additional and / or alternative input devices may be included in the HMD 7100a.

[0215] 7C3 (e.g., FIGS. 8C2, 9B3, 10B3, 11B3, and 19C2) shows a top view of a user 7002 within a physical environment 7000. For example, the user 7002 is wearing an HMD 7100a such that the user's hand(s) 7020 and / or 7022 (e.g., optionally used to provide air gestures or other user input) are physically present within the physical environment 7000 behind the display of the HMD 7100a.

[0216] Figure 7C2 (e.g., Figures 7C3, 8C1-8C2, 9B2-9B3, 10B2-10B3, 11B2-11B3, 12B2-12G2, and 19C1-19C2) shows display generation components of a computer system that are separate from the displays shown in Figures 7A-7C1, 7D-8B, 8C3-9B1, 9C-10B1, 10C-11B1, 11C-11F, 12B1-12G1, 19A-19B, and 19C3-19P. It will be understood that the processes, features, and functions described herein with reference to the display generation component 7100 shown in Figures 7A-7C1, 7D-8B, 8C3-9B1, 9C-10B1, 10C-11B1, 11C-11F, 12B1-12G1, 19A-19B, and 19C3-19P are also applicable to the HMD 7100a shown in Figures 7C2-7C3, 8C1-8C2, 9B2-9B3, 10B2-10B3, 11B2-11B3, 12B2-12G2, and 19C1-19C2.

[0217] 7B shows an application user interface 7018 displayed within a virtual three-dimensional environment having a top portion 7102, a middle portion 7104, and a bottom portion 7106. In addition, the virtual three-dimensional environment includes one or more computer-generated objects, also referred to as virtual objects, such as a box 7016 (e.g., which is not a representation of a physical box in the physical environment 7000). In some embodiments, the application user interface 7018 corresponds to a user interface of a software application (e.g., an email application, a web browser, a messaging application, a maps application, a video player, or an audio player, or other software application) executing on the computer system 101. In some embodiments, the application user interface 7018 is displayed in the middle portion 7104 of the virtual three-dimensional environment within a central portion of the field of view of the user of the device (e.g., providing the user 7002 with a front view of the application user interface 7018 such that the application user interface 7018 appears substantially at eye level to the user 7002 along the user's line of sight).

[0218] In some embodiments, the display generating component 7100 is provided within a housing 7024 of the computer system 101. A hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element) is provided on the housing 7024 that surrounds or encloses the display generating component 7100. The hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element) is configured to detect two or more types of input. A first type of input to the hardware input element 7108 is a press input, as indicated by the downward arrow shown in FIG. 7B. The hardware input element 7108 can also receive a second type of input that is a rotation input. For example, the hardware input element 7108 is rotatable counterclockwise about an axis of rotation, as indicated by the dotted line and curved arrow in FIG. 7B. In some embodiments, the hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element) is configured to receive a clockwise rotation input. In some embodiments, the hardware input element 7108 (e.g., a button, crown, or rotatable and depressible input element) is configured to receive both counterclockwise and clockwise rotational input. In some embodiments, the computer system 101 can detect the amount of rotation (e.g., the number of degrees the hardware input element 7108 (e.g., a button, crown, or rotatable and depressible input element) is turned) and the direction of rotation (e.g., counterclockwise or clockwise) and perform a function based on the amount and direction of rotation. In some embodiments, the hardware input element 7108 is a rotatable input element (e.g., a crown).

[0219] In response to detecting a user input on a hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element), a home menu user interface 7110 is presented within the virtual three-dimensional environment as shown in FIG. 7C (e.g., in FIGS. 7C1, 7C2, and 7C3, the user interface shown in FIG. 7C1 is displayed on the HMD 7100a of FIG. 7C2). In some embodiments, the user input is a single press input on the hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element). In some embodiments, the application user interface 7018 is closed by the single press input (e.g., before the home menu user interface 7110 is displayed or at the same time as the home menu user interface 7110 is displayed), as shown in FIG. 7C. In some embodiments, the home menu user interface 7110 is displayed in a central portion of the user's field of view, e.g., the middle portion 7104 of the virtual three-dimensional environment, and therefore is not displayed below the display of the application user interface 7018.

[0220] The home menu user interface 7110 includes a collection of various representations, such as application icons, widgets, communication options, and / or affordances for displaying VR and / or AR backgrounds. In some embodiments, the home menu user interface 7110 includes (e.g., at least) three collections of representations. FIG. 7C illustrates a first collection of representations, including representation 7112, representation 7114, representation 7116, representation 7118, representation 7120, representation 7122, representation 7124, and representation 7126, arranged within a virtual three-dimensional environment. Representations 7112-7126 can occupy any position within the virtual three-dimensional environment. Generally, the representations are presented in a middle portion 7104 of the virtual three-dimensional environment (e.g., presenting the home menu user interface 7110 substantially in a central portion of the user's 7002 field of view and displaying representations 7110-7126 substantially at eye level of the user's 7002). Presenting the home menu user interface 7110 in a substantially central portion of the field of view of the user 7002 of the device improves operational efficiency by eliminating the need for further input (e.g., lowering or raising the user's 7002 gaze, or visually exploring the home menu user interface 7110, and / or tilting / rotating the user's 7002 head to focus on the home menu user interface 7110), reducing the amount of time required to begin navigating within the home menu user interface 7110 and improving the operational efficiency of the computer system 101.

[0221] In some embodiments, representations 7112-7126 are arranged in a regular pattern (e.g., in a grid pattern, along a line, radially, circumferentially), and in some embodiments, representations 7112-7126 correspond to various software applications that may be running on computer system 101 (e.g., an email application, a web browser, a messaging application, a map application, a video or audio player, or other software application).

[0222] The home menu user interface 7110 includes a tab 7132 for displaying representations of software applications, a tab 7134 for displaying representations of one or more other people, and a tab 7136 for displaying one or more virtual environments that may be displayed as (or within) a virtual three-dimensional environment, each representation for initiating or maintaining (e.g., continuing) communication with a corresponding person (e.g., a representation of one or more other users that interact with or can interact with user 7002). In some embodiments, the virtual environment includes virtual content that is computer-generated content that is distinct from the pass-through portion of the physical environment. In some embodiments, additional tabs for displaying other representations are provided within the home menu user interface 7110. In some embodiments, one or more of tab 7132, tab 7134, or tab 7136 are not presented in the home menu user interface 7110. FIG. 7C shows tabs 7132, tab 7134, and tab 7136 arranged substantially linearly on the left portion of the home menu user interface 7110. In some embodiments, tab 7132, tab 7134, and tab 7136 are displayed in other portions (e.g., above, to the right, below) of home menu user interface 7110. In some embodiments, tab 7132, tab 7134, and tab 7136 are not arranged in any particular spatial order relative to one another.

[0223] In response to detecting user input directed at (e.g., corresponding to or on) tab 7134, home menu user interface 7110 updates to display representations of one or more other people, as shown in FIG. 7D , each representation for initiating or maintaining communication with the corresponding person (e.g., representations of one or more other users who interact or can interact with user 7002). For example, FIG. 7D shows representation 7138 of a first user, representation 7140 of a second user, and representation 7142 of a third user. In some embodiments, representation 7138, representation 7140, and representation 7142 are displayed in a central portion of user 7002's field of view, in intermediate portion 7104 of the virtual three-dimensional environment (e.g., first user's representation 7138, second user's representation 7140, and representation 7142 are presented at substantially eye level with respect to user 7002).

[0224] In some embodiments, representations of one or more users who are currently in a copresence session with user 7002 are displayed on the home menu user interface 7110 (e.g., one or more of the first user, the second user, or the third user are in a copresence session with user 7002). In some embodiments, in a copresence session (or spatial communication session), representations of users are positioned in the shared three-dimensional environment relative to one another (e.g., such that each user sees the other user's position relative to the individual user's perspective). For example, user 7002's perspective includes a representation of the first user to the left (or right) of the representation of the second user. Copresence sessions and spatial communication sessions are further described with reference to FIG. 9D .

[0225] In some embodiments, representations of one or more users who are not yet in a coexistence session but who can enter a coexistence session with user 7002 (e.g., one or more of a first user, a second user, or a third user who are not yet in a coexistence session with user 7002 but who can join a coexistence session with user 7002) are additionally displayed on the home menu user interface 7110.

[0226] In some embodiments, representations of one or more users in the user's 7002 contact list are additionally displayed on the home menu user interface 7110 (e.g., one or more of the first user, the second user, or the third user are in the user's 7002 contact list). By providing user input directed to (e.g., corresponding to, or on) one or more representations of the one or more other users in the home menu user interface 7110, the user 7002 can initiate or maintain communication and / or interact with the one or more other users. For example, in response to user input directed to (e.g., corresponding to, or on) the representation 7138, the computer system 101 facilitates the user 7002 to communicate and / or interact with the first user in the virtual three-dimensional environment. In some embodiments, instead of an entirely virtual three-dimensional environment, the user 7002 communicates and / or interacts with the first user in a mixed reality environment that includes sensory input from the physical environment 7000 or a representation thereof, in addition to including computer-generated sensory input (e.g., box 7016).

[0227] In some embodiments, user input directed at a representation within a home menu user interface or other user interface includes a pinch input, a tap input, or a gaze input.

[0228] In response to detecting user input directed at (e.g., corresponding to, or on) tab 7136, home menu user interface 7110 is updated to display representations (sometimes referred to as options) of virtual environments that may be displayed as (or within) the virtual three-dimensional environment, as shown in FIG. 7E. Representation 7144 corresponds to a virtual environment offering a beach view. Representation 7146 corresponds to a virtual environment offering an office setting. Displaying home menu user interface 7110 that provides quick access to a collection of selectable virtual environments provides a way to modify the user's virtual experience without displaying additional controls, minimizing the number of inputs required to select a desired virtual environment, thereby improving the performance and operating efficiency of computer system 101.

[0229] In some embodiments, representation (e.g., option) 7144 and representation (e.g., option) 7146 are displayed in a middle portion 7104 of the virtual three-dimensional environment, in a central portion of the field of view of user 7002 (e.g., option 7144 and option 7146 are presented at substantially eye level to user 7002).

[0230] In response to detecting a user selection of a virtual environment providing an office setting (e.g., computer system 101 detects user input corresponding to or on option 7146), the virtual three-dimensional environment is updated to include office table 7148 and display board 7150, as shown in FIG. 7F. In some embodiments, virtual objects, such as box 7016, present prior to the display of a particular virtual environment continue to persist after the selection of the virtual environment. For example, display board 7150 is displayed as being placed on and supported by box 7016. In some embodiments, the virtual environment includes virtual objects that allow user interaction (e.g., user 7002 can rearrange the conference chairs surrounding office table 7148, user 7002 can rearrange display board 7150, user 7002 can rearrange office table 7148). In some embodiments, the virtual environment includes virtual objects that do not allow user interaction (e.g., user 7002 cannot rearrange any of the items in the virtual environment). In some embodiments, virtual objects such as box 7016 that are present before the display of a particular virtual environment cease to be displayed after selection of the virtual environment. For example, in such an embodiment, once display board 7150 and office table 7148 are displayed, box 7016 is no longer displayed.

[0231] In response to detecting user input corresponding to or on tab 7132, home menu user interface 7110 is updated to return to displaying a representation of the software application within the virtual three-dimensional environment, as shown in FIG. 7C.

[0232] From the home menu user interface 7110, the user 7002 can access various collections of representations by selecting individual tabs (e.g., a collection of representations of software applications is visible by selecting tab 7132, a collection of representations of one or more other users with whom the user 7002 interacts or can interact is visible by selecting tab 7134, and a collection of representations of one or more selectable virtual environments is visible by selecting tab 7136). A single input (e.g., a single press input) to a hardware input element 7108 (e.g., a button, crown, or rotatable and depressible input element) provides the user 7002 with the home menu user interface 7110 from which the user 7002 can navigate to other software applications, interact with other users, or experience different virtual environments. By allowing a single input to trigger the display of the home menu user interface 7110, the user 7002 can quickly access and navigate the collection of applications within the home menu user interface 7110 and / or modify the user's virtual environment and / or interact with additional users regardless of what process is ongoing (e.g., while a first application is running) without displaying additional controls, minimizing the number of inputs required to select a desired action and improving the performance and efficiency of the computer system 101. Furthermore, providing a home menu user interface 7110 with sections that can be navigated by the user in response to a first input efficiently provides the user with a wider range of applications, people, virtual environments, or other actions than is possible with a static home menu user interface.

[0233] 7B and 7C, the application user interface 7018 is hidden when the home menu user interface 7110 is displayed (e.g., the application user interface 7018 is hidden before the home menu user interface 7110 is displayed, or the application user interface 7018 is hidden simultaneously with displaying the home menu user interface 7110). In some embodiments, even when the application user interface 7018 is hidden, the application associated with the application user interface 7018 continues to run in the background. In contrast, FIGS. 7G-7I show embodiments in which different user interfaces of the same software application are presented to the user 7002 while the user 7002 navigates the home menu user interface 7110.

[0234] 7G shows an application user interface 7152 displayed within a virtual three-dimensional environment that includes a computer-generated virtual object, box 7016. The application user interface 7152 is a user interface for an audio player software application running on computer system 101. In some embodiments, the application user interface 7152 is displayed within a middle portion 7104 of the virtual three-dimensional environment, substantially within a central portion of the field of view of the user 7002 (e.g., the application user interface 7152 appears substantially at eye level to the user 7002).

[0235] In response to detecting a user input directed at the hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element), a home menu user interface 7110 is presented within the virtual three-dimensional environment, as shown in FIG. 7H. In some embodiments, the user input is a single press input on the hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element). In some embodiments, the application user interface 7152 is closed by the single press input (e.g., before the home menu user interface 7110 is displayed or simultaneously with displaying the home menu user interface 7110) and replaced by a mini player user interface 7154, as shown in FIG. 7H. The mini player user interface 7154 occupies a smaller area of ​​the virtual three-dimensional environment compared to the application user interface 7152. In some embodiments, the mini player user interface 7154 is displaced to a more peripheral portion of the virtual three-dimensional environment than the application user interface 7152, which was displayed in a central portion of the user's 7002 field of view. In some embodiments, the mini player user interface 7154 is displayed in substantially the same position as the application user interface 7152 (e.g., the central location of the application user interface 7152 substantially coincides with the central location of the mini player user interface 7154).

[0236] Presenting the mini player user interface 7154 provides a way for the user 7002 to multitask and continue (at least in some capacity) their media experience while virtually navigating through the home menu user interface 7110, which improves the performance and efficiency of the computer system 101. Displaying the mini player user interface 7154 (e.g., an audio mini player) allows user control over the media experience (e.g., by providing playback controls within the mini player) and / or indicates to the user the current “location” of their media experience (e.g., by displaying a time index or, in the case of video content, a representation of the current video frame) while the user navigates the home menu user interface without displaying additional controls. Although not shown in Figures 7H-7J, in some embodiments, the mini player user interface includes providing a video picture-in-picture (PiP) player, optionally including a representation of the current video frame.

[0237] User 7002 can scroll through representations of software applications displayed in home menu user interface 7110. For example, a first collection of representations of software applications includes representation 7112, representation 7114, representation 7116, representation 7118, representation 7120, representation 7122, representation 7124, and representation 7126. In some embodiments, the first collection of representations of software applications includes static representations (e.g., static application icons, or static content snapshots, or other static information) of the software applications located in a first area of ​​the virtual three-dimensional environment. In some embodiments, the first collection of representations of the software applications is dynamic representations (e.g., animated representations, cyclically animated representations). In response to detecting a user input (e.g., a user gesture) to navigate to a different collection of representations of the software application, home menu user interface 7110 presents a second collection of representations of the software application, including representation 7156, representation 7158, representation 7160, representation 7162, representation 7164, representation 7166, representation 7168, and representation 7170, representation 7172, and representation 7174, as shown in Figure 7I. In some embodiments, the user input is a drag gesture, indicated by the arrow pointing left in Figure 7H, that allows the representations of the software application to be scrolled (e.g., the drag gesture is interpreted by computer system 101 as an instruction to scroll the representations of the software application).

[0238] Providing a second collection of representations of software applications within substantially the same area as a first collection of representations of software applications (e.g., the first collection of representations is replaced by the second collection of representations) allows the user 7002 to navigate continuously through the multiple representations of the software applications without being overwhelmed by the simultaneous / parallel display of multiple representations within the virtual three-dimensional environment, and assists in the timely selection of a desired action without displaying additional controls. Furthermore, the scrollable home menu user interface efficiently provides the user with a wider range of applications, people, virtual environments, or other actions than is possible with a static, non-scrollable home menu user interface.

[0239] In some embodiments, different collections of representations of software applications are arranged on respective pages of the home menu user interface 7110. The user 7002 can access individual pages, e.g., pages containing collections of representations of software applications in the home menu user interface 7110. In some embodiments, the pages are ordered in a particular directionality, making it easier for the user to navigate to particular (e.g., previously accessed) pages. The user's 7002 navigation through the home menu user interface 7110 can result in the display of the home menu user interface 7110 being closed (e.g., when an immersive experience begins with a representation of a software application). When the user 7002 returns to the home menu user interface 7110 within a preset time threshold (e.g., less than one hour, less than ten minutes, less than one minute), the last accessed section of the home menu user interface (e.g., a particular page of an application, a section displaying a list of contacts with which the user 7002 can initiate communication, a section displaying various selectable virtual environments) is maintained and displayed to the user 7002. In contrast, if the user 7002 returns to the home menu user interface 7110 after a predetermined time threshold has passed (e.g., the next day, the next session, or more than an hour), the display of the home menu user interface 7110 is reset to a predetermined section (e.g., the first page of the applications representation). In some embodiments, the preset time threshold depends on the section of the home menu user interface (e.g., the Applications section resets within a smaller time threshold compared to the People / Contacts section).Retaining information about the last accessed section on the home menu user interface 7110 reduces disruption and allows the user 7002 to quickly return to a previously accessed portion of the home menu user interface 7110 without displaying additional controls when the user 7002 accesses the home menu user interface 7110 within a preset time threshold after leaving the home menu user interface 7110. Such a feature helps save the user time and eliminates the need to re-navigate various sections of the home menu user interface 7110 to return to a previously accessed section of the home menu user interface 7110 when the user temporarily leaves the home menu user interface to perform a different operation, such as an operation in a particular application.

[0240] In response to detecting a second user input to the hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element) while the home menu user interface 7110 is displayed, the home menu user interface 7110 is closed, as shown in FIG. 7J. In some embodiments, the second user input is a second press input to the hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element). In some embodiments, closing the home menu user interface 7110 does not affect the display of virtual objects (e.g., box 7016) within the virtual three-dimensional environment. Persisting the mini-player after the home menu user interface 7110 is closed provides the user 7002 with an uninterrupted media experience, even after navigation within the virtual environment via the home menu user interface 7110 has ended, thereby improving the operational efficiency of the computer system 101. For example, the user does not need to restart a media application after navigating and then closing the home menu user interface 7110.

[0241] In response to detecting a third user input to hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element), a view of three-dimensional environment 7128 is visible to user 7002 via display generation component 7100 of computer system 101, as shown in Figure 7K. Three-dimensional environment 7128 of Figure 7K optionally includes representations of objects in a physical environment, such as physical environment 7000 (e.g., as captured by one or more cameras of computer system 101). For example, in Figure 7K, three-dimensional environment 7128 includes representation 7014' of physical object 7014, representations 7004' and 7006' of physical walls 7004 and 7006, respectively, and representation 7008' of physical floor 7008. In some embodiments, by detecting a third user input to hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element), computer system 101 provides a mixed reality experience to user 7002. For example, both a computer-generated virtual object (e.g., box 7016) and a representation of an object in physical environment 7000 are displayed to user 7002. For example, a first portion of the virtual three-dimensional environment includes a computer-generated virtual object that is not present in physical environment 7000, and a second portion of the virtual three-dimensional environment includes a representation of an object in physical environment 7000 that is displayed as three-dimensional environment 7128.

[0242] In some embodiments, instead of using three consecutive inputs to a hardware input element 7108 (e.g., a button, crown, or rotatable and depressable input element) to display the user interface shown in FIG. 7J (e.g., after two consecutive inputs to the hardware input element 7108 (e.g., a button, crown, or rotatable and depressable input element)) and FIG. 7K (e.g., after three consecutive inputs to the hardware input element 7108 (e.g., a button, crown, or rotatable and depressable input element)), the user interface shown in FIG. 7K is displayed after two consecutive inputs (e.g., the second input is a long press on the hardware input element 7108 (e.g., a button, crown, or rotatable and depressable input element)), and the user interface shown in FIG. 7J is skipped.

[0243] Closing the home menu user interface 7110 by replacing the display of the home menu user interface with a presentation of a pass-through portion of the computer system 101's physical environment (e.g., a head-mounted device) via a display generation component improves the safety of the user 7002 and allows the user 7002 to be aware of the computer system 101's physical environment (through the pass-through portion of the computer system 101's physical environment). For example, the user 7002 may need to respond to an emergency or other situation that requires the user 7002's attention or requires the user 7002 to interact with the physical environment after the user has finished navigating the home menu user interface 7110. By activating the display of the pass-through portion using the second input or the third input, the user 7002 can exit the virtual environment and view at least a portion of the physical environment without displaying additional controls. In some embodiments, in addition to presenting the pass-through portion, the home menu user interface 7110 also ceases displaying the virtual environment in which it is displayed. By ceasing the display of the virtual environment while closing the home menu user interface 7110, the user can exit the virtual environment and view at least a portion of the physical environment (e.g., close the display of the virtual environment) by having a second input function similar to an input to the escape button, without displaying additional controls.

[0244] In some embodiments, the display generating component includes a pass-through portion through which a representation of the physical environment is displayed or visible. In some embodiments, the pass-through portion of the display generating component is a transparent or translucent (e.g., see-through) portion of the display generating component that reveals at least a portion of the surroundings and physical environment within the user's field of view. For example, the pass-through portion is a portion of a head-mounted or head-up display that is made translucent (e.g., less than 50%, 40%, 30%, 20%, 15%, 10%, or 5% opacity) or transparent, so that the user can see through it into the real world surrounding the user without removing the head-mounted display or moving away from the head-up display (sometimes referred to as an "optical pass-through"). In some embodiments, the pass-through portion gradually transitions from translucent or transparent to fully opaque when displaying a virtual or mixed reality environment. In some embodiments, the pass-through portion of the display generating components displays a live feed of images or video of at least a portion of the physical environment captured by one or more cameras (e.g., rear-facing camera(s) associated with a mobile device or head-mounted display, or other cameras that provide image data to a computer system) (sometimes referred to as a "virtual pass-through"). In some embodiments, the one or more cameras are pointed at a portion of the physical environment that is directly in front of the user (e.g., behind the display generating components, relative to the user of the display generating components). In some embodiments, the one or more cameras point at a portion of the physical environment that is not directly in front of the user's eyes (e.g., in a different physical environment, or to the side or behind the user).

[0245] In some embodiments, when displaying a virtual object in a position corresponding to the location of one or more physical objects in a physical environment (e.g., a position in a virtual reality environment, a mixed reality environment, or an augmented reality environment), at least some of the virtual object is displayed in place of (e.g., replaces) a portion of a camera's live view (e.g., a portion of the physical environment captured in the live view). In some embodiments, at least some of the virtual objects and content are projected onto physical surfaces or open space in the physical environment and are visible through pass-through portions of the display generation components (e.g., as part of the camera view of the physical environment or visible through transparent or semi-transparent portions of the display generation components). In some embodiments, at least some of the virtual objects and virtual content are displayed so as to overlay a portion of the display and block the view of at least some of the physical environment that is visible through the transparent or semi-transparent portions of the display generation components.

[0246] While in mixed reality / pass-through mode (e.g., while displaying the three-dimensional environment 7128), in response to detecting user input to a hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element), a home menu user interface 7110 is overlaid on the three-dimensional environment 7128, as shown in FIG. 7L. In some embodiments, the user input is a press input to a hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element). In some embodiments, the home menu user interface 7110 is presented in a middle portion of the three-dimensional environment 7128. In response to detecting user input (e.g., a user gesture) directed at the representation 7124, the computer system 101 causes a software application associated with the representation 7124 to be displayed. In some embodiments, the representation 7124 corresponds to an audio player application, and user input selecting the representation 7124 causes a mini player user interface 7154 to be presented simultaneously with the home menu user interface 7110, as shown in FIG. 7M.

[0247] In response to detecting user input (e.g., a user gesture) directed at representation 7126, computer system 101 causes a software application associated with representation 7126 to be displayed. In some embodiments, representation 7126 corresponds to a web browsing application, and a user gesture to select representation 7126 causes web browsing application user interface 7178 to be displayed, as shown in FIG.

[0248] In some embodiments, characteristics of the software applications determine whether the display of the home menu user interface 7110 is maintained. For example, the display of the home menu user interface 7110 is maintained when a representation of an audio player application (or a video player application) is selected, and the display of the home menu user interface 7110 ceases when a representation of a web browsing application (or a document editing application, a calendar application, or an email application) is selected. In some embodiments, the display of the home menu user interface 7110 is maintained until a predetermined number of applications are selected (e.g., the display of the home menu user interface 7110 is maintained until a representation of a second software application is selected, the display of the home menu user interface 7110 is maintained until a representation of a third software application is selected, or the display of the home menu user interface 7110 is maintained until a representation of a fourth software application is selected).

[0249] 7L and 7M , in some embodiments, an application (e.g., an audio player application) is already running on computer system 101 before home menu user interface 7110 is displayed in response to a first user input. In response to detecting user input on the application (e.g., a user gesture, a pinch-and-drag gesture), a first user interface object (e.g., an instance of the application or an object extracted or dragged from the application, sometimes referred to herein as a “quick look object”) is extracted from the application and displayed. In some embodiments, the quick look object is an object extracted from the application before a portion of the application (e.g., all of the application) is replaced with the display of home menu user interface 7110, and the quick look object continues to be displayed after the portion of the application (e.g., all of the application) is replaced with the display of home menu user interface 7110.

[0250] For example, the first user interface object may be a music track from a music album being played on an audio player application. Alternatively, the first user interface object may be a portion of text extracted or dragged from a document editing application running on computer system 101. Alternatively, the first user interface object may be a web page extracted or dragged from a web browsing application running on computer system 101. Alternatively, the first user interface object may be an image file or video file extracted or dragged from a media viewing application (e.g., a web browsing application, a video player, a photo viewing application) running on computer system 101.

[0251] Providing the first user interface object allows the user 7002 to maintain use of the application (e.g., use an instance of the application) or maintain a view of data associated with the application even after the application's main user interface has been closed (e.g., the quick look object is an instance cloned from the application). Maintaining the view of such user interface objects allows the user 7002 to continue to control the application while multitasking (e.g., navigating on the home menu user interface 7110) without displaying additional controls. The multitasking functionality is not affected by the presence of the home menu user interface 7110, which is triggered by the first input, improving the performance and efficiency of the computer system 101.

[0252] In some embodiments, in response to detecting a user input (e.g., a user gesture) directed at a representation of the second application displayed within the home menu user interface 7110, the second application is initiated (e.g., begins execution) while the quick look object is displayed. Launching the second application from the home menu user interface 7110 while the first user interface object is displayed (e.g., remains displayed) eliminates the need to display additional controls. Maintaining the display of the first user interface object provides the user 7002 with a visual reminder that may be useful in selecting a preferred second application. In some circumstances, the displayed first user interface object provides information that can be used in the second application without requiring the user to restart the first application after the second application is launched, allowing multiple tasks to be accomplished simultaneously and improving the performance and operating efficiency of the computer system 101.

[0253] In some embodiments, the user 7002 can direct a first user interface object to a second application (e.g., drag a quick look object to the second application) to perform an action in the second application based on the first user interface object. For example, the quick look object can be an image from a media viewing application, and the second application is a text messaging application or a document editing application. Sending the image to the document editing application can add the image directly to a document opened in the document editing application.

[0254] In some embodiments, the first user interface object is closed when the home menu user interface 7110 is closed (e.g., by input to the hardware input element 7108 (e.g., a button, crown, or rotatable and depressible input element)). By closing both the first user interface object and the home menu user interface 7110 using a single input (e.g., a second button press), the need to display additional controls is eliminated. The user does not have to waste time separately closing the first user interface object and / or navigating to special user interface control elements to manually close the first user interface object, thereby improving the performance and operational efficiency of the computer system 101.

[0255] After closing the home menu user interface 7110 (e.g., as shown in FIG. 7N ), a subsequent user input to the hardware input element 7108 (e.g., a button, crown, or a rotatable and depressible input element) causes the home menu user interface 7110 to be displayed within the three-dimensional environment 7128. The additional input allows the home menu user interface 7110 to be redisplayed without displaying additional controls after the home menu user interface 7110 has been closed. Enabling additional input to redisplay the home menu user interface 7110 provides an easy way for the user 7002 to return to the home menu user interface 7110 based on a single input, regardless of what process the user 7002 was using on the computer system 101 after closing the home menu user interface 7110. The input serves as a general-purpose mechanism that allows the user 7002 to navigate directly to the top-level home menu user interface 7110 and then navigate through different collections of representations (e.g., representations of applications, people, and / or virtual environments) within the home menu user interface 7110 without displaying additional controls.

[0256] The hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element) is configured to receive various user inputs. For example, in response to detecting two consecutive press inputs in proximity (e.g., two press inputs within 2 seconds of each other, two press inputs within 1 second of each other, two press inputs within 0.5 seconds of each other), as shown in FIG. 7O, an application management user interface (e.g., the system interface 7180) is presented within a virtual three-dimensional environment. In some embodiments, the system interface 7180 is overlaid on an application (which may include two or more applications) running in the foreground (e.g., an audio player / music application and a web browser application as shown in FIGS. 7N and 7O) and on the three-dimensional environment 7128 (e.g., presented at a location within the field of view of the user 7002 closer to the user 7002 than the two applications running in the foreground). Using different types of inputs on a single input device to trigger multiple system operations (e.g., displaying a force quit menu) (e.g., triggering operations not specific to a particular application) reduces the number of separate input devices that would otherwise be required to achieve different tasks (e.g., N input devices can result in M operations, where N < M). Reducing the number of input devices required to provide the user with direct access to various system functions helps reduce physical clutter on the device, free up more physical space on the device, and prevent accidental inputs from inadvertent contact. Reducing the number of input devices also reduces the need to provide additional hardware wiring within the device. Instead, the processor can be programmed to interpret separate inputs from a smaller number of input devices. Using the same user input device, the user 7002 can quickly reach the application management user interface without the need to present additional / intermediate controls.

[0257] In the example shown in FIG. 7O, system interface 7180 provides a force quit menu that shows all applications currently running on computer system 101. The applications include both applications running in the foreground and applications running in the background (e.g., email applications, document editing applications, and calendar applications). User 7002 can close particular applications by providing a user gesture to an exit button 7182 associated with each application. In some embodiments, the force quit menu includes a button to close all applications running on computer system 101. In some embodiments, the application management user interface is a system interface that enables multitasking on computer system 101.

[0258] In some embodiments, a system user interface (e.g., an application-independent user interface, a user interface used to apply system-wide settings for the computer system 101) responds to user input on an input device (e.g., a hardware input element 7108 (e.g., a button, crown, or rotatable and depressible input element)) in the same manner as an application user interface (e.g., a press input on a hardware input element 7108 (e.g., a button, crown, or rotatable and depressible input element) while the system user interface is displayed causes at least a portion of the system user interface to be swapped with a home menu user interface). Streamlining the display of the home menu user interface 7110 (e.g., by standardizing) in response to detecting a separate input that is the same type of input as the first input, regardless of the currently displayed user interface (e.g., a system user interface or an application user interface), reduces the number of separate control elements required by the device and allows the user 7002 to navigate through different collections of representations (e.g., representations of applications, people, and virtual environments) without displaying additional controls.

[0259] 8A-8G illustrate examples of performing different actions based on input to an input device depending on the current display mode. Figure 14 is a flow diagram of an example method 1400 for performing different actions based on input to an input device depending on the current display mode. The user interfaces of Figures 8A-8G are used to illustrate processes described below, including the process shown in Figure 14.

[0260] FIG. 8A shows an application user interface 8000 displayed within a virtual three-dimensional environment. The application user interface 8000 completely occupies the entire field of view of a user 7002 within the virtual three-dimensional environment. For example, the application user interface 8000 is displayed in a top portion 7102, a middle portion 7104, and a bottom portion 7106 of the virtual three-dimensional environment. Various portions of the virtual three-dimensional environment are described with reference to FIGS. 7A-7B. In some embodiments, the application user interface 8000 corresponds to a user interface of a software application (e.g., a video player, a web browser, a map application, a video conferencing application, a messaging application, an email application, an audio player, or other software application) executing on the computer system 101. In some embodiments, the virtual three-dimensional environment includes virtual content 8002 displayed by (or within) the application user interface 8000 of the application executed by the computer system 101. In some embodiments, the computer-generated virtual content (e.g., box 7016) displayed within the virtual three-dimensional environment has no counterpart in the physical environment 7000 and / or is not part of the application corresponding to the application user interface 8000. Optionally, one or more elements of the computer-generated virtual content are overlaid on top of the immersive application user interface 8000 (e.g., presented closer to the viewpoint of the user 7002 within the field of view of the user 7002 compared to the application user interface 8000).

[0261] When an application is presented in an immersive mode (e.g., in a fully immersive mode or providing a fully immersive experience to the user 7002), the application user interface associated with the application completely fills the user's field of view (e.g., a field of view spanning 180° from a particular orientation of the user's head (e.g., from left shoulder to right shoulder)). In some embodiments, the fully immersive mode provides a field of view having a 180° field of view around the head of the user 7002. In some embodiments, a full 360° field of view is provided to the user in all directions as the user rotates their head and / or body. In some embodiments, the immersive mode is also described as a "full screen" display mode that completely occupies the entire display provided by display generation components of (or coupled to) the computer system 101. In some embodiments, the first display mode includes an immersive mode in which only the content of the application user interface (e.g., application user interface 8000) is displayed (e.g., the content of the application user interface is displayed within the user's 7002 field of view without displaying any content other than the application user interface content, and / or the content of the application user interface occupies substantially all of the user's 7002 field of view).

[0262] In some embodiments, in addition to completely filling the user's field of view, when an application is presented in immersive mode, audio input from the physical environment is canceled out or substantially reduced (e.g., by more than 60%, 70%, or 80%) or prevented from reaching the user. Similarly, in some embodiments, when application user interface 8000 is presented to a user in immersive mode, audio input from any other applications running on computer system 101 is not provided to the user. In some embodiments, computer-generated virtual content (e.g., box 7016) provides notifications (e.g., incoming communication requests, updates from another application running in the background of computer system 101) to user 7002 while user 7002 is in immersive mode.

[0263] While the display generation component is presenting content to the user 7002 in immersive mode, in response to detecting a user input (e.g., a single press input) on a hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element), the application user interface 8000 is closed by the single press input and replaced with a resized application user interface 8004, as shown in FIG. 8B . In some embodiments, similar content as that displayed in the application user interface 8000 is displayed in the resized application user interface 8004. For example, the virtual content 8002 provided by the application user interface 8000 continues to be displayed in the resized application user interface 8004, albeit at a reduced scale. In some embodiments, virtual content such as the box 7016 previously displayed in the immersive application user interface 8000 continues to be displayed (e.g., displayed in the same location and / or with the same visual characteristics).

[0264] 8B , in some embodiments, the resized application user interface 8004 reveals the underlying virtual environment (e.g., an office virtual environment including conference chairs surrounding an office table 7148) that was previously occluded by the immersive application user interface 8000. In some embodiments, the resized application user interface 8004 is displayed in a middle portion 7104 of the virtual three-dimensional environment near a central portion of the user's 7002 field of view. In some embodiments, the resized application user interface 8004 is in a “non-full screen” display mode because the content from the resized application user interface 8004 does not completely occupy the entire display provided by the display generation components of the computer system 101. The display generation components also present the office virtual environment, and thus not all portions of the virtual environment display content from the resized application user interface 8004. In other words, the second display mode includes a non-immersive mode in which the individual content of the application user interface (e.g., resized application user interface 8004) and other content are displayed simultaneously (e.g., the content of resized application user interface 8004 and content other than the content of the resized application user interface are both displayed within the field of view of user 7002, and the content of resized application user interface 8004 occupies only a portion of the field of view of user 7002).

[0265] The virtual environment (e.g., an office virtual environment) forms part of the user experience when interacting with the application user interface in a non-immersive mode. Displaying the application user interface (e.g., a resized application user interface 8004) in the non-immersive experience while maintaining display of the virtual environment after a first input is detected minimizes interruptions to the user.

[0266] The display generation component presents both the virtual environment and the resized application user interface 8004 to the user 7002, as shown in FIG. 8B , but in response to detecting a second user input (e.g., a second single press input) on the hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element), the resized application user interface 8004 is closed by the second single press input. For example, the resized application user interface 8004 is closed before or simultaneously with displaying the home menu user interface 7110. The resized application user interface 8004 is replaced by the home menu user interface 7110 presented within the virtual three-dimensional environment while the display of the virtual environment (e.g., the office virtual environment) is maintained, as shown in FIG. 8C (e.g., FIGS. 8C1, 8C2, and 8C3, in which a user interface similar to the user interface shown in FIG. 8C3 is shown on the HMD 7100a of FIG. 8C1). In some embodiments, the home menu user interface 7110 is displayed in a central portion of the user's field of view, e.g., the middle portion 7104 of the virtual three-dimensional environment, and therefore does not appear below the display of a previously displayed resized application user interface 8004.

[0267] Continuing to display the virtual environment (e.g., the office virtual environment) while the home menu user interface is displayed minimizes interruptions to the user while navigating the home menu user interface 7110, without displaying additional controls. By maintaining the display of the virtual environment, the user does not need to reinitialize the virtual environment after navigation in the home menu user interface 7110, improving the performance and efficiency of the computer system.

[0268] As described above with reference to FIGS. 7B-7E , the home menu user interface 7110 provides access to different collections of user-navigable items, including applications, people (e.g., representations of specific people) or contact lists, and virtual environments. In some embodiments, the home menu user interface 7110 includes affordances for displaying application icons, widgets, communication options, and / or XR backgrounds. In some embodiments, the home menu user interface 7110 is overlaid on an application user interface (e.g., resized application user interface 8004). In some embodiments, objects in the home menu user interface 7110 (e.g., application icons, virtual user interface icons, and other objects) are either opaque or partially transparent, thereby occluding or obscuring corresponding portions of the application user interface (e.g., resized application user interface 8004). For example, those portions of the application user interface positioned behind the home menu user interface 7110 are occluded or obscured. In some embodiments, the home menu user interface 7110 includes a platter with multiple objects thereon, and the platter is either opaque or partially transparent, thereby blocking or obscuring those portions of application user interfaces positioned behind the home menu user interface 7110.

[0269] In response to detecting a user input (e.g., a tap input, a long press input, or a pinch and drag input) directed at a particular representation of the software application while the home menu user interface 7110 is displayed, an application user interface of the software application is displayed (e.g., causing the software application corresponding to the representation to run in the foreground as the focused application in the foreground of the three-dimensional environment).

[0270] By allowing a single input to trigger the display of the home menu user interface, a user can quickly access and navigate the collection of expressions within the home menu user interface and interact with others without displaying additional controls, regardless of what operation is in progress (e.g., while a first application is running), minimizing the number of inputs required to select a desired operation and improving the performance and operating efficiency of the device (e.g., a computer system).

[0271] In some embodiments, the home menu user interface 7110 is world-locked. For example, after the home menu user interface 7110 is presented (e.g., in response to a press input on a hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element)), as shown in FIG. 8C , if the user 7002 rotates their head (e.g., to the left in FIG. 8C , toward the office table 7148), the home menu user interface 7110 remains in substantially the same position within the virtual three-dimensional environment, such that the representation 7118 is no longer displayed to the user 7002 once the representation 7118 leaves the user's 7002's field of view due to the user's 7002's head rotation. In some embodiments, the home menu user interface 7110 is head-locked, such that after the home menu user interface 7110 is presented, the home menu user interface 7110 reappears in the same portion of the user's 7002's field of view regardless of how the user 7002 moves their head.

[0272] In some embodiments, the resized application user interface 8004 shown in FIG. 8B responds to user input provided to the hardware input element 7108 (e.g., a button, crown, or rotatable and depressible input element) in a similar manner to the application user interface 7018 shown in FIG. 7B . In some embodiments, the box 7016 is displayed by a display generation component in both FIG. 7B and FIG. 8B . In some embodiments, the presence of an office virtual environment, including conference chairs surrounding an office table 7148, does not affect the display behavior (e.g., of the home menu user interface 7110) triggered by a press input to the hardware input element 7108 (e.g., a button, crown, or rotatable and depressible input element). In some embodiments, virtual content such as the box 7016 continues to be displayed when the home menu user interface 7110 is presented to the user 7002 in response to the press input.

[0273] While home menu user interface 7110 is presented as shown in FIG. 8C , in response to user input (e.g., direct air gestures, indirect air gestures, tap inputs, long press inputs, and / or pinch-and-drag inputs) directed at tabs 7136, a collection of representations of one or more selectable virtual environments is presented to user 7002 as shown in FIG. 8D . For example, in FIG. 8C1 , the user input is shown as a direct air gesture in which the position of the representation of user's hand 7020′ corresponds to tab 7136. In some embodiments, the user input is an indirect air gesture based on tab 7136 being displayed in a position corresponding to the position where the user's attention is currently detected while one or more gestures are being performed with user's hand(s) 7020 and / or 7022. For example, representation option 7114 corresponding to a beach scene virtual environment and option 7146 corresponding to a virtual office environment are presented to user 7002 as selectable virtual environments in response to user input directed at tabs 7136. In some embodiments, virtual content such as box 7016 continues to be displayed when home menu user interface 7110 is presented to user 7002 in response to a press input. In some embodiments, a previously existing virtual environment is closed when a selectable virtual environment is presented to user 7002. For example, as shown in FIG. 8D , the office virtual environment is no longer displayed in FIG. 8D . In some embodiments, a previously existing virtual environment is maintained when a selectable virtual environment is presented to user 7002. In some embodiments, representations of three or more selectable virtual environments are presented to user 7002. In some embodiments, representations of three or more selectable virtual environments may all be displayed to user 7002 in a single snapshot. In some embodiments, representations of additional selectable virtual environments are scrolled (e.g., by computer system 101) into user 7002's field of view in response to a user input (e.g., a pinch-and-drag input, a tap input, a long press input) directed toward the edge of user 7002's field of view.For example, a pinch and drag input directed towards the right edge of the virtual environment in the user's 7002 field of view will cause an additional selectable virtual environment to enter the user's 7002 field of view from the right.

[0274] In response to user input directed to option 7144 corresponding to the representation of a beach scene while the representation of the selectable virtual environment is presented to user 7002, as shown in FIG. 8D, the office virtual environment is replaced with a beach scene virtual environment including coconut palms 8006, sun 8008, and coastline 8010, as shown in FIG. 8E. In some embodiments, virtual content such as box 7016 continues to be displayed as the virtual environment is updated in response to user input. In some embodiments, the display of the selectable virtual environment representation is not immediately dismissed upon user 7002's selection of option 7144 corresponding to the representation of a beach scene. For example, the representation of the selectable virtual environment persists for a first amount of time (e.g., about 3 seconds, or about 5 seconds) in case user 7002 wishes to make a different selection after the selected virtual environment is displayed. In some embodiments, if there is no further user input to the selectable representation after the first amount of time, the display of the selectable virtual environment ceases.

[0275] Displaying a home menu user interface that provides quick access to a collection of selectable virtual environments provides a way for a user to modify their virtual experience without displaying additional controls, minimizes the number of inputs required to select a desired virtual environment, and improves the performance and efficiency of the computer system.

[0276] In some embodiments, as shown in FIG. 8F, the immersive application user interface 8000 is displayed to the user 7002 without the presence of any computer-generated virtual content that is not provided by the application associated with the application user interface 8000 (e.g., the immersive application user interface 8000 is displayed without displaying the box 7016 that is not provided by the application associated with the application user interface 8000).

[0277] As shown in FIG. 8F , in response to detecting a user input (e.g., a single press input) on a hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element) while immersive application user interface 8000 is displayed to user 7002, application user interface 8000 is closed by the single press input and replaced by updated application user interface 8040, as shown in FIG. 8G . In some embodiments, content similar to application user interface 8000 is displayed in updated application user interface 8040. For example, virtual content 8002 provided by application user interface 8000 continues to be displayed, albeit at a reduced scale, in updated application user interface 8040. In some embodiments, updated application user interface 8040 is presented without any virtual environment and / or without any additional virtual content. In some embodiments, as shown in FIG. 8G, when the virtual environment is not displayed to the user 7002, an updated application user interface 8040 is presented along with a presentation of a pass-through portion of the physical environment of the computer system 101 (e.g., a head-mounted device) via a display generation component. In some embodiments, the updated application user interface 8040 corresponds to a resized application user interface 8004. In some embodiments, the updated application user interface 8040 corresponds to a mini player application interface (e.g., mini player user interface 7154 as shown in FIGS. 7G-7I or mini player user interface 11012 as shown in FIG. 11D).

[0278] In some embodiments, two or more user inputs cause the transition shown in Figure 8F to Figure 8G. For example, while in an immersive mode, a first input (e.g., a press input) on a hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element) causes the application content of the immersive mode (e.g., full-screen mode) to be displayed in a non-immersive mode (e.g., in the form of a resized application user interface in the non-full-screen mode). In response to detecting a second input (e.g., a second press input) while the non-immersive mode is displayed, a home menu user interface 7110 is displayed, as shown in Figure 8C. In some embodiments, the updated application user interface 8040 persists, for example, as a mini-player application user interface. For example, the application user interface 8000 corresponds to a media player in full-screen mode (e.g., a video player application presenting a movie in full-screen mode), and the updated application user interface 8040 corresponds to the mini-player application user interface. In response to detecting a third input (e.g., a third press input) while the home menu user interface is simultaneously displayed with the mini player application user interface, the home menu user interface 7110 is closed and a pass-through portion is presented, as shown in FIG. 8G. In some embodiments, the mini player application interface is maintained while the pass-through portion is presented, as shown in FIG. 8G. In some embodiments, the display of the mini player application interface is discontinued while the pass-through portion is presented. Using the third input to close the home menu user interface while the device is operating in a non-immersive mode (e.g., providing a non-immersive experience to the user) provides an efficient way to terminate navigation activity on the home menu user interface without interrupting the application user interface in the non-immersive experience (e.g., as shown in FIG. 8G).No additional controls need to be provided to the user, and the user does not need to navigate through additional user interface control elements to exit the home menu user interface, improving the operating efficiency of the computer system.

[0279] Closing the home menu user interface 7110 by replacing the display of the home menu user interface with a presentation of a pass-through portion of the computer system 101's physical environment (e.g., a head-mounted device) via a display generation component improves the safety of the user 7002 and allows the user 7002 to be aware of the computer system 101's physical environment (through the pass-through portion of the computer system 101's physical environment). For example, the user 7002 may need to respond to an emergency or other situation that requires the user 7002's attention or requires the user 7002 to interact with the physical environment after the user has finished navigating the home menu user interface 7110. By using a second or third input (e.g., on a physical button) to activate the display of the pass-through portion, the user 7002 can exit the virtual environment and view at least a portion of the physical environment without displaying additional controls. In some embodiments, in addition to presenting the pass-through portion, the home menu user interface 7110 also ceases displaying the displayed virtual environment. By ceasing the display of the virtual environment while closing the home menu user interface 7110, the user can exit the virtual environment and view at least a portion of the physical environment (e.g., close the display of the virtual environment) by having a second input function similar to an input to the escape button, without displaying additional controls.

[0280] A single input to the input device can be used by the user to transition the device from a high immersion level (e.g., a fully immersive mode in which only the content of an individual application is displayed) to a less immersive or non-immersive mode, or from a non-immersive mode to a mode in which a home menu user interface is also displayed, providing intuitive top-level access to a different collection of representations when the user is in a non-immersive experience without displaying additional controls (e.g., without requiring the user to navigate user interface elements), thereby increasing the operational efficiency of user-machine interaction based on a single input. The use of a single input to the input device reduces the amount of time required to navigate within or transition from a virtual environment.

[0281] In some embodiments, the input device through which the aforementioned single input and other inputs described herein with reference to FIGS. 8A-8G are received is a hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element). In some embodiments, the hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element) is a hardware button. In some embodiments, the hardware input element 7108 (e.g., a button, a crown, or a rotatable and depressible input element) is a solid-state button. Using input to a hardware or solid-state button to control the immersion level at which application content is provided (e.g., from a fully immersive mode to a non-immersive mode) or to display a home menu user interface provides intuitive top-level access to basic operating functions of the computer system without displaying additional controls (e.g., without the user having to navigate user interface elements), thereby improving the operating efficiency of the computer system. Solid-state buttons reduce the number of moving parts, improve reliability, and allow the system to be reconfigured (e.g., with firmware updates that allow the solid-state buttons to provide different feedback, serve other functions, or receive additional types of input), improving the performance and efficiency of the computer system.

[0282] 9A-9D illustrate examples of how input to an input device may trigger one or more different actions depending on the characteristics of the displayed application user interface. Figure 15 is a flow diagram of an example method 1500 for performing one or more different actions based on (e.g., triggered by) input to an input device depending on the characteristics of the displayed application user interface. The user interfaces of Figures 9A-9D are used to illustrate processes described below, including the process of Figure 15.

[0283] 9A shows application user interface 9002, application user interface 9004, application user interface 9006, and application user interface 9008 displayed within virtual three-dimensional environment 9000. In some embodiments, application user interface 9002 corresponds to the user interface of a media player application (e.g., a video player application),...

Claims

1. 1. A method comprising: A device including or in communication with one or more display generating components and one or more input devices, detecting a first input to an input device of the one or more input devices while displaying an application user interface via the one or more display generating components, the input device being provided on a housing of the device that includes the one or more display generating components; in response to detecting the first input to the input device provided on the housing of the device, replacing a display of at least a portion of the application user interface by displaying a home menu user interface via the one or more display generation components; detecting a second input to the input device provided on the housing of the device while displaying the home menu user interface via the one or more display generation components; in response to detecting the second input to the input device provided on the housing of the device, and closing the home menu user interface.

2. 10. The method of claim 1, wherein the device is a head-mounted device including the input device and the one or more display generation components, and the method includes generating a user interface that is visible to the user when the head-mounted device is positioned on the user's head and covers the user's eyes.

3. The method of claim 1 or 2, wherein the home menu user interface is presented in a substantially central portion of the field of view of the user of the device.

4. The method of claim 1 , wherein the input device is a hardware button or a solid-state button.

5. 5. The method of claim 4, further comprising: detecting a rotational input to the hardware button; and performing a second action different from displaying or closing the home menu user interface in response to detecting the rotational input.

6. 6. The method of claim 1, further comprising: in response to detecting the first input to the input device, closing the application user interface before or simultaneously with displaying the home menu user interface.

7. generating and displaying a first user interface object associated with the application user interface prior to detecting the first input to the input device of the one or more input devices; 6. The method of claim 5, further comprising: in response to detecting the first input to the input device, closing the application user interface while maintaining display of the first user interface object.

8. 8. The method of claim 7, further comprising generating and displaying the first user interface object associated with the application user interface by extracting the first user interface object from the application user interface based on a third input directed at the application user interface before detecting the first input.

9. The method of claim 7 or 8, further comprising, in response to detecting the second input, closing both the first user interface object and the home menu user interface.

10. 10. The method of claim 7, further comprising: detecting a fourth input directed at a representation of a second application displayed on the home menu user interface while displaying the home menu user interface and the first user interface object via the one or more display generation components; and displaying an application user interface of the second application simultaneously with displaying the first user interface object in response to detecting the fourth input.

11. detecting a fifth input for moving the first user interface object onto the application user interface of the second application; The method of claim 10 , further comprising: in response to detecting the fifth input, performing an action within the second application based on the first user interface object.

12. 12. The method of claim 1, wherein closing the home menu user interface includes replacing the display of the home menu user interface with a presentation of a pass-through portion of the device's physical environment via the one or more display generation components.

13. The method of claim 1 , wherein closing the home menu user interface comprises ceasing to display the virtual environment in which the home menu user interface is displayed.

14. 14. The method of claim 13, further comprising: detecting a sixth input on a representation of a first virtual environment displayed within the home menu user interface; and, in response to detecting the sixth input on the representation of the first virtual environment displayed within the home menu user interface, replacing any currently displayed virtual environment with the first virtual environment.

15. displaying within the home menu user interface representations of software applications executable on the device; detecting a seventh input directed to a separate representation of a software application within the representations of software applications executable on the device displayed within the home menu user interface; 14. The method of claim 1, further comprising: in response to detecting the seventh input directed to the respective representation of the software application, displaying an application user interface of the software application.

16. displaying within the home menu user interface a first representation of a first person and a second representation of a second person, the first representation and the second representation being for initiating communication with the first person and the second person, respectively; Detecting an eighth input directed toward the first representation of the first person; and 14. The method of claim 1, further comprising: in response to detecting the eighth input directed at the first representation of the first person, displaying a communication user interface for initiating a communication session with the first person.

17. detecting a ninth input directed at a representation of the collection displayed on the home menu user interface; in response to detecting the ninth input directed to the representation of the collection, The method of claim 1 , further comprising displaying a representation of one or more virtual three-dimensional environments or one or more augmented reality environments.

18. 18. The method of claim 1, further comprising: detecting a tenth input while displaying the home menu user interface; and, in response to detecting the tenth input, scrolling the home menu user interface based on the tenth input such that first content within at least a portion of the home menu user interface is replaced with second content.

19. detecting an eleventh input while displaying the home menu user interface having a first section; 19. The method of claim 1, further comprising: in response to detecting the eleventh input, displaying a second section of the home menu user interface based on the eleventh input, wherein the first section is different from the second section.

20. detecting a twelfth input to the input device provided on the housing of the device while displaying a first section of the home menu user interface, and closing the home menu user interface in response to detecting the twelfth input to the input device provided on the housing of the device; 20. The method of claim 1, further comprising: detecting a thirteenth input on the input device provided on the housing of the device; and, in response to detecting the thirteenth input on the input device provided on the housing of the device, displaying the first section of the home menu user interface based on the thirteenth input.

21. displaying the first section of the home menu user interface based on the thirteenth input in accordance with a determination that a time difference between detecting the twelfth input and detecting the thirteenth input is within a time threshold; and 21. The method of claim 20, further comprising: resetting the display of the home menu user interface to a predetermined section in accordance with a determination that the time difference exceeds the time threshold.

22. displaying the application user interface via the one or more display generation components includes displaying a first application user interface of a media content playback application; The method comprises: detecting the first input on the input device while playing media content using the media content playback application and displaying the first application user interface of the media content playback application; In response to detecting the first input to the input device, 22. The method of claim 1, further comprising: displaying the home menu user interface via the one or more display generation components; and replacing the display of the first application user interface of the media content playback application with a second application user interface of the media content playback application, wherein the second application user interface of the media content playback application is smaller in size than the first application user interface of the media content playback application.

23. replacing the display of the first application user interface of the media content playback application with a second application user interface of the media content playback application includes displaying a media player; 23. The method of claim 22, wherein the second application user interface includes one or more of: a representation of media content playing on the media content playback application; and playback controls for the media content playback application.

24. 24. The method of claim 22 or 23, further comprising, in response to detecting the second input to the input device while displaying the home menu user interface, closing the home menu user interface and continuing to display the second application user interface of the media content playback application.

25. 25. The method of claim 1, further comprising: detecting a first number of inputs to the input device provided on the housing of the device within a first period of time; and displaying an application management user interface in response to detecting the first number of inputs to the input device provided on the housing of the device within the first period of time.

26. detecting a separate input to the input device provided on the housing of the device while displaying a system user interface via the one or more display generation components, the separate input being of the same type as the first input to the input device; in response to detecting the discrete input to the input device provided on the housing of the device while displaying the system user interface; 26. The method of claim 1, further comprising: replacing a display of at least a portion of the system user interface by displaying the home menu user interface via the one or more display generation components.

27. detecting a fourteenth input to the input device provided on the housing of the device after closing the home menu user interface and while the home menu user interface is not displayed; in response to detecting the fourteenth input to the input device provided on the housing of the device, 27. The method of claim 1, further comprising: re-displaying the home menu user interface via the one or more display generation components.

28. 28. A computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with one or more display generation components and one or more input devices, the one or more programs including instructions for performing the method of any one of claims 1 to 27.

29. 1. A computer system in communication with one or more display generation components and one or more input devices, the computer system comprising: one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the method of any one of claims 1 to 27.

30. 1. A computer system in communication with one or more display generation components and one or more input devices, the computer system comprising: A computer system comprising means for carrying out the method of any one of claims 1 to 27.

31. 1. A computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with one or more display generation components and one or more input devices, the one or more programs comprising: detecting a first input to an input device of the one or more input devices while displaying an application user interface via the one or more display generating components, the input device being provided on a housing of the device that includes the one or more display generating components; in response to detecting the first input to the input device provided on the housing of the device, replacing the display of at least a portion of the application user interface by displaying a home menu user interface via the one or more display generation components; detecting a second input to the input device provided on the housing of the device while displaying the home menu user interface via the one or more display generation components; A computer-readable storage medium comprising instructions for closing the home menu user interface in response to detecting the second input to the input device provided on the housing of the device.

32. 1. A computer system in communication with one or more display generation components and one or more input devices, the computer system comprising: one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs comprising: detecting a first input to an input device of the one or more input devices while displaying an application user interface via the one or more display generating components, the input device being provided on a housing of the device that includes the one or more display generating components; in response to detecting the first input to the input device provided on the housing of the device, replacing the display of at least a portion of the application user interface by displaying a home menu user interface via the one or more display generation components; detecting a second input to the input device provided on the housing of the device while displaying the home menu user interface via the one or more display generation components; in response to detecting the second input to the input device provided on the housing of the device, A computer system including instructions for closing the home menu user interface.

33. 1. A computer system in communication with one or more display generation components and one or more input devices, the computer system comprising: means for detecting a first input to an input device of the one or more input devices that is activated while displaying an application user interface via the one or more display generating components, the input device being provided on a housing of the device that includes the one or more display generating components; a means, activated in response to detecting the first input to the input device provided on the housing of the device, means for replacing a display of at least a portion of the application user interface by displaying a home menu user interface via the one or more display generation components; means for detecting a second input to the input device provided on the housing of the device, the second input being activated while the home menu user interface is being displayed via the one or more display generation components; and means for closing the home menu user interface, the means being enabled in response to detecting the second input to the input device provided on the housing of the device.

34. 1. A method comprising: A computer system including or in communication with a display generating component and one or more input devices, Detecting a first input to an input device of the one or more input devices while displaying an application user interface via the display generation component; In response to detecting the first input to the input device, pursuant to determining that the application user interface is in a first display mode, the first display mode comprising an immersive mode in which only content of the application user interface is displayed, displaying, via the display generation component, the application user interface in a second display mode, the second display mode comprising a non-immersive mode in which individual content of the application user interface and other content are simultaneously displayed; and replacing a display of at least a portion of the application user interface by displaying a home menu user interface via the display generation component in accordance with determining that the application user interface is in the second display mode.

35. detecting a second input to the input device while displaying the home menu user interface via the display generation component; 35. The method of claim 34, further comprising: in response to detecting the second input on the input device, closing the home menu user interface.

36. 36. The method of claim 34 or 35, wherein displaying the application user interface in the non-immersive mode includes simultaneously displaying a virtual environment and the application user interface, and wherein at least a portion of the virtual environment continues to be displayed in response to detecting the first input to the input device while the application user interface is displayed in the non-immersive mode.

37. 37. The method of claim 35 or 36, further comprising continuing to display at least the portion of the virtual environment while the home menu user interface is displayed.

38. displaying representations of two or more virtual environments in the home menu user interface; 38. The method of claim 36 or 37, further comprising, in response to detecting a selection of a first virtual environment of the two or more virtual environments, replacing at least a distinct portion of the virtual environment with the first virtual environment.

39. displaying within the home menu user interface user interface representations of software applications executable on the computer system; detecting a third input directed to a separate representation of a software application within the representations of software applications executable on the computer system displayed within the home menu user interface; 39. The method of any one of claims 34 to 38, further comprising: in response to detecting the third input directed to the respective representation of the software application, displaying an application user interface of the software application.

40. displaying within the home menu user interface a first representation of a first person and a second representation of a second person, the first representation and the second representation being for initiating communication with the first person and the second person, respectively; Detecting a fourth input directed toward the first representation of the first person; 39. The method of claim 34, further comprising: in response to detecting the fourth input directed at the first representation of the first person, displaying a communication user interface for initiating a communication session with the first person.

41. displaying within the home menu user interface a representation of one or more virtual three-dimensional environments or one or more extended reality environments; detecting a fifth input directed at a respective one of the representations of one or more virtual three-dimensional environments or one or more extended reality environments; in response to detecting the fifth input directed at the respective representation of the representation of one or more virtual three-dimensional environments or one or more extended reality environments; 39. The method of any one of claims 34 to 38, further comprising replacing any currently displayed virtual environment with the virtual three-dimensional environment or the extended reality environment associated with the individual representation.

42. 42. A computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component and one or more input devices, the one or more programs including instructions for performing the method of any one of claims 34 to 41.

43. 1. A computer system in communication with a display generation component and one or more input devices, the computer system comprising: one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the method of any one of claims 34 to 41.

44. 1. A computer system in communication with a display generation component and one or more input devices, the computer system comprising: A computer system comprising means for carrying out the method of any one of claims 34 to 41.

45. 1. A computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component and one or more input devices, the one or more programs comprising: detecting a first input to an input device of the one or more input devices while displaying an application user interface via the display generation component; In response to detecting the first input to the input device, pursuant to determining that the application user interface is in a first display mode, the first display mode comprising an immersive mode in which only content of the application user interface is displayed, displaying, via the display generation component, the application user interface in a second display mode, the second display mode comprising a non-immersive mode in which individual content of the application user interface and other content are simultaneously displayed; a computer-readable storage medium comprising instructions for, in accordance with a determination that the application user interface is in the second display mode, replacing a display of at least a portion of the application user interface by displaying a home menu user interface via the display generation component;

46. 1. A computer system in communication with a display generation component and one or more input devices, the computer system comprising: one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs comprising: detecting a first input to an input device of the one or more input devices while displaying an application user interface via the display generation component; In response to detecting the first input to the input device, pursuant to determining that the application user interface is in a first display mode, the first display mode comprising an immersive mode in which only content of the application user interface is displayed, displaying, via the display generation component, the application user interface in a second display mode, the second display mode comprising a non-immersive mode in which individual content of the application user interface and other content are simultaneously displayed; a computer system including instructions for replacing a display of at least a portion of the application user interface by displaying a home menu user interface via the display generation component in accordance with a determination that the application user interface is in the second display mode;

47. 1. A computer system in communication with a display generation component and one or more input devices, the computer system comprising: means for detecting a first input to an input device of the one or more input devices that is activated while displaying an application user interface via the display generation component; Activated in response to detecting the first input to the input device. pursuant to determining that the application user interface is in a first display mode, the first display mode comprising an immersive mode in which only content of the application user interface is displayed, displaying, via the display generation component, the application user interface in a second display mode, the second display mode comprising a non-immersive mode in which individual content of the application user interface and other content are simultaneously displayed; means for replacing a display of at least a portion of the application user interface by displaying a home menu user interface via the display generation component in accordance with a determination that the application user interface is in the second display mode.

48. 1. A method comprising: A computer system including or in communication with a display generating component and one or more input devices, Detecting a first input to an input device of the one or more input devices while displaying an application user interface of an application via the display generation component; In response to detecting the first input to the input device, displaying a home menu user interface via said display generation component; maintaining display of at least a portion of the application user interface while displaying the home menu user interface in accordance with a determination that the application is currently being shared in a content sharing session in which content of the application is simultaneously visible to multiple participants in the content sharing session; ceasing to display the application user interface in accordance with determining that the application is not being shared in the content sharing session.

49. 49. The method of claim 48, further comprising sharing the application currently in the content sharing session with the multiple participants in a real-time communication session.

50. 50. The method of claim 49, wherein the application user interface of the application currently being shared in the content sharing session, or elements or individual portions of the application user interface of the application currently being shared in the content sharing session, have a shared spatial relationship in which one or more user interface objects visible to the multiple participants in the content sharing session have a consistent spatial relationship from different perspectives of the multiple participants in the content sharing session.

51. The shared spatial relationship is: a spatial relationship between a first user interface object representing individual content to a first participant and a viewpoint of the first participant from the perspective of the first participant matches a spatial relationship between a second user interface object representing the individual content to a second participant and a representation of the first participant from the perspective of the second participant; 51. The method of claim 50, wherein a spatial relationship between the second user interface object representing the individual content to the second participant and a perspective of the second participant from the perspective of the second participant is such that the spatial relationship between the first user interface object representing the individual content to the first participant and a representation of the second participant from the perspective of the first participant matches.

52. Detecting an input by the first participant of the plurality of participants to move the application user interface of the application currently being shared in the content sharing session; 52. The method of claim 51 , further comprising: in response to detecting the input by the first participant to move the application user interface, moving the application user interface of the application currently being shared in the content sharing session, or the element or the individual portion of the application user interface of the application currently being shared in the content sharing session, for both the first participant and the second participant of the plurality of participants.

53. 53. The method of any one of claims 48 to 52, further comprising displaying the home menu user interface in front of the application user interface of the application.

54. 54. The method of any one of claims 48 to 53, further comprising simultaneously displaying application user interfaces of two or more applications.

55. 55. The method of claim 54, further comprising, in response to the first input, ceasing to display an application user interface of a respective one of the two or more applications while continuing to display an application user interface of another of the two or more applications.

56. 55. The method of claim 54, further comprising, in response to the first input, ceasing display of a first plurality of applications of the two or more applications while continuing to display at least one application of the two or more applications.

57. 55. The method of claim 54, further comprising, in response to the first input, maintaining display of a second plurality of applications of the two or more applications while ceasing display of at least one application of the two or more applications.

58. detecting a second input while displaying both the home menu user interface and at least the portion of the application user interface of the application currently being shared in the content sharing session; In response to detecting the second input, ceasing the display of the home menu user interface; and 58. The method of claim 48, further comprising: maintaining a display of the portion of the application user interface of the application currently being shared in the content sharing session while not displaying the home menu user interface.

59. 60. The method of claim 58, further comprising simultaneously displaying, via the display generation component, a pass-through portion of the computer system's physical environment and the application currently being shared in the content sharing session.

60. detecting a movement of the application user interface by the second participant of the plurality of participants while displaying the home menu user interface; In response to detecting the movement of the application user interface by the second participant, 58. The method of any one of claims 48 to 57, further comprising: moving the application user interface for the plurality of participants, including the first participant and the second participant, based on the movement.

61. 61. The method of any one of claims 48 to 60, wherein the first input to the input device comprises a press input on a hardware or solid-state button.

62. 62. A computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component and one or more input devices, the one or more programs including instructions for performing the method of any one of claims 48 to 61.

63. 1. A computer system in communication with a display generation component and one or more input devices, the computer system comprising: one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the method of any one of claims 48 to 61.

64. 1. A computer system in communication with a display generation component and one or more input devices, the computer system comprising:

62. A computer system comprising means for carrying out the method of any one of claims 48 to 61.

65. 1. A computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component and one or more input devices, the one or more programs comprising: detecting a first input to an input device of the one or more input devices while displaying an application user interface of an application via the display generation component; In response to detecting the first input to the input device, displaying a home menu user interface via said display generation component; maintaining display of at least a portion of the application user interface while displaying the home menu user interface in accordance with a determination that the application is currently being shared in a content sharing session in which content of the application is simultaneously visible to multiple participants in the content sharing session; A computer-readable storage medium comprising instructions for ceasing display of the application user interface in accordance with a determination that the application is not being shared in the content sharing session.

66. 1. A computer system in communication with a display generation component and one or more input devices, the computer system comprising: one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs comprising: detecting a first input to an input device of the one or more input devices while displaying an application user interface of an application via the display generation component; In response to detecting the first input to the input device, displaying a home menu user interface via said display generation component; maintaining display of at least a portion of the application user interface while displaying the home menu user interface in accordance with a determination that the application is currently being shared in a content sharing session in which content of the application is simultaneously visible to multiple participants in the content sharing session; The computer system includes instructions for ceasing display of the application user interface in accordance with a determination that the application is not being shared in the content sharing session.

67. 1. A computer system in communication with a display generation component and one or more input devices, the computer system comprising: means for detecting a first input to an input device of the one or more input devices that is activated while displaying an application user interface of an application via the display generation component; Activated in response to detecting the first input to the input device. displaying a home menu user interface via said display generation component; maintaining display of at least a portion of the application user interface while displaying the home menu user interface in accordance with a determination that the application is currently being shared in a content sharing session in which content of the application is simultaneously visible to multiple participants in the content sharing session; means for ceasing display of the application user interface according to a determination that the application is not being shared in the content sharing session.

68. 1. A method comprising: A computer system including or in communication with a display generating component and one or more input devices, detecting, while the computer system is operating, via an input device of the one or more input devices, a first input of a first type of input, the first type of input being determined based on a location and / or movement of a first biometric feature of a user; In response to detecting the first input via the input device, performing a first operation according to the first input, the operation being determined at least in part by first input registration information from a previous input registration process for the first type of input; after performing the first action in accordance with the first input, detecting a second input of a second type of input via an input device of the one or more input devices; and in response to detecting the second input, initiating a process for input registration for the first type of input.

69. 69. The method of claim 68, wherein the first type of input comprises a gaze of the user, the first biometric characteristic comprises a position and / or movement of the user's eyes, the input device comprises a camera, and the first of the first types of input is detected via the input device.

70. 69. The method of claim 68, wherein the first type of input comprises a movement of the user's hand, the first biometric characteristic comprises a position and / or movement of one or more portions of the user's hand, the input device comprises a camera, and the first of the first types of input is detected via the input device.

71. 71. The method of any one of claims 68 to 70, wherein initiating the process for input registration for the first type of input comprises: presenting instructions to the user for input registration for the first type of input; and collecting second input registration information for the first type of input based on user actions performed in accordance with the presented instructions.

72. detecting a third input of the first type of inputs via an input device of the one or more input devices; 72. The method of claim 71, further comprising: in response to detecting the third input via the input device, performing a second action according to the third input, the second action being determined at least in part by the second input registration information for the first type of input.

73. 73. The method of any one of claims 68 to 72, wherein the input device comprises a button.

74. The button is further configured to turn the computer system on or off, and the method further comprises: detecting a fourth input on the button while the computer system is inactive; responsive to detecting the fourth input on the button, turning on the computer system.

75. The method comprises: detecting a fifth input on said button while said computer system is in a sleep mode; 75. The method of claim 73 or 74, comprising: waking the computer system from the sleep mode in response to detecting the fifth input on the button.

76. The method comprises: detecting a sixth input on the button while the computer system is operating; in response to detecting the sixth input on the button, and capturing media visibly rendered via said display generation component.

77. The method comprises: Detecting a seventh input on the button in conjunction with detecting an eighth input on a second input device; and performing one or more system actions in response to detecting the seventh input on the button in conjunction with the eighth input on the second input device.

78. 78. The method of claim 77, wherein the one or more system actions are a member selected from the group consisting of taking a screenshot, rebooting the computer system, or resetting the computer system.

79. 80. A computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component and one or more input devices, the one or more programs including instructions for performing the method of any one of claims 68 to 78.

80. 1. A computer system in communication with a display generation component and one or more input devices, the computer system comprising: one or more processors; and a memory storing one or more programs configured to be executed by said one or more processors, said one or more programs including instructions for performing the method of any one of claims 68 to 78.

81. 1. A computer system in communication with a display generation component and one or more input devices, the computer system comprising:

79. A computer system comprising means for carrying out the method of any one of claims 68 to 78.

82. 1. A computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component and one or more input devices, the one or more programs comprising: detecting, while the computer system is operating, via an input device of the one or more input devices, a first input of a first type of input, the first type of input being determined based on a location and / or movement of a first biometric feature of a user; in response to detecting the first input via the input device, performing a first operation in accordance with the first input, the operation being determined at least in part by first input registration information from a previous input registration process for the first type of input; detecting a second input of a second type of input via an input device of the one or more input devices after performing the first action in accordance with the first input; A computer-readable storage medium comprising instructions for initiating a process for input registration for the first type of input in response to detecting the second input.

83. 1. A computer system in communication with a display generation component and one or more input devices, the computer system comprising: one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs comprising: detecting, while the computer system is operating, via an input device of the one or more input devices, a first input of a first type of input, the first type of input being determined based on a location and / or movement of a first biometric feature of a user; in response to detecting the first input via the input device, performing a first operation in accordance with the first input, the operation being determined at least in part by first input registration information from a previous input registration process for the first type of input; detecting a second input of a second type of input via an input device of the one or more input devices after performing the first action in accordance with the first input; a computer system including instructions for initiating a process for input registration for the first type of input in response to detecting the second input;

84. 1. A computer system in communication with a display generation component and one or more input devices, the computer system comprising: means for detecting a first type of input via an input device of the one or more input devices that is enabled while the computer system is operating, the first type of input being determined based on a location and / or movement of a first biometric feature of a user; means, enabled in response to detecting the first input via the input device, for performing a first operation according to the first input, the operation being determined at least in part by first input registration information from a previous input registration process for the first type of input; means for detecting a second input of a second type of input via an input device of the one or more input devices, the second input being enabled after performing the first action in accordance with the first input; means for initiating a process for input registration for the first type of input, the means being enabled in response to detecting the second input.

85. 1. A method comprising: A computer system including or in communication with a display generating component and one or more input devices, Detecting a first input on a rotatable input mechanism of an input device of the one or more input devices; in response to detecting the first input on the rotatable input mechanism; upon determining that the first input is a first type of input, changing an immersion level associated with the display of the extended reality (XR) environment generated by the display generation component to a first immersion level in which the display of the XR environment simultaneously includes virtual content from an application and a pass-through portion of the computer system's physical environment; upon determining that the first input is a second type of input, and performing an action distinct from changing the immersion level associated with displaying the XR environment.

86. 86. The method of claim 85, further comprising, in response to a second one of the first types of inputs, changing the immersion level associated with the display of the XR environment generated by the display generation component to a second immersion level in which the display of the XR environment simultaneously includes different virtual content or virtual content displayed at a different level of fidelity than the virtual content displayed when the first immersion level is associated with the display of the XR environment.

87. The second type of input includes a press input, and the method further comprises: detecting a third input provided to the rotatable input mechanism; 87. The method of claim 85 or 86, further comprising, in response to the rotatable input mechanism detecting the third input as a press input, performing a discrete operation selected from the group consisting of: closing an active application, closing a virtual object displayed via the display generation component, displaying an application manager user interface, enabling an accessibility mode, and re-displaying a plurality of previously displayed user interface elements within the XR environment.

88. 88. The method of any one of claims 85 to 87, wherein altering the immersion level associated with the display of the XR environment is based on detecting a rotational input to the rotatable input mechanism.

89. Modifying the immersion level associated with the display of the XR environment based on detecting the rotational input includes: increasing the immersion level in accordance with determining that the first input is a rotational input in a first direction; and decreasing the immersion level in accordance with a determination that the first input is a rotational input in a second direction different from the first direction.

90. 89. The method of any one of claims 85 to 88, wherein the first type of input comprises a rotation input of the rotatable input mechanism and the second type of input comprises a press input of the rotatable input mechanism.

91. In response to detecting the first input, performing a first action in accordance with determining that the first input is the second type of input and includes a first number of presses; 91. The method of claim 90, comprising: performing a second action different from the first action in accordance with a determination that the first input is the second type of input and includes a second number of press inputs different from the first number.

92. detecting the first number of press inputs directed at the rotatable input mechanism; 92. The method of claim 91, comprising: in response to detecting the first number of press inputs directed at the rotatable input mechanism, causing an active application to run in the background and / or closing the active application by displaying a home menu user interface via the display generation component.

93. detecting the second number of press inputs directed at the rotatable input mechanism; 93. The method of claim 92, comprising: in response to detecting the second number of press inputs directed at the rotatable input mechanism, displaying an application manager user interface.

94. detecting a third number of press inputs directed at the rotatable input mechanism; and and performing or enabling an accessibility mode operation in response to detecting the third number of press inputs directed at the rotatable input mechanism.

95. detecting a fourth number of press inputs directed at the rotatable input mechanism; and and in response to detecting the fourth number of press inputs directed at the rotatable input mechanism, closing a virtual object by displaying a separate pass-through portion of the physical environment of the computer system.

96. In response to detecting the first input, performing a first action in accordance with determining that the first input is an input of the second type and has a duration that meets a first criterion; performing a second action different from the first action in accordance with a determination that the first input is an input of the second type and has a duration that satisfies a second criterion different from the first criterion.

97. 97. The method of any one of claims 85-91 or 93-96, comprising displaying a home menu user interface within the XR environment in accordance with the determination that the first input is the second type of input.

98. The method comprises: Detecting a fourth input of the second type of inputs in conjunction with detecting a fifth input on a second input device; and performing one or more third actions in response to detecting the fourth input of the second type of inputs in conjunction with the fifth input on the second input device.

99. 99. The method of claim 98, wherein a respective third action of the one or more third actions is selected from the group consisting of taking a screenshot, powering off the computer system, rebooting the computer system, and entering a hardware reset mode of the computer system.

100. 100. A computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component and one or more input devices, the one or more programs including instructions for performing the method of any one of claims 85 to 99.

101. 1. A computer system in communication with a display generation component and one or more input devices, the computer system comprising: one or more processors; and a memory storing one or more programs configured to be executed by said one or more processors, said one or more programs including instructions for performing the method of any one of claims 85 to 99.

102. 1. A computer system in communication with a display generation component and one or more input devices, the computer system comprising:

100. A computer system comprising means for carrying out the method of any one of claims 85 to 99.

103. 1. A computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component and one or more input devices, the one or more programs comprising: Detecting a first input on a rotatable input mechanism of an input device of the one or more input devices; in response to detecting the first input on the rotatable input mechanism; upon determining that the first input is a first type of input, changing an immersion level associated with the display of the extended reality (XR) environment generated by the display generation component to a first immersion level in which the display of the XR environment simultaneously includes virtual content from an application and a pass-through portion of the computer system's physical environment; upon determining that the first input is a second type of input, 11. A computer-readable storage medium comprising instructions that perform an operation other than changing the immersion level associated with displaying the XR environment.

104. 1. A computer system in communication with a display generation component and one or more input devices, the computer system comprising: one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs comprising: Detecting a first input on a rotatable input mechanism of an input device of the one or more input devices; in response to detecting the first input on the rotatable input mechanism; upon determining that the first input is a first type of input, changing an immersion level associated with the display of the extended reality (XR) environment generated by the display generation component to a first immersion level in which the display of the XR environment simultaneously includes virtual content from an application and a pass-through portion of the computer system's physical environment; upon determining that the first input is a second type of input, 10. A computer system comprising: instructions for performing an operation distinct from altering the immersion level associated with displaying the XR environment.

105. 1. A computer system in communication with a display generation component and one or more input devices, the computer system comprising: means for detecting a first input on a rotatable input mechanism of an input device of the one or more input devices; enabled in response to detecting the first input on the rotatable input mechanism. upon determining that the first input is a first type of input, changing an immersion level associated with the display of the extended reality (XR) environment generated by the display generation component to a first immersion level in which the display of the XR environment simultaneously includes virtual content from an application and a pass-through portion of the computer system's physical environment; upon determining that the first input is a second type of input, means for performing an action other than changing the immersion level associated with the display of the XR environment.

106. 1. A method comprising: A wearable device including or in communication with a display generating component and one or more input devices, Detecting a first signal indicating that the wearable device has been removed while a separate session is active in a separate application and the wearable device is being worn; In response to detecting the first signal, deactivating the individual sessions of the individual applications; Detecting a second signal indicating that the wearable device is being worn while the respective application is inactive; and In response to detecting the second signal, According to the determination that each criterion is met, resuming the individual sessions of the individual applications; Following a determination that each criterion is not met, and canceling resuming the individual session of the individual application, wherein the respective criteria include criteria that are met when it is determined that a current user of the wearable device is an authorized user of the wearable device.

107. The respective criteria include the individual session types meeting predefined criteria for a predefined set of session types, and the method further comprises: resuming the individual session of the individual application in accordance with a determination that the respective criteria are satisfied because the individual session of the individual application is a first type session; and and refraining from resuming the individual session of the individual application in accordance with a determination that the respective criteria are not met because the individual session of the individual application is a second type session.

108. the respective criteria are met when the respective sessions of the respective applications are configured to deliver media content to the authorized user of the wearable device; 108. The method of claim 107, wherein the respective criteria are met when the individual sessions of the individual applications are configured to enable participants in the individual sessions to generate real-time audio data or real-time video data of the participants, and the individual sessions are configured to provide information regarding the positions of the participants within a three-dimensional environment.

109. 109. The method of claim 108, wherein the respective criteria are not met when the individual application includes a recording of content generated during the individual session, and resuming the individual session of the individual application is abandoned.

110. the respective criterion is satisfied when a time between detecting the first signal and detecting the second signal is less than a predetermined threshold, resuming the respective session of the respective application; 110. The method of claim 106, wherein when the time between detecting the first signal and detecting the second signal is equal to or greater than the predetermined threshold, the respective criterion is not met and resuming the individual session of the individual application is abandoned.

111. 111. The method of any one of claims 106, 107, 109, or 110, wherein deactivating the individual session of the individual application comprises pausing playback of media content from the individual session of the individual application.

112. 112. The method of any one of claims 106 to 111, wherein deactivating the individual session of the individual application includes at least one of muting audio data associated with the individual session of the individual application or pausing video recording of content generated in the individual session of the individual application.

113. 113. The method of any one of claims 106 to 112, wherein deactivating the individual sessions of the individual applications comprises suspending mirroring of output from the display generation component of the wearable device on a different device.

114. 114. The method of claim 113, further comprising, in conjunction with pausing the mirroring of the output from the display generation component of the wearable device on the different device, displaying via the display generation component an indication that the mirroring of the output from the display generation component has been paused.

115. 115. The method of any one of claims 106 to 114, further comprising monitoring a context of the wearable device using one or more sensors included in or in communication with the wearable device after the first signal is detected.

116. 116. The method of claim 115, further comprising using the one or more sensors to detect characteristics of a physical environment of the wearable device to monitor the context of the wearable device.

117. 116. The method of claim 115, further comprising detecting a biometric feature using the one or more sensors to monitor the context of the wearable device.

118. upon determining that a threshold amount of time has elapsed since detecting the first signal without detecting the second signal; 118. The method of any one of claims 115 to 117, further comprising transitioning the wearable device to a sleep state of operation, wherein the wearable device reduces the frequency at which the one or more sensors are used to monitor the context of the wearable device.

119. Detecting an upward displacement of at least a portion of the wearable device while the wearable device is in the sleep state; 119. The method of claim 118, further comprising transitioning the wearable device from an active state to a standby state of operation in response to detecting the upward displacement of the at least a portion of the wearable device.

120. Detecting a first input to the one or more input devices while the wearable device is in the sleep state; 119. The method of claim 118, further comprising: transitioning the wearable device from the sleep state to a standby state of operation in response to detecting the first input.

121. 121. A computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a wearable device in communication with a display generation component and one or more input devices, the one or more programs including instructions for performing the method of any one of claims 106 to 120.

122. A wearable device in communication with a display generating component and one or more input devices, the wearable device comprising: one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the method of any one of claims 106 to 120.

123. A wearable device in communication with a display generating component and one or more input devices, the wearable device comprising: A wearable device comprising means for performing the method of any one of claims 106 to 120.

124. 1. A computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a wearable device in communication with a display generation component and one or more input devices, the one or more programs comprising: Detecting a first signal indicating that the wearable device has been removed while a separate session is active in a separate application and the wearable device is being worn; In response to detecting the first signal, deactivating the individual sessions of the individual applications; Detecting a second signal indicating that the wearable device is being worn while the respective application is inactive; In response to detecting the second signal, According to the determination that each criterion is met, resuming the individual sessions of the individual applications; Following a determination that each criterion is not met, A computer-readable storage medium comprising instructions for canceling resuming the individual session of the individual application, wherein the respective criteria include criteria that are met when a current user of the wearable device is determined to be an authorized user of the wearable device.

125. A wearable device in communication with a display generating component and one or more input devices, the wearable device comprising: one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs comprising: Detecting a first signal indicating that the wearable device has been removed while a separate session is active in a separate application and the wearable device is being worn; In response to detecting the first signal, deactivating the individual sessions of the individual applications; Detecting a second signal indicating that the wearable device is being worn while the respective application is inactive; In response to detecting the second signal, According to the determination that each criterion is met, resuming the individual sessions of the individual applications; Following a determination that each criterion is not met, A wearable device comprising instructions to discontinue resuming the individual session of the individual application, wherein each of the criteria comprises a criterion that is met when a current user of the wearable device is determined to be an authorized user of the wearable device.

126. A wearable device in communication with a display generating component and one or more input devices, the wearable device comprising: means for detecting a first signal indicating that the wearable device has been removed, the first signal being enabled while a separate session is active in a separate application and while the wearable device is being worn; and means enabled in response to detecting the first signal, means for deactivating the individual sessions of the individual applications; means for detecting a second signal indicating that the wearable device is being worn, the second signal being activated while the respective application is inactive; and enabled in response to detecting the second signal; According to the determination that each criterion is met, resuming the individual sessions of the individual applications; Following a determination that each criterion is not met, and means for canceling resuming the individual session of the individual application, wherein the respective criteria include criteria that are met when a current user of the wearable device is determined to be an authorized user of the wearable device.

127. 1. A method comprising: A computer system in communication with one or more display generating components and one or more input devices, comprising: detecting a first input directed at a first input device of the one or more input devices while a configuration of the computer system is running, the computer system including one or more sensors that detect inputs including one or more of an air gesture and an eye gaze input; and displaying a menu including a plurality of selectable options for configuring one or more interaction models in response to detecting the first input to the first input device.

128. 128. The method of claim 127, wherein the first input device is a hardware input device that is a hardware button.

129. 128. The method of claim 127, wherein the first input device is a hardware input device that includes a rotatable input mechanism.

130. the one or more input devices include a second input device different from the first input device, and the method further comprises: Detecting a second input to the second input device; activating, in response to detecting the second input to the second input device, a first accessibility mode in which a linguistic description of a virtual object is provided in response to user input.

131. 131. The method of any one of claims 127 to 130, wherein the first input comprises two or more presses on the first input device.

132. detecting a third input directed to a first hardware input device of the one or more input devices; and positioning an input focus on a first selectable option of the plurality of selectable options in response to detecting the third input directed at the first hardware input device.

133. detecting a fourth input directed to a second hardware input device of the one or more input devices; and selecting the first selectable option of the plurality of selectable options in response to detecting the fourth input directed to the second hardware input device.

134. detecting a third input directed to a respective hardware input device of the one or more input devices; in response to detecting the third input directed to the hardware input device; positioning input focus on a first selectable option of the plurality of selectable options in accordance with a determination that the third input satisfies a first input criterion; and selecting a second selectable option from the plurality of selectable options in accordance with a determination that the third input satisfies a second input criterion.

135. 135. The method of claim 134, wherein positioning the input focus on the first selectable option of the plurality of selectable options is performed in response to detecting a rotational input on the hardware input device.

136. 136. The method of claim 134 or 135, wherein selecting the second selectable option of the plurality of selectable options is performed in response to detecting a press input on the hardware input device.

137. 137. The method of any one of claims 132 to 136, comprising outputting an audio description of the first selectable option of the plurality of selectable options in conjunction with positioning the input focus on the first selectable option of the plurality of selectable options.

138. While said configuration of said computer system is being performed, displaying a control for activating a dwell control mode; detecting a gaze input directed at the control to activate the dwell control mode; 138. The method of any one of claims 127 to 137, comprising: automatically activating the dwell control mode in response to detecting the gaze input directed at the control for activating the dwell control mode.

139. detecting a subsequent input directed to the first input device after the configuration of the computer system is completed; and and ceasing to display the menu including the plurality of selectable options for configuring the one or more interaction models in response to detecting the subsequent input to the first input device after the configuration of the computer system is completed.

140. 140. The method of claim 139, comprising, in response to detecting the subsequent input to the first input device after the configuration of the computer system is completed, performing an action other than displaying the menu including the plurality of selectable options for configuring the one or more interaction models.

141. detecting a press input on the first input device after the configuration of the computer system is completed; activating a respective accessibility feature in response to detecting the press input on the first input device.

142. detecting a fifth input on the first input device; in response to detecting the fifth input on the first input device; positioning input focus on a respective selectable option of the plurality of selectable options in accordance with a determination that the fifth input is detected before the configuration of the computer system is completed; and performing an action other than positioning the input focus on the individual selectable option in accordance with a determination that the fifth input is detected after the configuration of the computer system is completed.

143. displaying a first user interface of a first subset of user interfaces for configuring a first interaction model of the one or more interaction models; Detecting one or more user inputs; In response to detecting the one or more user inputs, activating a feature of the first interaction model and automatically displaying a second user interface of the first subset of user interfaces.

144. the plurality of selectable options includes a first set of one or more controls for enabling a focus selector to be controlled with a separate part of the user's body different from the user's eyes; The method comprises: Detecting a discrete gaze input; In response to detecting the individual gaze input, 144. The method of any one of claims 127 to 143, comprising: in accordance with a determination that the focus selector is not enabled to be controlled by the individual part of the user's body other than the user's eyes, positioning the focus selector in accordance with the individual gaze input; and when the focus selector is enabled to be controlled by the individual part of the user's body other than the user's eyes, the computer system does not respond to the individual gaze input by positioning the focus selector in accordance with the individual gaze input.

145. 145. The method of claim 144, wherein the menu including the plurality of selectable options for configuring the one or more interaction models is displayed before a user gaze calibration process is performed.

146. the plurality of selectable options includes a second set of one or more controls corresponding to a set of one or more input models that enable the device to be controlled with alternative inputs different from air gestures; The method comprises: Detecting an air gesture; In response to detecting the air gesture, 146. The method of any one of claims 127 to 145, comprising: in accordance with a determination that the computer system can be controlled using an air gesture, performing the action in accordance with the air gesture, wherein when the computer system can be controlled using the alternative input, the computer system does not respond to the air gesture by performing the action.

147. 147. The method of claim 146, wherein a first control of the second set of one or more controls corresponds to a control for activating a dwell control mode.

148. 148. The method of claim 146 or 147, wherein a second control of the second set of one or more controls corresponds to a control for activating a switch control mode.

149. detecting an input selecting the control to activate the switch control mode; In response to detecting the input selecting the control to activate the switch control mode, activating the switch control mode; and displaying a separate menu for configuring a wireless connection with a hardware input device for use in providing input in the switch control mode.

150. 150. The method of any one of claims 127 to 149, wherein the menu including the plurality of selectable options for configuring the one or more interaction models is displayed before a user's hand calibration process is performed.

151. detecting an input selecting a first option of the plurality of selectable options corresponding to a visual accessibility mode; activating the visual accessibility mode in response to detecting the input selecting the first option corresponding to the visual accessibility mode.

152. detecting an input selecting a second option of the plurality of selectable options corresponding to an aural accessibility mode; and activating the hearing accessibility mode in response to detecting the input selecting the second option corresponding to the hearing accessibility mode.

153. detecting an input selecting a third option from the plurality of selectable options corresponding to a display setting; activating the display setting in response to detecting the input selecting the third option corresponding to the display setting.

154. 154. A computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with one or more display generation components and one or more input devices, the one or more programs including instructions for performing the method of any one of claims 127 to 153.

155. 1. A computer system in communication with one or more display generation components and one or more input devices, the computer system comprising: one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions for performing the method of any one of claims 127 to 153.

156. 1. A computer system in communication with one or more display generation components and one or more input devices, the computer system comprising:

154. A computer system comprising means for carrying out the method of any one of claims 127 to 153.

157. 1. A computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system in communication with one or more display generation components and one or more input devices, the one or more programs comprising: Detecting a first input directed at a first input device of the one or more input devices while a configuration of the computer system is running, the computer system including one or more sensors that detect inputs including one or more of air gestures and eye gaze inputs; a computer-readable storage medium comprising instructions for, in response to detecting the first input to the first input device, displaying a menu comprising a plurality of selectable options for configuring one or more interaction models;

158. 1. A computer system in communication with one or more display generation components and one or more input devices, the computer system comprising: one or more processors; and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs comprising: Detecting a first input directed at a first input device of the one or more input devices while a configuration of the computer system is running, the computer system including one or more sensors that detect inputs including one or more of air gestures and eye gaze inputs; responsive to detecting the first input to the first input device, displaying a menu including a plurality of selectable options for configuring one or more interaction models.

159. 1. A computer system in communication with one or more display generation components and one or more input devices, the computer system comprising: the computer system, the computer system including one or more sensors for detecting inputs including one or more of air gestures and eye gaze inputs; and means for detecting a first input directed at a first input device of the one or more input devices that is enabled while a configuration of the computer system is being executed; means for displaying a menu including a plurality of selectable options for configuring one or more interaction models, the menu being enabled in response to detecting the first input to the first input device.

Citation Information

Patent Citations

  • Superimposition in display for digital camera user interface including spatially distributed menu option

    JP2004112790A

  • Portable electronic equipment and control method thereof

    JP2009251658A

  • Information processing apparatus and image generation method

    JP2017055173A

  • Electronic apparatus and control method thereof, program and storage medium

    JP2017073092A

  • Display system, display unit, information display method, and program

    JP2018018315A