Devices, methods, and user interfaces for gesture-based interaction

By detecting and responding to user gesture movements, the problems of complex and inefficient gesture interaction in the prior art are solved, and more intuitive and efficient user interaction is achieved, and there is a positive impact on battery life and equipment wear.

CN119923613APending Publication Date: 2025-05-02APPLE INC
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202380066404.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-09-06
Filing Date
2023-09-14
Publication Date
2025-05-02

AI Technical Summary

Technical Problem

In the prior art, there are problems such as insufficient feedback, complex operation, cumbersome and error-prone when interacting with computer systems using gestures, resulting in a large cognitive burden on users and low interaction efficiency.

Method used

The corresponding operation is performed by detecting the air gestures performed by the user's hand in the computer system and responding according to preset standards. The specific method includes detecting the rotation and movement of the hand using an input device and performing corresponding operations according to the detected gesture type.

Benefits of technology

Improves the efficiency and intuitiveness of user interaction with computer systems, reduces the number and complexity of user input, reduces battery consumption, extends the battery life of the device, and reduces wear of the input device.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119923613A_ABST
    Figure CN119923613A_ABST
Patent Text Reader

Abstract

In some embodiments, the present disclosure includes techniques and user interfaces for performing operations using air gestures. In some embodiments, the present disclosure includes techniques and user interfaces for audio playback adjustments using gestures. In some embodiments, the present disclosure includes techniques and user interfaces for conditionally responding to inputs.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims priority to U.S. Patent Application No. 18 / 242,694, entitled “DEVICES, METHODS, AND USER INTERFACES FOR GESTURE-BASED INTERACTIONS,” filed on September 6, 2023, and U.S. Provisional Patent Application No. 63 / 408,581, entitled “DEVICES, METHODS, AND USER INTERFACES FOR GESTURE-BASED INTERACTIONS,” filed on September 21, 2022. The contents of each of these patent applications are incorporated herein by reference in their entirety. Technical Field

[0003] The present disclosure as a whole relates to a computer system in communication with a display generation component, one or more input devices, and optionally an external wearable device; the computer system provides computer-generated experiences, including but not limited to electronic devices that provide virtual reality and mixed reality experiences via a display. More specifically, the present disclosure relates to techniques for performing operations using gestures (e.g., air gestures). Background Art

[0004] In recent years, the development of computer systems for augmented reality has increased significantly. Example 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 touch screen displays) for computer systems and other electronic computing devices are used to interact with virtual / augmented reality environments. Example virtual elements include virtual objects such as digital images, videos, text, icons, and control elements (such as buttons and other graphics). Summary of the invention

[0005] Some methods and interfaces for performing actions using gestures are cumbersome, inefficient, and limited. For example, systems that provide insufficient feedback for performing actions associated with virtual objects, systems that require input on specific hardware to achieve desired results in augmented reality environments, and systems where virtual object manipulation is complex, cumbersome, and error-prone can impose a significant cognitive burden on users and detract from the experience of the virtual / augmented reality environment. In addition, these methods take longer than necessary, wasting energy on the computer system. This latter consideration is particularly important in battery-powered devices.

[0006] Therefore, there is a need for computing systems with improved methods and interfaces to provide computer-generated experiences to users, so that interaction with computing systems using gestures is more efficient and more intuitive for users. Such methods and interfaces optionally supplement or replace conventional methods for providing and interacting with extended reality experiences. Such methods and interfaces reduce the amount, degree, and / or nature of inputs from users by helping users understand the connection between provided inputs and device responses to those inputs, thereby forming a more effective human-computer interface.

[0007] The above-mentioned defects and other problems associated with the user interface of the computer system 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 watch or a head-mounted device). In some embodiments, the computer system has a touch pad. In some embodiments, the computer system has one or more cameras. In some embodiments, the computer system has a touch-sensitive display (also referred to as a "touch screen" or "touch screen 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, in addition to the display generation component, the computer system also has one or more output devices, which include 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, a memory, and one or more modules, a program or instruction set stored in the memory for performing multiple functions. In some embodiments, the user interacts with the GUI through contact and gestures of a stylus and / or finger on a touch-sensitive surface, 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 a camera and other mobile sensors), and / or voice input (as captured by one or more audio input devices). In some embodiments, the functions performed by interaction optionally include image editing, drawing, presentations, word processing, spreadsheet creation, playing games, making and receiving calls, video conferencing, sending and receiving emails, instant messaging, testing support, digital photography, digital video recording, web browsing, digital music playback, note-taking, and / or digital video playback. Executable instructions for performing these functions are optionally included in a transient and / or non-transient computer-readable storage medium or other computer program product configured for execution by one or more processors.

[0008] There is a need for electronic devices with improved methods and interfaces for interacting with a three-dimensional environment using gestures. Such methods and interfaces can supplement or replace conventional methods for interacting with a three-dimensional environment using gestures. Such methods and interfaces reduce the amount, degree, and / or nature of input from a user and produce a more efficient human-computer interface. For battery-powered computing devices, such methods and interfaces save power and increase the time interval between battery charges. Such methods can also improve the operating life of the device by reducing wear on input mechanisms (e.g., buttons).

[0009] According to some embodiments, a method performed at a computer system having one or more input devices is described. The method includes: at a computer system in communication with the one or more input devices: detecting, via the one or more input devices, an air gesture performed by a hand and including a rotation of the hand; and in response to detecting the air gesture: performing a first operation based on the air gesture according to determining that the air gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria satisfied when the air gesture is detected while the hand is performing a pinch gesture; and abandoning performing the first operation based on the air gesture according to determining that the air gesture does not satisfy the first set of criteria.

[0010] According to some embodiments, a non-transitory computer-readable storage medium is described. The non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system having one or more input devices, the one or more programs including instructions for the following operations: detecting an air gesture performed by a hand and including a rotation of the hand via the one or more input devices; and in response to detecting the air gesture: performing a first operation based on the air gesture according to determining that the air gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria satisfied when the air gesture is detected while the hand is performing a pinch gesture; and abandoning the execution of the first operation based on the air gesture according to determining that the air gesture does not satisfy the first set of criteria.

[0011] According to some embodiments, a transient computer-readable storage medium is described. The transient computer-readable storage medium stores one or more programs, the one or more programs being configured to be executed by one or more processors of a computer system having one or more input devices, the one or more programs including instructions for the following operations: detecting an air gesture performed by a hand and including a rotation of the hand via the one or more input devices; and in response to detecting the air gesture: performing a first operation based on the air gesture according to determining that the air gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria satisfied when the air gesture is detected while the hand is performing a pinch gesture; and abandoning the execution of the first operation based on the air gesture according to determining that the air gesture does not satisfy the first set of criteria.

[0012] According to some embodiments, a computer system with one or more input devices is described, the computer system including: 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 include instructions for the following operations: detecting an air gesture performed by a hand and including a rotation of the hand via the one or more input devices; and in response to detecting the air gesture: performing a first operation based on the air gesture according to determining that the air gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria satisfied when the air gesture is detected while the hand is performing a pinch gesture; and abandoning the first operation based on the air gesture according to determining that the air gesture does not satisfy the first set of criteria.

[0013] According to some embodiments, a computer system with one or more input devices is described. The computer system includes: a component for detecting an air gesture performed by a hand and including a rotation of the hand via the one or more input devices; and a component for the following operations in response to detecting the air gesture: performing a first operation based on the air gesture based on determining that the air gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria satisfied when the air gesture is detected while the hand is performing a pinch gesture; and abandoning the execution of the first operation based on the air gesture based on determining that the air gesture does not satisfy the first set of criteria.

[0014] According to some embodiments, a computer program product is described, the computer program product comprising one or more programs configured to be executed by one or more processors of a computer system having one or more input devices. The one or more programs include instructions for the following operations: detecting an air gesture performed by a hand and including a rotation of the hand via the one or more input devices; and in response to detecting the air gesture: performing a first operation based on the air gesture according to determining that the air gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria satisfied when the air gesture is detected while the hand is performing a pinch gesture; and abandoning the execution of the first operation based on the air gesture according to determining that the air gesture does not satisfy the first set of criteria.

[0015] According to some embodiments, a method performed at a computer system having one or more input devices is described. The method includes: at a computer system in communication with the one or more input devices: detecting a first gesture performed by a first hand via the one or more input devices; and in response to detecting the first gesture: performing an audio playback adjustment operation based on determining that the first gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria satisfied when the first gesture includes the first hand being in a first position at least a threshold distance from a first body part of a user; and abandoning the performance of the audio playback adjustment operation based on determining that the first gesture does not satisfy the first set of criteria.

[0016] According to some embodiments, a non-transitory computer-readable storage medium is described. The non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system having one or more input devices, the one or more programs including instructions for the following operations: detecting a first gesture performed by a first hand via the one or more input devices; and in response to detecting the first gesture: performing an audio playback adjustment operation based on determining that the first gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria satisfied when the first gesture includes the first hand being in a first position at least a threshold distance from a first body part of a user; and abandoning the audio playback adjustment operation based on determining that the first gesture does not satisfy the first set of criteria.

[0017] According to some embodiments, a transient computer-readable storage medium is described. The transient computer-readable storage medium stores one or more programs, the one or more programs being configured to be executed by one or more processors of a computer system having one or more input devices, the one or more programs including instructions for the following operations: detecting a first gesture performed by a first hand via the one or more input devices; and in response to detecting the first gesture: performing an audio playback adjustment operation based on determining that the first gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria satisfied when the first gesture includes the first hand being in a first position at least a threshold distance from a first body part of a user; and abandoning the audio playback adjustment operation based on determining that the first gesture does not satisfy the first set of criteria.

[0018] According to some embodiments, a computer system with one or more input devices is described, 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 include instructions for the following operations: detecting a first gesture performed by a first hand via the one or more input devices; and in response to detecting the first gesture: performing an audio playback adjustment operation based on determining that the first gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria satisfied when the first gesture includes the first hand being in a first position at least a threshold distance from a first body part of a user; and abandoning the audio playback adjustment operation based on determining that the first gesture does not satisfy the first set of criteria.

[0019] According to some embodiments, a computer system having one or more input devices is described. The computer system includes: a component for detecting a first gesture performed by a first hand via the one or more input devices; and a component for the following operations in response to detecting the first gesture: performing an audio playback adjustment operation based on determining that the first gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria satisfied when the first gesture includes the first hand being in a first position at least a threshold distance from a first body part of a user; and abandoning the audio playback adjustment operation based on determining that the first gesture does not satisfy the first set of criteria.

[0020] According to some embodiments, a computer program product is described, the computer program product comprising one or more programs configured to be executed by one or more processors of a computer system having one or more input devices. The one or more programs include instructions for the following operations: detecting a first gesture performed by a first hand via the one or more input devices; and in response to detecting the first gesture: performing an audio playback adjustment operation based on determining that the first gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria satisfied when the first gesture includes the first hand being in a first position at least a threshold distance from a first body part of a user; and abandoning the performance of the audio playback adjustment operation based on determining that the first gesture does not satisfy the first set of criteria.

[0021] According to some embodiments, a method is described for execution on a computer system having a display generation component and one or more input devices. The method includes: at a computer system that communicates with the display generation component and the one or more input devices: when a user interface including a virtual object is displayed via the display generation component, an input is detected via the one or more input devices; and in response to detecting the input: performing a first operation relative to the first virtual object based on a determination combined with detection that the input user's attention is directed to the first virtual object and the input corresponds to a first type of input; performing a second operation relative to the first virtual object based on a determination combined with detection that the input user's attention is directed to the first virtual object and the input corresponds to a second type of input different from the first type of input, wherein the second operation is different from the first operation; performing a first operation relative to the second virtual object based on a determination combined with detection that the input user's attention is directed to the second virtual object, wherein the second virtual object is different from the first virtual object and the input corresponds to the first type of input; and performing a first operation relative to the second virtual object based on a determination combined with detection that the input user's attention is directed to the second virtual object and the input corresponds to the second type of input.

[0022] According to some embodiments, a non-transitory computer-readable storage medium is described. The non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system having a display generation component and one or more input devices, and the one or more programs include instructions for the following operations: when displaying a user interface including a virtual object via the display generation component, detecting input via the one or more input devices; and in response to detecting the input: performing a first operation relative to the first virtual object based on the determination that the input user's attention is directed to the first virtual object and the input corresponds to a first type of input; performing a second operation relative to the first virtual object based on the determination that the input user's attention is directed to the first virtual object and the input corresponds to a second type of input different from the first type of input, wherein the second operation is different from the first operation; performing a first operation relative to the second virtual object based on the determination that the input user's attention is directed to the second virtual object, wherein the second virtual object is different from the first virtual object and the input corresponds to the first type of input; and performing a first operation relative to the second virtual object based on the determination that the input user's attention is directed to the second virtual object and the input corresponds to the second type of input.

[0023] According to some embodiments, a transient computer-readable storage medium is described. The transient computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system having a display generation component and one or more input devices, the one or more programs including instructions for the following operations: when displaying a user interface including a virtual object via the display generation component, detecting input via the one or more input devices; and in response to detecting the input: performing a first operation relative to the first virtual object based on the determination that the input user's attention is directed to the first virtual object and the input corresponds to a first type of input; performing a second operation relative to the first virtual object based on the determination that the input user's attention is directed to the first virtual object and the input corresponds to a second type of input different from the first type of input, wherein the second operation is different from the first operation; performing a first operation relative to the second virtual object based on the determination that the input user's attention is directed to the second virtual object, wherein the second virtual object is different from the first virtual object and the input corresponds to the first type of input; and performing a first operation relative to the second virtual object based on the determination that the input user's attention is directed to the second virtual object and the input corresponds to the second type of input.

[0024] According to some embodiments, a computer system having a display generation component and one or more input devices is described, 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 include instructions for the following operations: when displaying a user interface including a virtual object via the display generation component, detecting input via the one or more input devices; and in response to detecting the input: performing a first operation relative to the first virtual object based on the determination combined with the detection that the input user's attention is directed to the first virtual object and the input corresponds to a first type of input; performing a second operation relative to the first virtual object based on the determination combined with the detection that the input user's attention is directed to the first virtual object and the input corresponds to a second type of input different from the first type of input, wherein the second operation is different from the first operation; performing a first operation relative to the second virtual object based on the determination combined with the detection that the input user's attention is directed to the second virtual object, wherein the second virtual object is different from the first virtual object and the input corresponds to the first type of input; and performing a first operation relative to the second virtual object based on the determination combined with the detection that the input user's attention is directed to the second virtual object and the input corresponds to the second type of input.

[0025] According to some embodiments, a computer system having a display generation component and one or more input devices is described. The computer system includes: a component for detecting input via one or more input devices when displaying a user interface including a virtual object via the display generation component; and a component for the following operations in response to detecting the input: performing a first operation relative to the first virtual object based on determining that the user's attention is directed to the first virtual object and the input corresponds to a first type of input; performing a second operation relative to the first virtual object based on determining that the user's attention is directed to the first virtual object and the input corresponds to a second type of input different from the first type of input, wherein the second operation is different from the first operation; performing a first operation relative to the second virtual object based on determining that the user's attention is directed to the second virtual object, wherein the second virtual object is different from the first virtual object and the input corresponds to the first type of input; and performing a first operation relative to the second virtual object based on determining that the user's attention is directed to the second virtual object and the input corresponds to the second type of input.

[0026] According to some embodiments, a computer program product is described, which includes one or more programs configured to be executed by one or more processors of a computer system having a display generation component and one or more input devices. The one or more programs include instructions for the following operations: when displaying a user interface including a virtual object via the display generation component, detecting input via the one or more input devices; and in response to detecting the input: performing a first operation relative to the first virtual object based on the determination combined with the detection that the input user's attention is directed to the first virtual object and the input corresponds to a first type of input; performing a second operation relative to the first virtual object based on the determination combined with the detection that the input user's attention is directed to the first virtual object and the input corresponds to a second type of input different from the first type of input, wherein the second operation is different from the first operation; performing a first operation relative to the second virtual object based on the determination combined with the detection that the input user's attention is directed to the second virtual object, wherein the second virtual object is different from the first virtual object and the input corresponds to the first type of input; and performing a first operation relative to the second virtual object based on the determination combined with the detection that the input user's attention is directed to the second virtual object and the input corresponds to the second type of input.

[0027] It should be noted that the various embodiments described above can be combined with any other embodiments described herein. The features and advantages described in this specification are not comprehensive, and in particular, many additional features and advantages will be apparent to those of ordinary skill in the art based on the drawings, the specification, and the claims. In addition, it should be noted that the language used in this specification is selected in principle for readability and instructional purposes, and may not be selected to describe or define the subject matter of the present invention. BRIEF DESCRIPTION OF THE DRAWINGS

[0028] For a better understanding of the various described embodiments, reference should be made to the following detailed description taken in conjunction with the following drawings, wherein like reference numerals designate corresponding parts throughout the several views.

[0029] Figure 1 is a block diagram illustrating an operating environment of a computer system for providing an XR experience according to some embodiments.

[0030] Figure 2 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.

[0031] Figure 3 is a block diagram illustrating display generation components of a computer system configured to provide a visual component of an XR experience to a user according to some embodiments.

[0032] Figure 4 is a block diagram illustrating a hand tracking unit of a computer system configured to capture gesture input from a user according to some embodiments.

[0033] Figure 5 is a block diagram illustrating an eye tracking unit of a computer system configured to capture gaze input of a user according to some embodiments.

[0034] Figure 6 is a flow chart illustrating a flash-assisted gaze tracking pipeline according to some embodiments.

[0035] 7A to 7E Example techniques for performing operations using mid-air gestures in accordance with some embodiments are illustrated.

[0036] Figure 8 is a flow chart of a method of performing operations using mid-air gestures according to various embodiments.

[0037] 9A to 9D Example techniques for making audio playback adjustments using gestures in accordance with some embodiments are illustrated.

[0038] Fig.10is a flow chart of a method for making audio playback adjustments using gestures according to various embodiments.

[0039] FIG. 11A to FIG. 11H Example techniques for conditionally responding to input are illustrated in accordance with some embodiments.

[0040] Fig.12 is a flow diagram of a method of conditionally responding to input according to various embodiments. DETAILED DESCRIPTION

[0041] According to some embodiments, the present disclosure relates to a user interface for providing an extended reality (XR) experience to a user.

[0042] Figures 1 to 6 A description of an example computer system for providing an XR experience to a user is provided. 7A to 7E Example techniques for performing operations using mid-air gestures in accordance with some embodiments are illustrated. Figure 8 is a flow chart of a method of performing operations using mid-air gestures according to various embodiments. 7A to 7E The user interface in Figure 8 process. 9A to 9D Example techniques for making audio playback adjustments using gestures in accordance with some embodiments are illustrated. Fig.10 is a flow chart of a method for making audio playback adjustments using gestures according to various embodiments. 9A to 9D The diagram in the figure is used for illustration Fig.10 process. FIG. 11A to FIG. 11H Example techniques for conditionally responding to input are illustrated in accordance with some embodiments. Fig.12 is a flow diagram of a method for conditionally responding to input according to various embodiments. FIG. 11A to FIG. 11H The user interface in Fig.12 process.

[0043] The process described below enhances the operability of the device and makes the user-device interface more efficient (e.g., by helping the user provide appropriate input and reducing user errors when operating / interacting with the device) through various techniques, including by providing improved visual feedback to the user, reducing the number of inputs required to perform an operation, providing additional control options without cluttering the user interface with additional display controls, performing an operation without further user input when a set of conditions have been met, improving privacy and / or security, providing a richer, more detailed and / or more realistic user experience while saving storage space, and / or additional techniques. These techniques also reduce power usage and extend the battery life of the device by enabling the user to use the device faster and more efficiently. Saving battery power, and therefore saving weight, improves the ergonomics of the device. These techniques also enable real-time communication, allow the use of fewer and / or less accurate sensors, thereby producing a more compact, lighter and cheaper device, and enable the device to be used under various lighting conditions. These techniques reduce energy usage and thereby reduce the heat emitted by the device, which is particularly important for wearable devices where if the device generates too much heat well within the operating parameters of the device components, it may become uncomfortable for the user to wear the device.

[0044] In addition, in the method described herein where one or more steps depend on one or more conditions being met, it should be understood that the method can be repeated in multiple repetitions so that in the process of repetition, all conditions for determining the steps in the method have been met in different repetitions of the method. For example, if the method needs to perform the first step (if the condition is met), and perform the second step (if the condition is not met), then the ordinary technician will know that the steps stated are repeated until both the condition is met and the condition is not met (in no particular order). Therefore, the method described as having one or more steps depending on one or more conditions being met can be rewritten as a method of repeating until each condition described in the method is met. However, this does not require the system or computer-readable medium to declare that the system or computer-readable medium contains instructions for performing a contingent operation based on the satisfaction of the corresponding one or more conditions, and is therefore able to determine whether the possible situation has been met without explicitly repeating the steps of the method until all conditions for determining the steps in the method have been met. It will also be understood by ordinary technicians in the art that, similar to the method with the contingent step, the system or computer-readable storage medium can repeat the steps of the method as many times as needed to ensure that all the contingent steps have been performed.

[0045] In some embodiments, such as Figure 1As shown in , an XR experience is provided to a user via an operating environment 100 including 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, a touch screen, etc.), one or more input devices 125 (e.g., an eye tracking device 130, a hand tracking device 140, 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 position sensor, a motion sensor, a speed sensor, etc.), and optionally one or more peripheral devices 195 (e.g., a household appliance, a wearable device, etc.). In some embodiments, one or more of the input device 125, the output device 155, the sensor 190, and the peripheral device 195 are integrated with the display generation component 120 (e.g., in a head mounted device or a handheld device).

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

[0047] Physical environment: The physical environment refers to the physical world that people can sense and / or interact with without the help 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, such as through vision, touch, hearing, taste, and smell.

[0048] Extended Reality: In contrast, an extended reality (XR) environment refers to a fully or partially simulated environment that people sense and / or interact with via an electronic system. In XR, a subset of a person's physical movements, or a representation thereof, is tracked, and in response, one or more characteristics of one or more virtual objects simulated in the XR environment are adjusted in a manner that complies with at least one physical law. For example, an XR system may detect a person's head turn, and in response, adjust the graphical content and sound field presented to the person in a manner similar to the way such views and sounds change in a physical environment. In some cases (e.g., for accessibility reasons), adjustments to the characteristics of virtual objects in the XR environment may be made in response to a representation of physical movement (e.g., a voice command). People can sense and / or interact with XR objects using any of their senses, including vision, hearing, touch, taste, and smell. For example, people can sense and / or interact with audio objects, which create a 3D or spatial audio environment that provides the perception of a point audio source in 3D space. As another example, an audio object can enable audio transparency that selectively introduces ambient sounds from the physical environment with or without computer-generated audio. In some XR environments, a person can sense and / or interact only with an audio object.

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

[0050] Virtual Reality: A virtual reality (VR) environment refers to a simulated environment designed to be based entirely on computer-generated sensory input to one or more senses. A VR environment includes a plurality of virtual objects that a person can sense and / or interact with. For example, trees, buildings, and computer-generated images representing avatars of 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 within the computer-generated environment and / or through a simulation of a subset of the person's physical movement within the computer-generated environment.

[0051] Mixed Reality: In contrast to VR environments, which are designed to be based entirely on computer-generated sensory input, a mixed reality (MR) environment refers to a simulated environment that is designed to include sensory input from the physical environment, or representations thereof, in addition to computer-generated sensory input (e.g., virtual objects). On the virtuality continuum, a mixed reality environment is anything between, but not including, a fully physical environment at one end and a virtual reality environment at the other end. In some MR environments, computer-generated sensory input can respond to changes in sensory input from the physical environment. In addition, some electronic systems used to render MR environments can track position and / or orientation relative to the physical environment to enable virtual objects to interact with real objects (i.e., physical items from the physical environment, or representations thereof). For example, the system can cause motion so that virtual trees appear stationary relative to the physical ground.

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

[0053] 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 of a physical environment. 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 a transparent or translucent display so that a person uses the system to perceive 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, which are representations of the physical environment. The system combines the image or video with the virtual object and presents the composition on an opaque display. A person uses the system to indirectly view the physical environment via an image or video of the physical environment and perceives virtual objects superimposed on the physical environment. As used herein, a video of a physical environment displayed on an opaque display is referred to as a "transparent video," meaning that the system uses one or more image sensors to capture images of the physical environment and uses those images when presenting the AR environment on an opaque display. Further alternatively, the system may have a projection system that projects virtual objects into a physical environment, such as as a hologram or on a physical surface, so that a person using the system perceives virtual objects superimposed on the physical environment. An augmented reality environment also refers to a simulated environment in which a representation of a physical environment is transformed by computer-generated sensory information. For example, in providing a pass-through video, the system may transform one or more sensor images to apply a selected perspective (e.g., a viewpoint) that is different from the perspective captured by the imaging sensor. For another example, the representation of the physical environment may be transformed by graphically modifying (e.g., enlarging) a portion thereof so that the modified portion may be a representative but not real version of the original captured image. For another example, the representation of the physical environment may be transformed by graphically eliminating a portion thereof or blurring a portion thereof.

[0054] Augmented Virtual: An augmented virtual (AV) environment refers to a simulated environment in which a virtual environment or a computer-generated environment incorporates one or more sensory inputs from the physical environment. The sensory input may be a representation of one or more characteristics of the physical environment. For example, an AV park may have virtual trees and virtual buildings, but the faces of people are realistically reproduced from images taken of physical people. For another example, a virtual object may take the shape or color of a physical object imaged by one or more imaging sensors. For another example, a virtual object may take a shadow that conforms to the positioning of the sun in the physical environment.

[0055] Viewpoint-locked virtual objects: When a computer system displays a virtual object at the same position and / or location in a user's viewpoint, the virtual object is viewpoint-locked even if the user's viewpoint shifts (e.g., changes). In embodiments where the computer system is a head-mounted device, the user's viewpoint is locked to the forward direction of the user's head (e.g., when the user is looking straight ahead, the user's viewpoint is at least a portion of the user's field of view); thus, without moving the user's head, the user's viewpoint remains fixed even when the user's gaze shifts. In embodiments where the computer system has a display generation component (e.g., a display screen) that is repositionable relative to the user's head, the user's viewpoint is an augmented reality view presented to the user on the display generation component of the computer system. For example, a viewpoint-locked virtual object that is displayed in the upper left corner of the user's viewpoint when the user's viewpoint is in a first orientation (e.g., the user's head is facing north) continues to be displayed in the upper left corner of the user's viewpoint even when the user's viewpoint changes to a second orientation (e.g., the user's head is facing west). In other words, the position and / or location of the viewpoint-locked virtual object displayed in the user's viewpoint is independent of the user's position and / or orientation in the physical environment. In embodiments where 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."

[0056] Environment-locked visual objects: A virtual object is environment-locked (alternatively, "world-locked") when a computer system displays a virtual object at a position and / or location in a user's viewpoint that is based on (e.g., selected with reference to and / or anchored to) a location and / or object in a three-dimensional environment (e.g., a physical environment or a virtual environment). As the user's viewpoint moves, the location and / or objects in the environment change relative to the user's viewpoint, which causes the environment-locked virtual object to be displayed at a different location and / or location in the user's viewpoint. For example, an environment-locked virtual object locked to a tree immediately in front of the user is displayed at the center of the user's viewpoint. When the user's viewpoint shifts to the right (e.g., the user's head turns to the right) such that the tree is now to the left of center in the user's viewpoint (e.g., the tree location in the user's viewpoint shifts), the environment-locked virtual object locked to the tree is displayed to the left of center in the user's viewpoint. In other words, the position and / or orientation of the virtual object that is locked to the environment in the user's viewpoint depends on the position and / or orientation of the object in the environment to which the virtual object is locked. In some embodiments, the computer system uses a stationary reference system (e.g., a coordinate system anchored to a fixed position and / or object in the physical environment) to determine the position of the virtual object that is locked to the user's viewpoint. The virtual object that is locked to the environment can be locked to a stationary part of the environment (e.g., a floor, wall, table or other stationary object), or can be locked to a movable part of the environment (e.g., a vehicle, animal, person or even a representation of a part of the user's body that moves independently of the user's viewpoint, such as a hand, wrist, arm or foot of the user) so that the virtual object moves as the viewpoint or the part of the environment moves to maintain a fixed relationship between the virtual object and the part of the environment.

[0057] In some embodiments, an environment-locked or viewpoint-locked virtual object exhibits an inertial following behavior that reduces or delays the movement of the environment-locked or viewpoint-locked virtual object relative to the movement of a reference point followed by the virtual object. In some embodiments, when exhibiting inertial following behavior, when detecting the movement of a reference point (e.g., a portion of the environment, a viewpoint, or a point fixed relative to the viewpoint, such as a point between 5 cm and 300 cm from the viewpoint) that the virtual object is following, the computer system intentionally delays the movement of the virtual object. For example, when the reference point (e.g., a portion of the environment or a viewpoint) moves at a first speed, the virtual object is moved by the device to remain locked to the reference point, but moves at a second speed that is slower than the first speed (e.g., until the reference point stops moving or slows down, at which time the virtual object begins to catch up with the reference point). In some embodiments, when the virtual object exhibits inertial following behavior, the device ignores small amounts of movement of the reference point (e.g., ignoring movements of the reference point below a threshold movement amount, such as moving 0 to 5 degrees or moving 0 to 50 cm). For example, when a reference point (e.g., a portion or viewpoint of an environment to which a virtual object is locked) moves a first amount, the distance between the reference point and the virtual object increases (e.g., because the virtual object is being displayed so as 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., the portion or viewpoint of the environment to which the virtual object is locked) moves a second amount greater than the first amount, the distance between the reference point and the virtual object first increases (e.g., because the virtual object is being displayed so as 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 when the amount of movement of the reference point increases above a threshold (e.g., a “lazy follow” threshold) because 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, maintaining a substantially fixed position of the virtual object relative to the reference point includes displaying the virtual object within a threshold distance (e.g., 1 cm, 2 cm, 3 cm, 5 cm, 15 cm, 20 cm, 50 cm) of the reference point in one or more dimensions (e.g., up / down, left / right, and / or forward / backward relative to the position of the reference point).

[0058] Hardware: There are many different types of electronic systems that enable a person to sense and / or interact with various XR environments. Examples include head-mounted systems, projection-based systems, heads-up displays (HUDs), vehicle windshields with integrated display capabilities, windows with integrated display capabilities, displays formed as lenses designed to be placed on a person's eyes (e.g., similar to contact lenses), headphones / earphones, speaker arrays, input systems (e.g., wearable or handheld controllers with or without tactile feedback), smartphones, tablet devices, and desktop / laptop computers. A head-mounted system may include speakers and / or other audio output devices integrated into the head-mounted system for providing audio output. A head-mounted system may have one or more speakers 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. Instead of an opaque display, a head-mounted system may have a transparent or translucent display. A transparent or translucent display may have a medium through which light representing an image is directed to a person's eyes. The display may utilize digital light projection, OLED, LED, uLED, liquid crystal on silicon, laser scanning light sources, or any combination of these technologies. The medium may be an optical waveguide, a hologram medium, an optical combiner, an optical reflector, or any combination thereof. In one embodiment, a transparent or translucent display may be configured to selectively become opaque. A projection-based system may employ retinal projection technology that projects graphic images onto a person's retina. The projection system may also be configured to project virtual objects into a physical environment, such as as a hologram or on a physical surface. In some embodiments, the controller 110 is configured to manage and coordinate the user's XR experience. In some embodiments, the controller 110 includes a suitable combination of software, firmware, and / or hardware. The following description with respect to Figure 2Controller 110 is described in more detail. In some embodiments, controller 110 is a computing device that is located locally or remotely relative to scene 105 (e.g., physical environment). For example, controller 110 is a local server located within scene 105. As another example, controller 110 is a remote server (e.g., cloud server, central server, etc.) located outside scene 105. In some embodiments, controller 110 is communicatively coupled to display generation component 120 (e.g., HMD, display, projector, touch screen, etc.) via one or more wired or wireless communication channels 144 (e.g., Bluetooth, IEEE802.11x, IEEE 802.16x, IEEE 802.3x, etc.). In another example, the controller 110 is included within a housing (e.g., a physical housing) of the display generating component 120 (e.g., an HMD or a portable electronic device including a display and one or more processors, etc.), one or more input devices of the input devices 125, one or more output devices of the output devices 155, one or more sensors of the sensors 190, and / or one or more peripheral devices of the peripheral devices 195, or shares the same physical housing or support structure with one or more of the above devices.

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

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

[0061] In some embodiments, the display generation component is worn on a part of the user's body (e.g., on his / her head, on his / her hand, etc.). In this way, the display generation component 120 includes one or more XR displays provided for displaying XR content. For example, in various embodiments, the display generation component 120 surrounds the user's field of view. In some embodiments, the display generation component 120 is a handheld device (such as a smart phone or tablet device) configured to present XR content, and the user holds a device with a display facing the user's field of view and a camera facing the scene 105. In some embodiments, the handheld device is optionally placed in a shell worn on the user's head. In some embodiments, the handheld device is optionally placed on a support (e.g., a tripod) in front of the user. In some embodiments, the display generation component 120 is an XR room, shell, or room configured to present XR content, wherein the user does not wear or hold the display generation 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 showing interactions with XR content triggered based on interactions occurring in the space in front of a handheld device or a tripod-mounted device may similarly be implemented with an HMD, where the interactions occur in the space in front of the HMD and responses to the XR content are displayed via the HMD. Similarly, a user interface showing interactions with XR content triggered based on movement of a handheld device or a tripod-mounted device relative to a physical environment (e.g., scene 105 or a part of a user's body (e.g., the user's eyes, head, or hands)) may similarly be implemented with an HMD, where the movement is caused by movement of the HMD relative to the physical environment (e.g., scene 105 or a part of a user's body (e.g., the user's eyes, head, or hands)).

[0062] Despite Figure 1 Relevant features of operating environment 100 are shown in , but those skilled in the art will recognize from this disclosure that various other features are not illustrated for the sake of brevity and so as not to obscure more relevant aspects of the example embodiments disclosed herein.

[0063] Figure 2is a block diagram of an example of a controller 110 according to some embodiments. While some specific features are illustrated, those skilled in the art will recognize from this disclosure that various other features are not illustrated for the sake of brevity and so as not to obscure more relevant aspects of the embodiments disclosed herein. To this end, as a 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., a 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, and / or similar types of interfaces), one or more programming (e.g., I / O) interfaces 210, a memory 220, and one or more communication buses 204 for interconnecting these components and various other components.

[0064] In some embodiments, the one or more communication buses 204 include circuits that interconnect and control communications between system components. In some embodiments, the one or more I / O devices 206 include at least one of a keyboard, a mouse, a touch pad, a joystick, one or more microphones, one or more speakers, one or more image sensors, one or more displays, and the like.

[0065] The memory 220 includes a high-speed random access memory, such as a dynamic random access memory (DRAM), a static random access memory (SRAM), a double data rate random access memory (DDR RAM), or other random access solid-state memory devices. In some embodiments, the memory 220 includes a 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. The memory 220 optionally includes one or more storage devices located away from the one or more processing units 202. The memory 220 includes a non-transitory computer-readable storage medium. In some embodiments, the memory 220 or the non-transitory computer-readable storage medium of the memory 220 stores the following programs, modules, and data structures or subsets thereof, including an optional operating system 230 and an XR experience module 240.

[0066] The operating system 230 includes instructions for handling various basic system services and for performing hardware-related tasks. In some embodiments, the XR experience module 240 is configured to manage and coordinate single or multiple XR experiences of one or more users (e.g., a single XR experience of one or more users, or multiple XR experiences of corresponding groups of one or more users). To this end, in various embodiments, the XR experience module 240 includes a data acquisition unit 241, a tracking unit 242, a coordination unit 246, and a data sending unit 248.

[0067] In some embodiments, the data acquisition unit 241 is configured to obtain Figure 1 120, and optionally acquires data (e.g., presentation data, interaction data, sensor data, location data, etc.) from one or more of input device 125, output device 155, sensor 190, and / or peripheral device 195. To this end, in various embodiments, data acquisition unit 241 includes instructions and / or logic for instructions as well as heuristics and metadata for the heuristics.

[0068] In some embodiments, tracking unit 242 is configured to map scene 105 and track at least display generation component 120 relative to Figure 1 105, and optionally tracks the position / location of one or more of the input device 125, the output device 155, the sensor 190, and / or the peripheral device 195. To this end, in various embodiments, the tracking unit 242 includes instructions and / or logic for the instructions and heuristics and metadata for the heuristics. In some embodiments, the tracking unit 242 includes a hand tracking unit 244 and / or an eye tracking unit 243. In some embodiments, the hand tracking unit 244 is configured to track the position / location of one or more parts of the user's hand and / or the position of one or more parts of the user's hand relative to the user's hand. Figure 1 The movement of the scene 105 relative to the display generation component 120 and / or relative to a coordinate system (the coordinate system is defined relative to the user's hand). Figure 4 The hand tracking unit 244 is described in more detail. In some embodiments, the eye tracking unit 243 is configured to track the position or movement of the user's gaze (or more generally, the user's eyes, face, or head) relative to the scene 105 (e.g., relative to the physical environment and / or relative to the user (e.g., the user's hands)) or relative to the XR content displayed via the display generation component 120. Figure 5 The eye tracking unit 243 is described in more detail.

[0069] 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 device 155 and / or peripherals 195. To this end, in various embodiments, coordination unit 246 includes instructions and / or logic for instructions and heuristics and metadata for the heuristics.

[0070] In some embodiments, the data sending unit 248 is configured to send data (e.g., presentation data, position data, etc.) to at least the display generation component 120, and optionally to one or more of the input device 125, the output device 155, the sensor 190, and / or the peripheral device 195. For this purpose, in various embodiments, the data sending unit 248 includes instructions and / or logic for the instructions as well as heuristics and metadata for the heuristics.

[0071] Although the data acquisition unit 241, the tracking unit 242 (e.g., including the eye tracking unit 243 and the hand tracking unit 244), the coordination unit 246, and the data sending unit 248 are illustrated as residing on a single device (e.g., the controller 110), it should be understood that in other embodiments, any combination of the data acquisition unit 241, the tracking unit 242 (e.g., including the eye tracking unit 243 and the hand tracking unit 244), the coordination unit 246, and the data sending unit 248 may be located in separate computing devices.

[0072] also, Figure 2 It serves more as a functional description of various features that may be present in a particular implementation, as opposed to a block diagram of the embodiments described herein. As one of ordinary skill in the art will recognize, items shown separately may be combined, and some items may be separated. For example, Figure 2 Some functional modules shown separately in the figure can be implemented in a single module, and the various functions of a single functional block can be implemented by one or more functional blocks in various embodiments. The actual number of modules and the division of specific functions and how the features are distributed among them will vary depending on the specific implementation, and in some embodiments, depends in part on the specific combination of hardware, software and / or firmware selected for a specific implementation.

[0073] Figure 3is a block diagram of an example of a display generation component 120 according to some embodiments. While some specific features are illustrated, those skilled in the art will recognize from this disclosure that various other features are not illustrated for the sake of brevity and so as not to obscure more relevant aspects of the embodiments disclosed herein. For this purpose, as a non-limiting example, in some embodiments, the display generation component 120 (e.g., an HMD) includes one or more processing units 302 (e.g., a microprocessor, an ASIC, an FPGA, a GPU, a CPU, a processing core, 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, IEEE802.11x, IEEE 802.16x, GSM, CDMA, TDMA, GPS, IR, 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 internal-facing and / or external-facing image sensors 314, a memory 320, and one or more communication buses 304 for interconnecting these and various other components.

[0074] In some embodiments, one or more communication buses 304 include circuits for interconnecting and controlling communications between various system components. In some embodiments, one or more I / O devices and sensors 306 include 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, a blood glucose sensor, etc.), one or more microphones, one or more speakers, a haptic engine, and / or one or more depth sensors (e.g., structured light, time of flight, etc.), etc.

[0075] In some embodiments, one or more XR displays 312 are configured to provide an XR experience to the user. In some embodiments, 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 emission display (SED), field emission display (FED), quantum dot light emitting diode (QD-LED), microelectromechanical system (MEMS) and / or similar display types. In some embodiments, one or more XR displays 312 correspond to diffraction, reflection, polarization, holographic and other waveguide displays. For example, the display generation component 120 (e.g., 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, one or more XR displays 312 can present MR and VR content. In some embodiments, one or more XR displays 312 can present MR or VR content.

[0076] 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 an eye tracking camera). In some embodiments, the one or more image sensors 314 are configured to acquire image data corresponding to the user's hands and, optionally, at least a portion of the user's arms (and may be referred to as a hand tracking camera). In some embodiments, the one or more image sensors 314 are configured to face forward so as to acquire image data corresponding to a scene that the user would see in the absence of the display generating component 120 (e.g., an HMD) (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, and / or one or more event-based cameras, etc.

[0077] The memory 320 includes a high-speed random access memory, such as a DRAM, SRAM, DDR RAM, or other random access solid-state memory device. In some embodiments, the memory 320 includes a 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. The memory 320 optionally includes one or more storage devices located away from the one or more processing units 302. The memory 320 includes a non-transitory computer-readable storage medium. In some embodiments, the memory 320 or the non-transitory computer-readable storage medium of the memory 320 stores the following programs, modules, and data structures or a subset thereof, including an optional operating system 330 and an XR rendering module 340.

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

[0079] In some embodiments, the data acquisition unit 342 is configured to at least Figure 1 The controller 110 acquires data (e.g., presentation data, interaction data, sensor data, location data, etc.). For the purposes described, in various embodiments, the data acquisition unit 342 includes instructions and / or logic for instructions and heuristics and metadata for the heuristics.

[0080] In some embodiments, the XR rendering unit 344 is configured to render XR content via one or more XR displays 312. For such purposes, in various embodiments, the XR rendering unit 344 includes instructions and / or logic for the instructions and heuristics and metadata for the heuristics.

[0081] 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. For such purposes, in various embodiments, the XR map generation unit 346 includes instructions and / or logic for the instructions and heuristics and metadata for the heuristics.

[0082] In some embodiments, the data sending unit 348 is configured to send data (e.g., presentation data, position data, etc.) to at least the controller 110, and optionally one or more of the input device 125, the output device 155, the sensor 190, and / or the peripheral device 195. For such purposes, in various embodiments, the data sending unit 348 includes instructions and / or logic for the instructions and heuristics and metadata for the heuristics.

[0083] Although the data acquisition unit 342, the XR rendering unit 344, the XR map generation unit 346, and the data transmission unit 348 are shown as residing on a single device (e.g., Figure 1 , but it should be understood that in other embodiments, any combination of the data acquisition unit 342, the XR rendering unit 344, the XR mapping generation unit 346, and the data sending unit 348 may be located in a separate computing device.

[0084] also, Figure 3 More as a functional description of various features that may be present in a particular embodiment, rather than a schematic diagram of the structures of the embodiments described herein. As one of ordinary skill in the art will recognize, items shown separately may be combined, and some items may be separated. For example, Figure 3 Some functional modules shown separately in the figure may be implemented in a single module, and the various functions of a single functional block may be implemented by one or more functional blocks in various embodiments. The actual number of modules and the division of specific functions and how the features are distributed among them will vary depending on the specific implementation, and in some embodiments, depends in part on the specific combination of hardware, software and / or firmware selected for a specific implementation.

[0085] Figure 4 is a schematic illustration of an example implementation of the hand tracking device 140. In some implementations, the hand tracking device 140 ( Figure 1 ) is controlled by the hand tracking unit 244 ( Figure 2 ) to track the position / location of one or more parts of a user's hand and / or one or more parts of a user's hand relative to Figure 1The hand tracking device 140 can be used to track movement of the scene 105 (e.g., relative to a portion of the physical environment surrounding the user, relative to the display generation component 120, or relative to a portion of the user (e.g., the user's face, eyes, or head), and / or relative to a coordinate system that is defined relative to the user's hands). In some embodiments, the hand tracking device 140 is part of the display generation component 120 (e.g., embedded in or attached to the head-mounted device). In some embodiments, the hand tracking device 140 is separate from the display generation component 120 (e.g., located in a separate housing or attached to a separate physical support structure).

[0086] 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, etc.) that captures three-dimensional scene information including at least a human user's hand 406. The image sensor 404 captures hand images with sufficient resolution so that fingers and their corresponding positioning can be distinguished. The image sensor 404 typically captures images of other parts of the user's body, or may capture images of all parts of the body, and may have zoom capabilities or a dedicated sensor with increased magnification to capture images of the hand with 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 other image sensors to capture the physical environment of the scene 105, or is used as an image sensor to capture the physical environment of the scene 105. In some embodiments, the image sensor is positioned relative to the user or the user's environment in a manner that the field of view of the image sensor 404 or a portion thereof is used to define an interaction space, in which the hand movements captured by the image sensor are considered as input to the controller 110.

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

[0088] In some embodiments, the image sensor 404 projects a speckled pattern onto a scene containing 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 offset of the spots in the pattern. This method is advantageous because it does not require the user to hold or wear any kind of beacon, sensor, or other marker. The method gives the depth coordinates of points in the scene relative to a predetermined reference plane at a specific distance from the image sensor 404. In the present disclosure, it is assumed that the image sensor 404 defines an orthogonal set of x-axis, y-axis, and z-axis, so that the depth coordinates of points in the scene correspond to the z component measured by the image sensor. Alternatively, the image sensor 404 (e.g., a hand tracking device) may use other 3D mapping methods based on a single or multiple cameras or other types of sensors, such as stereo imaging or time-of-flight measurement.

[0089] In some embodiments, the hand tracking device 140 captures and processes a time series of depth maps containing the user's hand as the user moves his hand (e.g., the entire hand or one or more fingers). Software running on the image sensor 404 and / or the processor in the controller 110 processes the 3D map data to extract image patch descriptors of the hand in these depth maps. The software can match these descriptors with image patch descriptors stored in the database 408 based on a previous learning process to estimate the pose of the hand in each frame. The pose typically includes the 3D position of the user's hand joints and finger tips.

[0090] The software can also analyze the trajectory of the hand and / or finger over multiple frames in the sequence to identify gestures. The pose estimation function described herein can be alternated with the motion tracking function so that the image block-based pose estimation is performed only once every two (or more) frames, and the tracking is used to find the changes in pose that occur on the remaining frames. The pose, motion, and gesture information is provided to the application running on the controller 110 via the above-mentioned API. The program can, for example, move and modify the image presented on the display generation component 120 in response to the pose and / or gesture information, or perform other functions.

[0091] In some embodiments, gestures include air gestures. An air gesture is a gesture detected without 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) (or independent of an input element that is part of a device) and based on detected movement of a part of the user's body (e.g., head, one or more arms, one or more hands, one or more fingers, and / or one or more legs) through 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 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 the user's other hand, and / or movement of a user's finger relative to another finger or part of the user's hand), and / or absolute movement of a part of the user's body (e.g., a tap gesture in which the hand moves a predetermined amount and / or speed in a predetermined posture, or a shake gesture including a predetermined speed or amount of rotation of a part of the user's body)).

[0092] In some embodiments, according to some embodiments, the input gestures used in the various examples and embodiments described herein include air gestures for interacting with an XR environment (e.g., a virtual or mixed reality environment) performed by movement of a user's fingers relative to other fingers (or parts of a user's hand). In some embodiments, an air gesture is a gesture 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 based on detected movement of a part of the user's body through 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 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 the user's other hand, and / or movement of the user's fingers relative to another finger or part of the user's hand), and / or absolute movement of a part of the user's body (e.g., a tap gesture in which the hand moves a predetermined amount and / or speed in a predetermined posture, or a shake gesture including a predetermined speed or rotation amount of a part of the user's body)).

[0093] In some embodiments where the input gesture is an in-air gesture (e.g., in the absence of physical contact with an input device that provides information to the computer system about which user interface element is the target of the user input, such as contact with a user interface element displayed on a touch screen, 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., for direct input, as described below). Thus, in embodiments involving in-air gestures, for example, the input gesture is combined (e.g., simultaneously) with movement of the user's fingers and / or hand to detect attention (e.g., gaze) toward a user interface element to perform a pinch and / or tap input, as described below.

[0094] In some embodiments, an input gesture pointing to a user interface object is performed directly or indirectly with reference to the user interface object. For example, the user input is performed directly on the user interface object according to performing the input with the user's hand at a location corresponding to the location of the user interface object in the three-dimensional environment (e.g., as determined based on the user's current viewpoint). In some embodiments, when the user's attention (e.g., gaze) to the user interface object is detected, the input gesture is performed indirectly on the user interface object according to the user's hand being located not at the location corresponding to the location of the user interface object in the three-dimensional environment while the user performs the input gesture. For example, for a direct input gesture, the user can direct the user's input to the user interface object by initiating a gesture at or near a location corresponding to the display location of the user interface object (e.g., within 0.5 cm, 1 cm, 5 cm, or a distance between 0 and 5 cm measured from the outer edge of the option or the center portion of the option). For an indirect input gesture, the user can direct the user's input to the user interface object by focusing on the user interface object (e.g., by gazing at the user interface object), and while focusing on the option, the user initiates an input gesture (e.g., at any location detectable by the computer system) (e.g., at a location that does not correspond to the display location of the user interface object).

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

[0096] In some embodiments, the pinch input is part of an air gesture that includes one or more of the following: a pinch gesture, a long pinch gesture, a pinch and drag gesture, or a double pinch gesture. For example, a pinch gesture as an air gesture includes movement of two or more fingers of a hand to contact each other, that is, optionally followed by an immediate (e.g., within 0 seconds to 1 second) interruption of contact with each other. A long pinch gesture as an air gesture includes movement of two or more fingers of a hand in contact with each other for at least a threshold amount of time (e.g., at least 1 second) before an interruption of contact with each other is detected. For example, a long pinch gesture includes the user maintaining a pinch gesture (e.g., in which two or more fingers are in contact), and the long pinch gesture continues until an interruption of contact between the two or more fingers is detected. In some embodiments, a double pinch gesture as an air gesture includes two (e.g., or more) pinch inputs (e.g., performed by the same hand) that are detected consecutively immediately (e.g., within a predefined time period) with each other. For example, the user performs a first pinch input (e.g., a pinch input or a long pinch input), releases the first pinch input (e.g., interrupts contact between two or more fingers), and performs a second pinch input within a predefined time period after releasing the first pinch input (e.g., within 1 second or within 2 seconds).

[0097] In some embodiments, the pinch and drag gesture as an air gesture includes a pinch gesture (e.g., a pinch gesture or a long pinch gesture) performed in conjunction with (e.g., following) a drag input that changes the position of the user's hand from a first position (e.g., the starting position of the drag) to a second position (e.g., the ending 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., opens their two or more fingers) 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 to contact each other and moves the same hand to the second position in the air using the drag gesture). In some embodiments, the pinch input is performed by the user's first hand, and the drag input is performed by the user's second hand (e.g., while the user continues the pinch input with the user's first hand, the user's second hand moves from the first position to the second position in the air). In some embodiments, the input gesture as an air gesture includes input performed using both hands of the user (e.g., pinch and / or tap input). For example, the input gesture includes two (e.g., or more) pinch inputs that are performed in conjunction with each other (e.g., concurrently or within a predefined time period). For example, a first pinch gesture (e.g., a pinch input, a long pinch input, or a pinch and drag input) is performed using a first hand of a user, and a second pinch input is performed using another hand (e.g., a second hand of the user's two hands) in conjunction with the pinch input performed using the first hand. In some embodiments, movement between the user's two hands (e.g., increasing and / or decreasing the distance or relative orientation between the user's two hands).

[0098] In some embodiments, a tap input performed as an air gesture (e.g., pointing to a user interface element) includes movement of a user's finger toward the user interface element, movement of the user's hand toward the user interface element (optionally, extension of the user's finger toward the user interface element), downward movement of the user's finger (e.g., mimicking a mouse click motion or a tap on a touch screen), 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 movement of the finger or hand, which is a movement of the finger or hand away from the user's viewpoint and / or toward an object that is the target of the tap input, followed by an end of the movement. In some embodiments, the end of the movement is detected based on a change in the movement characteristics of the finger or hand performing the tap gesture (e.g., the end of movement away from the user's viewpoint and / or toward an 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 acceleration direction of the movement of the finger or hand).

[0099] In some embodiments, it is determined that the user's attention is directed to a portion of the three-dimensional environment based on detection of a gaze directed to that portion of the three-dimensional environment (optionally, no other conditions are required). In some embodiments, it is determined that the user's attention is directed to a portion of the three-dimensional environment based on detection of a gaze directed to that portion of the three-dimensional environment using 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., a dwell duration) and / or requiring the gaze to be directed to the portion of the three-dimensional environment when the user's viewpoint is within a distance threshold from the portion of the three-dimensional environment, so that the device determines that the user's attention is directed to the portion of the three-dimensional environment, wherein if one of these additional conditions is not met, the device determines that the attention is not directed to the portion of the three-dimensional environment to which the gaze is directed (e.g., until the one or more additional conditions are met).

[0100] In some embodiments, detection of a ready state configuration of a user or a portion of a user is detected by a computer system. Detection of a ready state configuration of a hand is used by the computer system as an indication that the user may be preparing to interact with the computer system using one or more air gesture inputs (e.g., pinch, tap, pinch and drag, double pinch, long pinch, or other air gestures described herein) performed by the hand. For example, the ready state of the hand is determined based on whether the hand has a predetermined hand shape (e.g., a pre-pinch shape with the thumb and one or more fingers extended and spaced apart in preparation for a pinch or grab gesture, or a pre-tap with one or more fingers extended and the palm facing away from the user), based on whether the hand is in a predetermined position relative to the user's viewpoint (e.g., below the user's head and above the user's waist and extending at least 15 cm, 20 cm, 25 cm, 30 cm, or 50 cm from the body), and / or based on whether the hand has moved in a particular manner (e.g., toward an area in front of the user above the user's waist and 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 responds to attention (e.g., gaze) input.

[0101] In scenarios where input is described with reference to in-air gestures, it should be understood that similar gestures may be detected using a hardware input device attached to or held by one or more hands of a user, where the positioning of the hardware input device in space may 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 the positioning and / or movement of the hardware input device is used instead of the positioning and / or movement of the one or more hands in the corresponding in-air gesture. In scenarios where input is described with reference to air gestures, it should be understood that similar gestures may be detected using a hardware input device attached to or held by one or more hands of a user, user input may be detected using controls contained in the 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 overlays that can detect the positioning or changes in positioning of parts of a hand and / or finger 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 performed using controls contained in the hardware input device is used in place of hand and / or finger gestures such as an air tap or air pinch in a corresponding air gesture. For example, a selection input described as being performed using an air tap or air pinch input may alternatively be detected using a button press, a tap on a touch-sensitive surface, a press on a pressure-sensitive surface, or other hardware input. As another example, movement input described as being performed using an air pinch and drag may alternatively be detected based on interaction with a hardware input control, such as a button press and hold, a touch on a touch-sensitive surface, a press on a pressure-sensitive surface, or other hardware input following movement of a hardware input device (e.g., along with a hand associated with the hardware input device) through space. Similarly, two-handed input involving movement of hands relative to each other may be performed using one air gesture and one hardware input device in the hand that is not performing the air gesture, two hardware input devices held in different hands, or two air gestures performed by different hands using various combinations of air gestures and / or inputs detected by one or more of the above hardware input devices.

[0102] In some embodiments, the software may be downloaded to the controller 110 in electronic form, for example, over a network, or may alternatively be provided on a tangible, non-transitory medium such as an optical, magnetic, or electronic memory medium. In some embodiments, the database 408 is also stored in a memory associated with the controller 110. Alternatively or in addition, some or all of the described functions 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). Although in Figure 4Controller 110 is shown in FIG. 1 , but 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 other device associated with the image sensor 404, for example, as a separate unit from 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 receiver, handheld device, or head-mounted device) or with any other suitable computerized device (such as a game console or media player). The sensing functions of the image sensor 404 may also be integrated into a computer or other computerized device to be controlled by the sensor output.

[0103] Figure 4 Also included is a schematic diagram of a depth map 410 captured by the image sensor 404 according to some embodiments. As described above, the depth map includes a matrix of pixels with corresponding depth values. Pixels 412 corresponding to the hand 406 have been segmented from the background and wrist in the figure. The brightness of each pixel in the depth map 410 is inversely proportional to its depth value (i.e., the measured z distance from the image sensor 404), where the gray shade becomes darker as the depth increases. The controller 110 processes these depth values ​​in order to identify and segment the components of the image that have human hand characteristics (i.e., a group of adjacent pixels). These characteristics may include, for example, overall size, shape, and movement from frame to frame in the depth map sequence.

[0104] Figure 4 Also schematically illustrated is a hand skeleton 414 that the controller 110 ultimately extracts from the depth map 410 of the hand 406 according to some embodiments. Figure 4 In the hand skeleton 414, a hand background 416 that has been segmented from the original depth map is superimposed. In some embodiments, key feature points of the hand and optionally on a wrist or arm connected to the hand (e.g., points corresponding to knuckles, finger tips, palm center, end of the hand connected to the wrist, etc.) are identified and located on the hand skeleton 414. In some embodiments, the controller 110 uses the position and movement of these key feature points over multiple image frames to determine the gesture performed by the hand or the current state of the hand according to some embodiments.

[0105] Figure 5 The eye tracking device 130 ( Figure 1 ). In some embodiments, the eye tracking device 130 is composed of an eye tracking unit 243 ( Figure 2) controls to track the position and movement of the user's gaze relative to the scene 105 or relative to the XR content displayed via the display generation component 120. In some embodiments, the eye tracking device 130 is integrated with the display generation component 120. For example, in some embodiments, when the display generation component 120 is a head-mounted device (such as headphones, helmets, goggles, or glasses) or a handheld device placed 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, the eye tracking device 130 is separate from the display generation component 120. For example, when the display generation component is a handheld device or an XR room, the eye tracking device 130 is optionally a device separate from the handheld device or the XR room. In some embodiments, the eye tracking device 130 is a head-mounted device or a part of a head-mounted device. In some embodiments, the head-mounted eye tracking device 130 is optionally used in conjunction with a display generation component that is also head-mounted or a display generation component that is not head-mounted. In some embodiments, the eye tracking device 130 is not a head mounted device, and is optionally used in conjunction with a head mounted display generation component. In some embodiments, the eye tracking device 130 is not a head mounted device, and is optionally part of a non-head mounted display generation component.

[0106] In some embodiments, the display generation component 120 uses a display mechanism (e.g., a left near-eye display panel and a right near-eye display panel) to display a frame including a left image and a right image in front of the user's eyes, thereby providing a 3D virtual view to the user. For example, the head-mounted display generation component may include a left optical lens and a right optical lens (referred to herein as eye lenses) located 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 cameras that capture a video of the user's environment for display. In some embodiments, the head-mounted display generation component may have a transparent or translucent display, and display a virtual object on the transparent or translucent display, and the user can directly view the physical environment through the transparent or translucent display. In some embodiments, the display generation component projects the virtual object into the physical environment. The virtual object may, for example, be projected on a physical surface or projected as a hologram so that an individual using the system observes the virtual object superimposed on the physical environment. In this case, separate display panels and image frames for the left and right eyes may not be required.

[0107] like Figure 5As shown in , in some embodiments, the eye tracking device 130 (e.g., gaze tracking device) includes at least one eye tracking camera (e.g., an infrared (IR) or near infrared (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 can be pointed at the user's eyes to receive the IR or NIR light reflected directly from the eyes by the light source, or alternatively can be pointed at "hot" mirrors located between the user's eyes and the display panel, which reflect the IR or NIR light from the eyes to the eye tracking camera while allowing visible light to pass through. The 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 gaze tracking information, and transmits the gaze tracking information to the controller 110. In some embodiments, the user's two eyes are tracked separately by corresponding eye tracking cameras and illumination sources. In some embodiments, only one eye of the user is tracked by the corresponding eye tracking camera and illumination source.

[0108] In some embodiments, the eye tracking device 130 is calibrated using a device-specific calibration process to determine the parameters of the eye tracking device for a specific operating environment 100, such as the 3D geometric relationships and parameters of the LED, camera, thermal mirror (if present), eye lens, and display screen. The device-specific calibration process can be performed at a factory or another facility before the AR / VR equipment is delivered to the end user. The device-specific calibration process can be an automatic calibration process or a manual calibration process. According to some embodiments, the user-specific calibration process may include an estimate of the eye parameters of a specific user, such as pupil position, foveal position, optical axis, visual axis, eye spacing, etc. According to some embodiments, once the device-specific parameters and user-specific parameters are determined for the eye tracking device 130, a flash-assisted method can be used to process the images captured by the eye tracking camera to determine the current visual axis and the user's gaze point relative to the display.

[0109] like Figure 5As shown in , the eye tracking device 130 (e.g., 130A or 130B) includes an eye lens 520 and a gaze tracking system, which includes at least one eye tracking camera 540 (e.g., an infrared (IR) or near infrared (NIR) camera) positioned on the side of the user's face on which eye tracking is performed, 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 592. The eye tracking camera 540 can be directed toward a mirror 550 (which reflects IR or NIR light from the eye 592 while allowing visible light to pass) located between the user's eye 592 and a display 510 (e.g., a left display panel or a right display panel of a head-mounted display, or a display of a handheld device, a projector, etc.) Figure 5 ), or alternatively may be directed toward the user's eye 592 to receive reflected IR or NIR light from the eye 592 (e.g., as shown in the top portion of Figure 5 ).

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

[0111] Several possible use cases for the user's current gaze direction are described below and are not intended to be limiting. As an example use case, the controller 110 may render virtual content differently based on the determined direction of the user's gaze. For example, the controller 110 may generate virtual content at a higher resolution in the foveal area determined according to the user's current gaze direction than in the peripheral area. As another example, the controller may position or move virtual content in a view based at least in part on the user's current gaze direction. As another example, the controller may display specific virtual content in a view based at least in part on the user's current gaze direction. As another example use case in an AR application, the controller 110 may guide an external camera for capturing the physical environment of the XR experience to focus in the determined direction. The autofocus mechanism of the external camera may then focus on an object or surface in the environment that the user is currently looking at on the display 510. As another example use case, the eye lens 520 may be a focusable lens, and the controller uses gaze tracking information to adjust the focus of the eye lens 520 so that the virtual object that the user is currently looking at has an appropriate degree of convergence to match the convergence of the user's eye 592. The controller 110 can use the gaze tracking information to guide the eye lens 520 to adjust the focus so that nearby objects that the user is looking at appear at the correct distance.

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

[0113] In some embodiments, the display 510 emits light in the visible range and does not emit light in the IR or NIR range, and therefore does not introduce noise into the gaze tracking system. Note that the positions and angles of the eye tracking cameras 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.

[0114] like Figure 5 Embodiments of the illustrated gaze tracking system 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.

[0115] Figure 6 A flash-assisted gaze tracking pipeline according to some embodiments is illustrated. In some embodiments, the gaze tracking pipeline is implemented by a flash-assisted gaze tracking system (e.g., Figure 1 and Figure 5 The flash-assisted gaze tracking system can maintain a tracking state. Initially, the tracking state is off or "no". When in the tracking state, the flash-assisted gaze tracking system uses previous information from previous frames when analyzing the current frame to track the pupil outline and the flash in the current frame. When not in the tracking state, the flash-assisted gaze tracking system attempts to detect the pupil and the flash in the current frame, and if successful, initializes the tracking state to "yes" and continues to the next frame in the tracking state.

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

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

[0118] At 640, if advancing from element 610, the current frame is analyzed to track pupils and glints based in part on previous information from previous frames. At 640, if advancing from element 630, the tracking state is initialized based on the pupils and glints detected in the current frame. The processing results at element 640 are checked to verify that the results of the tracking or detection can be credible. For example, the results can be checked to determine whether the pupil and a sufficient number of glints for performing gaze estimation are successfully tracked or detected in the current frame. At 650, if the results are not likely to be credible, at element 660, the tracking state is set to no, and the method returns to element 610 to process the next image of the user's eye. At 650, if the results are credible, the method advances 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.

[0119] Figure 6 It is intended to be used as an example of an eye tracking technology that can be used for a particular implementation. As recognized by one of ordinary skill in the art, according to various embodiments, other eye tracking technologies currently existing or developed in the future can be used in place of or in combination with the flash-assisted eye tracking technology described herein in a computer system 101 for providing an XR experience to a user.

[0120] In the present disclosure, various input methods are described with respect to interaction with a computer system. When an input device or input method is used to provide an example, and another input device or input method is used to provide another example, it should be understood that each example is compatible with the input device or input method described with respect to another example and optionally utilizes the input device or input method. Similarly, various output methods are described with respect to interaction with a computer system. When an output device or output method is used to provide an example, and another output device or output method is used to provide another example, it should be understood that each example is compatible with the output device or output method described with respect to another example and optionally utilizes the output device or output method. Similarly, various methods are described with respect to interaction with a virtual environment or a mixed reality environment by a computer system. When an 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 is compatible with the method described with respect to another example and optionally utilizes these methods. Therefore, the present disclosure discloses an embodiment as a combination of features of multiple examples, without exhaustively listing all features of the embodiment in the description of each example embodiment.

[0121] User interface and associated processes

[0122] Attention now turns to embodiments of a user interface ("UI") and associated processes that may be implemented on a computer system such as a portable multifunction device (e.g., a smart phone) or a head mounted device in communication with one or more input devices and, optionally, a display generating component.

[0123] 7A to 7E An example of a technique for performing operations using mid-air gestures is illustrated. Figure 8 is a flow chart of an exemplary method 800 for performing operations using mid-air gestures. 7A to 7E The user interface in is used to illustrate the process described below, including Figure 8 process.

[0124] exist Fig. 7A In FIG. 7 , a user 701 is holding and interacting with a device 700 including a display 700a. Fig. 7A In some embodiments, the device 700 includes one or more features of the computer system 101, such as the eye tracking device 130.

[0125] Fig. 7AAlso illustrated is user 701 wearing wearable device 702. Wearable device 702 is on the right hand of user 701. In some embodiments, wearable device 702 includes one or more sensors (e.g., one or more heart rate sensors and / or blood pressure sensors (e.g., one or more light-emitting elements and / or optical sensors on the back side of the device oriented toward the wrist of user 701), accelerometers, and / or gyroscopes) that detect movement (e.g., rotation and / or lateral movement), orientation, gestures, and positioning of the right hand of user 701. Fig. 7A At , the right hand of user 701 is in a neutral position (e.g., the right hand of user 702 is not rotated) and is released. 7A to 7E In some embodiments, wearable device 702 is a smartwatch. However, in some embodiments, wearable device 702 is another device (e.g., a bracelet, ring, brooch, or pin) that can be worn and can track hand movements (e.g., via a camera or other optical sensor or motion sensor). In some embodiments, device 702 includes one or more components of computer system 101. In some embodiments, device 700 also includes one or more sensors (e.g., a camera or other optical sensor, or a motion sensor) that can track hand movements and user gestures.

[0126] Return to Fig. 7A In the device 700, the home screen user interface 700b includes a plurality of application icons, including a weather application icon 710a corresponding to a weather application and a camera application icon 710b corresponding to a camera application. In some embodiments, the display 700a is touch-sensitive, and the device 700 opens and / or starts the corresponding application when a touch contact on the application icon is detected. Fig. 7A , device 700 (e.g., via eye tracking device 130) detects that user 701's gaze is directed toward weather application icon 710a, as indicated by exemplary gaze line 752a and gaze target indication 754a. 7A to 7E In some embodiments, the gaze line 752a and the gaze target indication 754a are provided for illustrative purposes only and are not part of the user interface provided by the device 700 and / or 702. In some embodiments, the device 700 displays a visual indication (e.g., a location point) of the detected gaze location / direction. In some embodiments, the user's attention is determined based on parameters other than gaze (e.g., the direction the user is pointing with a finger; the position of a cursor controlled by a mouse and / or joystick).

[0127] In some embodiments, the home screen interface 700b is part of an extended reality environment displayed via the display 700a (e.g., the home screen interface 700b is a set of viewpoint-locked virtual objects) that includes a representation of the physical environment (e.g., a through-representation based on data captured via one or more cameras of the device 700). In some embodiments, the device 702 is represented in the extended reality environment. In some embodiments, the device 702 is not represented in the extended reality environment, even when it is within a portion of the physical environment currently being represented. In some embodiments, the device 700 is a head-mounted system or display (e.g., an HMD), and the device 700 and / or the device 702 detect various gestures performed by the user 701 when operating the device 700 as an HMD. In such embodiments, the user 701 can control certain operations of the device 700 and / or 702 via gestures without having to contact the device 700 and / or the device 702 (e.g., provide touch input thereto). Control via gestures may be particularly useful for HMDs, as hardware elements of the HMD (e.g., buttons or touch-sensitive surfaces) may not be visible to the user while wearing the HMD and / or may be difficult to operate due to their location and / or lack of visibility.

[0128] exist Fig. 7A At , device 702 (in some embodiments, and / or device 700) detects a first input as a first part of a gesture, as indicated by illustrative text 750a1. In some embodiments, the first part of the gesture detected is a pinch air gesture made using the thumb and index finger of the right hand of user 701 without the fingers contacting device 700 or 702. In some embodiments, the air gesture is a different air gesture, such as a tap gesture made with the index finger or middle finger (e.g., a mid-air tap that does not involve contacting device 700 or device 702 with the user's fingers) or positioning the user's fingers in a predetermined posture (e.g., a "C" shape made with the thumb and index finger). In some embodiments, the detected input is not an air gesture, such as device 700 and / or device 702 detecting contact with a hardware button or actuation of a hardware button. Although the description refers to the first input as the first part of the gesture, it should be understood that the first input may also be referred to as and considered a discrete gesture (e.g., rather than part of a gesture that may include other parts).

[0129] exist Figure 7BAt, in response to detecting a first input corresponding to a first portion of text 750a1 as a gesture, device 702 sends an indication of the detected first input to device 700. In response to receiving the indication of the detected first input, device 700 displays a representation 720a corresponding to a weather application and outputs a tactile output 770a. In some embodiments, tactile output 770a is provided by device 702, or both devices 700 and 702 provide tactile output. In some embodiments, representation 720a is a preview of the weather application and can be selected (e.g., via touch, via gaze and / or air gestures) to display a user interface of the weather application. In some embodiments, representation 720a is a user interface of the weather application, and a user can interact directly with the user interface (e.g., select different locations to obtain corresponding weather information). As described in reference Fig. 7A As described, the device 700 detects that the gaze of the user 701 is directed to the weather application icon 710a when the first input is detected. In some embodiments, the device 700 displays the representation 720a in response to the first input because the device 700 detects that the user's gaze is directed to the weather application icon 710a, and if the user's gaze is directed to a different application icon (e.g., the camera application icon 710b), different representations of different applications (e.g., representations of the camera application) will be displayed. In some embodiments, the device 700 displays the representation 720a regardless of the direction of the detected user's gaze (e.g., because the weather application is the last application opened and / or because the weather application is a designated and / or favorite application). In some embodiments, when the user's gaze is positioned on an object that is not associated with performing an operation when the first input is detected (e.g., a graphical indication of time), in response to receiving an indication of the first input, the device 700 does not display the representation 720a.

[0130] exist Figure 7BAt , device 702 detects a second input as a first portion of a gesture (e.g., maintaining the first input (e.g., the user continues to maintain a pinch air gesture)) in combination with a second portion of the gesture, as indicated by illustrative text 750a2. In some embodiments, the second portion of the gesture is an air gesture that includes a rotation of the hand of user 701 performed while maintaining the first portion of the gesture (e.g., the user rotates her hand while continuing to pinch). In some embodiments, device 702 detects that the hand rotation of the second input occurs at a first speed (e.g., 10 degrees per second) and includes a hand rotation of a first angular distance (e.g., 20 degrees), which is determined to correspond to a request to transition to a display of a next application representation (e.g., the second input is determined to be a request for a transition magnitude of 1). In some embodiments, detecting the second input includes detecting an air gesture that is similar to the position and movement of a user's hand when turning a physical knob and / or dial (e.g., a pinch motion followed by a rotation). Although this description refers to the second input as a gesture, it also includes Fig. 7A The second part of the first part, but it should be understood that the second input may also be referred to as and viewed as a separate gesture (e.g., rather than a part of a gesture that also includes other parts (e.g., the first part)).

[0131] AT. Figure 7C In the embodiment, in response to detecting the second input, the device 702 sends an indication of the detected second input to the device 700. In response to receiving the indication of the detected second input, the device 700 displays an animation in which the representation 720a moves to the left and back to be replaced by the representation 720b corresponding to the calculator application in the middle foreground of the display 700a. The device 700 also provides a tactile output 770b in response to receiving the indication of the detected second input. In some embodiments, one or more attributes (e.g., duration, amplitude, mode and / or frequency) of the tactile output 770b are based on one or more characteristics of the second input (e.g., rotation speed, angular distance and / or the stationary position of the hand at the end of the rotation) and / or the current operation. For example, in some embodiments, a discrete tactile output (e.g., a discrete perceptible vibration) is output when each representation (e.g., representation 720b) ​​is converted to the display. In some embodiments, the tactile output 770b is provided by the device 702, or both the devices 700 and 702 provide tactile outputs. In some embodiments, detecting the second part of the gesture (e.g., rotation of the hand) without detecting the first part of the gesture (e.g., pinch gesture) does not result in display of representation 720a (e.g., first operation). In some embodiments, doing so does not result in any perceptible operation (e.g., rotation of the hand alone is not a mapped gesture).

[0132] exist Figure 7CAt , device 702 detects a third input as the first part of the gesture (e.g., holding the first input (e.g., the user continues to hold the pinch air gesture)) combined with a third part of the gesture, as indicated by illustrative text 750a3. In some embodiments, the third part of the gesture is an air gesture that includes further rotating the hand of user 701 in the same direction (e.g., further rotating clockwise by more than 100 degrees relative to the center of the hand) while holding the first part of the gesture. Figure 7B In some embodiments, device 702 detects that the third input hand rotation occurs at a higher second speed (e.g., 20 degrees per second) and includes the hand rotation and the rotation of the hand. Figure 7B The same first angular distance (e.g., 20 degrees) detected in (e.g., further rotation is with Figure 7B , but occurs at a faster rate), which is determined to correspond to a request to transition to an application representation displayed two representations away from representation 720b in the representation sequence (e.g., the second input is determined to be a request for a transition magnitude of 2). Thus, in such embodiments, the magnitude of execution of the operation for the corresponding change in angular distance varies depending on the speed of the hand rotation, with the same amount of rotation resulting in a larger magnitude of execution when the same amount of rotation is performed at a faster rate. In some embodiments, the third portion of the gesture maintains the first portion of the gesture (e.g., a pinch-in-the-air gesture) and maintains the second portion of the gesture (e.g., maintaining the hand in the same rotational position of the second portion of the gesture without further rotation); in such embodiments, maintaining the second portion of the gesture causes the operation (e.g., transitioning through the representation) to continue as long as the gesture continues to be maintained (e.g., similar to the operation of a physical scroll wheel-type dial). In some such embodiments, while continuing the operation based on detecting the first and second portions of the holding gesture, detecting a rotation in the opposite direction of the rotation of the second portion (e.g., the second portion is clockwise, counterclockwise rotation is detected) causes the operation to stop (e.g., not continue). In some such embodiments, while continuing an operation based on detecting a first portion and a second portion of a hold gesture, detecting further rotation of the hand in the same direction as the second portion (e.g., the second portion is clockwise, further clockwise rotation is detected) causes the speed of the operation (e.g., the speed of the transition represented (e.g., 720a to 720d)) to increase.

[0133] In some embodiments, the third part of the gesture is in conjunction with Figure 7B In such embodiments, representation 720a will transition back to being in the middle foreground of display 700a (e.g., the operation has a directional component determined based on the rotation direction). Although this description refers to the third input as a gesture, it also includes Fig. 7AThe first part and Figure 7B The third part of the second part, but it should be understood that the third input may also be referred to as and viewed as a separate gesture (e.g., rather than a part of a gesture that also includes other parts (e.g., the first part)).

[0134] AT. Fig.7D In some embodiments, in response to detecting the third input, device 702 sends an indication of the detected third input to device 700. In response to receiving the indication of the detected third input, device 700 displays an animation of representation 720b moving left and back and an animation of application representation 720c corresponding to the map application and representation 720d transitioning to display 700a. Representation 720c is a representation that appears after representation 720b in a series of representations, where representation 720d is a representation that follows representation 720c (e.g., representation 720d is two positions after representation 720b in the series). Representation 720d is in the middle foreground of display 700a. In some embodiments, device 700 transitions two representations in the series in response to the third input (e.g., instead of transitioning two representations in the series as in FIG. 1 ). Figure 7C ), because the third input includes further hand rotation of the same first angular distance but at a higher second speed (e.g., compared to the first speed of the hand rotation of the second input). Device 700 also provides tactile output 770c in response to receiving an indication of the detected third input. In some embodiments, the component of the adjustment is based on the characteristics of the input. For example, in some embodiments, when the second input includes a rotation of the user's hand, the direction of the adjustment is determined based on the direction of the rotation (e.g., clockwise for an increase in volume and counterclockwise for a decrease in volume); in addition, the magnitude of the adjustment is based on the speed and / or angular distance of the rotation (e.g., each degree change in angular distance results in a 1% increase or decrease in volume). In some embodiments, tactile output 770c is provided by device 702, or both devices 700 and 702 provide tactile output.

[0135] exist Fig.7D At , device 702 detects a fourth input that includes the end of the first portion of the gesture (e.g., the user moves her thumb and index finger apart (e.g., by relaxing her hand), thereby stopping holding the pinch gesture), as indicated by text 750a4. In some embodiments, the fourth input does not include any rotation of the hand of user 701.

[0136] exist Fig. 7E In response to detecting the fourth input, device 702 sends an indication of the detected fourth input to device 700. In response to receiving the indication of the detected fourth input, device 700 displays user interface 730 of the news application (e.g., exits presentation selection mode). 7A to 7E In some embodiments, user 701 is able to initiate a selection operation (e.g., via a first input), navigate through a series of application representations to an application of interest (e.g., via a second input and a third input), and then open the application of interest (e.g., via a fourth input), all via gestures performed by one hand without the hand contacting device 700 or device 702. In some embodiments, device 700 stops further transitions of representations of the application (e.g., exits a mode of representation transitions) in response to detecting the fourth input but continues to display the same content (e.g., as Fig.7D ), instead of displaying user interface 730.

[0137] about 7A to 7E See below for additional description of 7A to 7E Method 800 is described.

[0138] Figure 8 800 is a flowchart of an exemplary method 800 for performing operations using air gestures according to some embodiments. In some embodiments, method 800 is performed on a computer system (e.g., a smart phone, a desktop computer, a laptop computer, a tablet computer, a smart watch, a wrist-worn fitness tracker, a heads-up display unit, a head-mounted display unit, an optical head-mounted display unit, a head-mounted augmented reality and / or extended reality device, and / or a wearable device) that communicates with one or more input devices (e.g., a camera, a gyroscope, an accelerometer, an acoustic sensor, and / or a physiological sensor (e.g., a blood pressure sensor and / or a heart rate sensor); a hand tracking unit 244 and / or an eye tracking unit 243) (in some embodiments, Figure 1 In some embodiments, the one or more input devices are integrated into an external device (e.g., a smart watch and / or wearable device; device 702) that communicates with the computer system. In some embodiments, the computer system communicates with a display generation component (e.g., display 700a, display controller, touch-sensitive display system, and / or head-mounted display system). In some embodiments, method 800 is performed by storing in a non-transitory (or transient) computer-readable storage medium and by one or more processors of a computer system (such as one or more processors 202 of computer system 101) (e.g., Figure 1 Some operations in method 800 are optionally combined, and / or the order of some operations is optionally changed.

[0139] A computer system (e.g., 700, 702, and / or 900) detects (802) via one or more input devices (e.g., 244) an in-air gesture performed by a hand (e.g., a hand of a user of the computer system) and including a rotation of the hand (e.g., 750a2 or 750a3) (e.g., rotation in a first direction, rotation at a first speed, rotation at a first acceleration, rotation of the user's wrist, and / or rotation about an axis parallel to the user's wrist) (and in some embodiments, a gesture made with the hand that does not include direct contact with the computer system and / or one or more sensors of the computer system). In some embodiments, the in-air gesture is detected via one or more physiological sensors and / or optical sensors and / or gyroscopes of an external device (e.g., a smart watch and / or wrist-worn fitness tracker that communicates with the computer system and includes one or more physiological sensors).

[0140] In response to detecting an air gesture (804) and in accordance with determining that the air gesture satisfies a first set of criteria, wherein the first set of criteria includes when a hand was previously (and / or is currently) performing a pinch gesture (e.g., a gesture in which a finger (e.g., a predetermined finger (e.g., index finger) and / or thumb of a hand) is a predetermined distance (e.g., in contact or near contact) from another finger and / or thumb (e.g., as detected via one or more input devices). Figure 7B and / or Fig.7D ) when an air gesture (and / or in some embodiments, at least a portion of an air gesture) is detected, the computer system performs (806) a first operation based on the air gesture (e.g., Figure 7B ) (e.g., adjusting volume, navigating through a list of items, scrolling through content, adjusting one or more characteristics of a computer system (e.g., brightness, contrast, hue, and / or warmth)). In some embodiments, a pinch gesture includes a finger and / or thumb within a predetermined orientation of another finger and / or thumb and / or another part of a hand (e.g., with the pads substantially facing each other).

[0141] In response to detecting the air gesture (804) and in accordance with determining that the air gesture does not satisfy the first set of criteria (e.g., because a hand rotation is not being performed when a pinch is being performed), the computer system forgoes (808) performing a first operation based on the air gesture (e.g., as relative to Figure 7CIn response to detecting the air gesture and selecting whether to perform a first operation based on the air gesture based on a determination that the air gesture satisfies a first set of criteria, more control is provided to the user to cause performance of the first operation by making a particular gesture without requiring additional controls and / or virtual objects that clutter the user interface, wherein the first set of criteria includes criteria that are satisfied when the air gesture is detected while the hand is performing a pinch gesture.

[0142] In some embodiments, in response to detecting an air gesture and based on determining that the air gesture satisfies a first set of criteria and based on determining that the hand is rotating with a first movement amplitude (e.g., velocity, acceleration, and / or angular distance) (e.g., while the air gesture is being detected), a first operation is performed with a first execution amplitude (e.g., movement (e.g., lateral movement and / or rotational movement across a display generating component), display speed (e.g., displaying and / or not displaying one or more objects), and / or changing one or more characteristics of a display generating component and / or a computer system (e.g., sound, brightness, tone, color, and / or contrast)) (e.g., as described in reference to Figure 7C and Fig.7D In response to detecting an air gesture and based on determining that the air gesture satisfies a first set of criteria and based on determining that the hand is rotating with a second movement magnitude (e.g., velocity, acceleration, and / or angular distance) that is different from the first movement magnitude (e.g., while the air gesture is being detected), performing a first operation with a second execution magnitude that is different from the first execution magnitude (e.g., as described in reference to Figure 7C and Fig.7D In some embodiments, the first operation is performed at a faster rate when the hand rotates faster, and / or the first operation is performed at a slower rate when the hand rotates slower. Performing the first operation with an execution amplitude based on the movement amplitude of the rotating hand allows the user to control how the first operation is performed, which provides the user with more control over the computer system without cluttering the user interface.

[0143] In some embodiments, in response to detecting an air gesture and based on determining that the air gesture satisfies a first set of criteria and based on determining that the hand is rotating at a first speed (e.g., a current speed, an average speed, a median speed, and / or a minimum and / or maximum speed when the hand is rotating) and the hand is rotating a first angular distance, performing a first operation at a third execution amplitude (e.g., as described in reference to FIG. 1 ). Figure 7C and Fig.7DIn some embodiments, in response to detecting an air gesture and based on determining that the air gesture satisfies a first set of criteria and based on determining that the hand is rotating at a first speed (e.g., a current speed, an average speed, a median speed, and / or a minimum speed, and / or a maximum speed when the hand is rotating) and the hand is rotating a second angular distance different from the first angular distance, performing a first operation with a fourth execution amplitude different from the third execution amplitude (e.g., as described in reference to gesture 750a3). Figure 7C and Fig.7D Reference gesture 750a3 described). In some embodiments, performing the first operation with a third execution amplitude includes moving one or more corresponding user interface objects by a first amount; and performing the second operation with a fourth execution amplitude includes moving one or more corresponding user interface objects by a second amount different from the first amount. In some embodiments, the execution amplitude of the corresponding change in angular distance varies depending on the speed of the hand rotation. Based on determining that the hand rotates a first angular distance (e.g., 20 degrees) at a first speed (e.g., 10 degrees per second), the first operation is performed with a first execution amplitude (1 unit). Based on determining that the hand rotates the (same) first angular distance (e.g., 20 degrees) at a second speed different from the first speed (e.g., 20 degrees per second), the first operation is performed with a second amplitude different from the first amplitude (e.g., 4 units). In some embodiments, the second speed is faster than the first speed and the second amplitude is greater than the first amplitude, so that for the same amount of angular distance, rotating the hand faster causes the operation to be performed with a larger amplitude. Performing the first operation with an execution amplitude based on the angular distance of the rotation of the hand (and in some embodiments, even when the hand rotates different angular distances at the same speed) allows the user to control how the first operation is performed, which provides the user with more control over the computer system without cluttering the user interface.

[0144] In some embodiments, the first angular distance is less than the second angular distance (e.g., as shown in FIG. Figure 7C and Fig.7D Referring to gesture 750a3, described above, and wherein the third execution amplitude is greater than the fourth execution amplitude (e.g., faster and / or the first operation performed at the third execution amplitude is performed faster than the first operation performed at the fourth execution amplitude because the first angular distance is less than (e.g., shorter than) the second angular distance (and in some embodiments, regardless of the rotation speed)). Executing the first operation at an execution amplitude based on the angular distance of the hand's rotation provides the user with the option to have the first operation execute slower by increasing the angular distance of the hand's rotation, which provides the user with more control over the computer system without cluttering the user interface.

[0145] In some embodiments, in response to detecting an air gesture and based on determining that the air gesture satisfies a first set of criteria and based on determining that the hand is rotated in a first direction (e.g., a clockwise direction or a counterclockwise direction relative to yaw, pitch, and / or roll), performing a first operation (e.g., as described with reference to FIG. 1 ) based on the first direction (e.g., having a direction corresponding to the first direction and / or in a direction corresponding to the first direction). Figure 7C and the rotation direction of 750a3) (e.g., performing an operation with an adjustment in a first adjustment direction such as increasing or decreasing a parameter) (and in some embodiments, not based on a second direction different from the first direction). In some embodiments, in response to detecting an air gesture and based on determining that the air gesture satisfies a first set of criteria and based on determining that the hand is rotating in a second direction different from the first direction (and in some embodiments opposite to the first direction), a first operation is performed based on the second direction (e.g., performing the first operation with an adjustment in the second adjustment direction such as decreasing or increasing a parameter) (and in some embodiments, not based on the first direction). In some embodiments, the first operation performed based on the first direction is a different operation from the first operation performed based on the second direction. Performing the first operation in a direction based on the rotation direction of the hand allows the user to control how the first operation is performed, which provides the user with more control over the computer system without cluttering the user interface.

[0146] In some embodiments, in response to detecting an air gesture and in accordance with determining that the air gesture satisfies a first set of criteria, the computer system initiates a process for generating a set of one or more tactile outputs (e.g., 770b to 770c) indicating that the gesture satisfies the first set of criteria. In some embodiments, in response to detecting an air gesture and in accordance with determining that the air gesture satisfies the first set of criteria, the computer system generates tactile outputs and / or the computer system transmits instructions that cause a different computer system (e.g., a wearable device, a smartwatch, a wrist-worn wearable device, and / or a device including one or more input devices that communicate with the computer system) to generate tactile outputs. Initiating a process for generating a set of one or more tactile outputs in response to detecting an air gesture and in accordance with determining that the air gesture satisfies the first set of criteria provides feedback to the user regarding identification / detection and execution of the first operation, which can also reduce the number of inputs required to reverse the execution of the operation when the user inadvertently causes the first operation.

[0147] In some embodiments, the computer system communicates with a wearable device (e.g., 702) (e.g., a smart watch, a wrist-worn wearable device, and / or a set of headphones), and initiating a process for generating tactile feedback includes transmitting one or more instructions that cause the wearable device to generate the set of one or more tactile outputs indicating that the gesture satisfies a first set of criteria. In some embodiments, the set of one or more tactile outputs is generated only at the wearable device. In some embodiments, the set of one or more tactile outputs is generated at the computer system and the wearable device. In some embodiments, the set of one or more tactile outputs is generated only at the computer system. In response to detecting an air gesture and transmitting one or more instructions that cause the wearable device to generate a set of one or more tactile outputs based on determining that the air gesture satisfies the first set of criteria, feedback is provided to the user about the execution of the first operation at the wearable device, which can also reduce the number of inputs required to reverse the execution of the operation when the user inadvertently causes the first operation.

[0148] In some embodiments, performing a first operation based on an air gesture includes transitioning (e.g., transitioning between representations 720a to 720d) (e.g., navigating, changing, and / or displaying) through a first state sequence (e.g., a list of items, a set of user interfaces, one or more system states (e.g., on, sleep, and / or off; volume level; brightness level; and / or contrast level)). In some embodiments, upon transitioning through the first state sequence and based on determining that a first state in the first state sequence has been reached (e.g., a state, event, and / or adjustment event when the first operation adjusts one or more user interface elements and / or one or more settings), a computer system (e.g., at the computer system and / or a computer system different from the computer system (e.g., a wearable device, a smart watch, a wrist-worn fitness tracker, and / or a wrist-worn device)) generates (e.g., emits, provides, and / or outputs) a set of one or more tactile outputs (e.g., vibration buzzers, kinesthetic outputs) indicating that a first state in the first state sequence has been reached. In some embodiments, upon transitioning through a first state sequence and based on determining that a second state in the first state sequence has been reached, a set of one or more tactile outputs indicating that the second state in the first state sequence has been reached is generated (e.g., at the computer system and / or a computer system different from the computer system (e.g., a wearable device, a smart watch, a wrist-worn fitness tracker, and / or a wrist-worn device)), wherein the second state is different from the first state. In some embodiments, the set of one or more tactile outputs indicating that the first state in the first state sequence has been reached is different from (e.g., includes tactile outputs generated at different time points, longer / shorter tactile outputs, and / or stronger / weaker tactile outputs) the set of one or more tactile outputs indicating that the second state in the first state sequence has been reached. In some embodiments, the set of one or more tactile outputs indicating that the first state in the first state sequence has been reached and the set of one or more tactile outputs indicating that the second state in the first state sequence has been reached are generated simultaneously and / or in combination with (e.g., before, simultaneously with, and / or after) one or more audio outputs and / or visual outputs. Generating different sets of tactile outputs in different states provides feedback to the user regarding the execution of different states of the first operation, which may also reduce the number of inputs required to reverse the execution of the operation when the user inadvertently causes the first operation.

[0149] In some embodiments, performing a first operation based on the air gesture includes transitioning (e.g., navigating, changing, and / or displaying) through a second state sequence (e.g., transitioning from representation 720d to 720a in reverse order) (e.g., a list of items, a set of user interfaces, one or more system states (e.g., on, sleep, and / or off); volume level; brightness level; and / or contrast level)). In some embodiments, while transitioning through a sequence of states, the computer system detects that a particular state in the sequence of states has been reached (e.g., an end state (e.g., the end of a list, the last user interface in a set of user interfaces, the last system state)) (and / or the particular state is about to be reached and / or the particular state is the next state in the sequence of states); and in response to detecting that the particular state has been reached, the computer system (e.g., at the computer system and / or a computer system different from the computer system (e.g., a wearable device, a smart watch, a wrist-worn fitness tracker, and / or a wrist-worn device)) generates a set of one or more tactile outputs indicating that the particular state in the sequence of states has been reached (e.g., a set of end-of-list tactile outputs and / or a set of specific tactile outputs corresponding to the particular state) (e.g., to indicate that the particular state has been reached). Generating a set of one or more tactile outputs indicating that the particular state in the sequence of states has been reached in response to detecting that the particular state has been reached provides feedback to the user that the particular state of the first operation has been reached, which can also reduce the number of inputs required to attempt to continue the operation.

[0150] In some embodiments, while performing a first operation based on an air gesture, the computer system detects a first change to the air gesture that includes a rotation of the hand (e.g., as described in reference to FIG. FIG. 7C to FIG. 7D and scroll-dial-like operations); and in response to detecting a first change to an air gesture that includes rotation of the hand and based on determining that the rotation of the hand has stopped (e.g., stopped and / or interrupted rotation about an axis) while (and in some embodiments, but and / or and) the hand continues to perform a pinch gesture, the computer system continues (e.g., based on the air gesture) to perform the first operation. In some embodiments, in response to detecting a first change to an air gesture that includes rotation of the hand and based on determining that the rotation of the hand has stopped and the hand has not yet continued to perform the pinch gesture, the computer system stops performing the first operation based on the air gesture. In response to detecting a first change to an air gesture that includes rotation of the hand and based on determining that the rotation of the hand has stopped while the hand continues to perform a pinch gesture to continue performing the operation, this provides the user with control to continue performing the first operation without cluttering the user interface.

[0151] In some embodiments, while performing the first operation based on the air gesture, detecting a second change to the air gesture that includes the rotation of the hand; and in response to detecting the second change to the air gesture that includes the rotation of the hand and based on determining that the hand has changed from rotating in the first direction to rotating in a second direction different from the first direction, stopping performing the first operation (for example, as described in reference to FIG. 7C to FIG. 7D and the effect of reversing direction after holding the second part of the gesture). In some embodiments, in response to detecting a second change to the air gesture that includes the rotation of the hand and based on determining that the hand has not changed from rotating in the first direction, the computer system continues to perform the first operation based on the air gesture. In some embodiments, in response to detecting a second change to the air gesture that includes the rotation of the hand and based on determining that the hand has changed from rotating in the first direction to rotating in a second direction different from the first direction, the computer system reverses the performance of the operation. In response to detecting a second change to the air gesture that includes the rotation of the hand and based on determining that the hand has changed from rotating in the first direction to rotating in the second direction different from the first direction, the computer system stops performing the first operation, which provides the user with control to stop the performance of the first operation without cluttering the user interface. In response to detecting a second change to the air gesture that includes the rotation of the hand and based on determining that the hand has changed from rotating in the first direction to rotating in the second direction, the computer system stops performing the first operation, which provides the user with control to stop the performance of the first operation without cluttering the user interface.

[0152] In some embodiments, while performing a first operation based on an air gesture and based on determining that a first portion of the first operation is being (or has been) performed, a set of one or more tactile outputs (e.g., a first portion of tactile output 770c when display 720c) indicating that the first portion of the first operation is being performed is generated (e.g., at the computer system and / or a computer system different from the computer system (e.g., a wearable device, a smart watch, a wrist-worn fitness tracker, and / or a wrist-worn device)); and while performing the first operation based on an air gesture and based on determining that a second portion of the first operation is being (or has been) performed, A set of one or more tactile outputs indicating that a second portion of a first operation is being performed (e.g., second portion 770c of tactile outputs when 720d is displayed) is generated (e.g., at the computer system and / or a computer system different from the computer system (e.g., a wearable device, a smart watch, a wrist-worn fitness tracker, and / or a wrist-worn device)), wherein the second portion of the first operation is different from the first portion of the operation (and in some embodiments, the set of one or more tactile outputs indicating that the second portion of the first operation is being performed is different from the set of one or more tactile outputs indicating that the first portion of the operation is being performed). Generating the set of one or more tactile outputs indicating that the first portion of the first operation is being performed and the set of one or more tactile outputs indicating that the second portion of the first operation is being performed when performing the first operation based on an air gesture provides feedback to the user regarding the execution of the first operation, which may also reduce the number of inputs required to reverse the execution of the operation when the user inadvertently causes the first operation.

[0153] In some embodiments, performing a first operation based on an air gesture includes: based on determining that the air gesture is being performed at a first speed, generating a set of tactile feedback indicating that the air gesture is being performed at the first speed (for example, when the first operation is being performed based on the first speed); and based on determining that the air gesture is being performed at a second speed different from the first speed, generating a set of tactile feedback indicating that the air gesture is being performed at a second speed different from the first speed (for example, the speed and / or rate of hand rotation and / or the angular distance of hand rotation) (for example, as referenced Figure 7C and tactile output 770c) (e.g., where the first operation is being performed based on the second speed).

[0154] In some embodiments, in response to detecting an air gesture, a first operation is performed at a first rate, and while performing the first operation at the first rate (e.g., and while continuing to detect the air gesture (and in some embodiments, the pinch gesture in which the air gesture was not detected has been released) and in response to detecting the air gesture), the computer system detects an additional rotation of the hand while the hand is performing the pinch gesture; and in response to detecting the additional rotation of the hand while the hand is performing the pinch gesture, the computer system performs the first operation at a second rate different from (e.g., faster or slower than) the first rate (e.g., as described in reference to Figure 7C Performing a first operation at a second rate different from the first rate in response to detecting additional rotation of the hand while the hand is performing a pinch gesture provides the user with control over how quickly the first operation is performed without cluttering the user interface.

[0155] In some embodiments, while performing the first operation based on the air gesture, detecting a third change to the air gesture that includes rotation of the hand (e.g., 750a4); and in response to detecting the third change to the air gesture that includes rotation of the hand and based on determining that the hand is no longer performing the pinch gesture, abandoning the execution of the first operation (e.g., as shown in FIG. 750a4). Fig. 7E In some embodiments, after abandoning execution of the first operation, the computer system continues in a state in which the first operation was in progress at and / or before the time when the determination that the hand is no longer performing the pinch gesture is made. In some embodiments, when the first operation includes scrolling through a list, the computer system stops scrolling the list, and the list is maintained at the location where the list was located at and / or after the determination that the hand is no longer performing the pinch gesture is made. In some embodiments, when the first operation includes setting a value, the computer system selects a value to be displayed and / or selected at and / or after the determination that the hand is no longer performing the pinch gesture. In response to detecting a third change to the air gesture that includes a rotation of the hand and abandoning execution of the first operation based on determining that the hand is no longer performing the pinch gesture, this provides the user with control over whether to continue executing the first operation without cluttering the user interface.

[0156] In some embodiments, the first operation is an operation performed with respect to one or more virtual objects in the extended reality environment (e.g., as referenced in Fig. 7A described).

[0157] In some embodiments, the computer system communicates with a display generation component (e.g., 700a), and wherein the first set of criteria includes criteria that are satisfied when the display generation component is in an active state (e.g., an on state and / or a non-sleeping state) (e.g., or not in an active state or in an inactive state (e.g., an off state and / or a sleeping state). In response to detecting an air gesture and selecting not to perform a first operation based on the air gesture based on determining that the air gesture satisfies the first set of criteria, the computer system allows the computer system to not automatically perform the operation in certain circumstances, regardless of whether the air gesture includes a pinch gesture and a rotation of the hand, wherein the first set of criteria includes criteria that are satisfied when the display generation component is in an active state.

[0158] In some embodiments, when displaying a first virtual object (e.g., 710a) and a second virtual object different from the first virtual object (e.g., Fig. 7A In response to detecting the air gesture: performing a first operation relative to the first virtual object (rather than relative to the second virtual object) based on determining that the air gesture satisfies the first set of criteria when the user's attention is directed toward the first virtual object; and performing a first operation relative to the second virtual object (e.g., as described in reference to FIG. 1 ) based on determining that the air gesture satisfies the first set of criteria when the user's attention is directed toward the second virtual object (rather than the first virtual object) based on determining that the air gesture satisfies the first set of criteria when the user's attention is directed toward the second virtual object (rather than the first virtual object). Figure 7B and FIG. 11E to FIG. 11H Selecting to perform a first operation relative to a specific object based on the user's attention being directed toward the specific object provides the user with control over how the first operation is performed without cluttering the user interface.

[0159] In some embodiments, an air gesture is detected when a third virtual object (e.g., 710a) is displayed, and wherein: in response to detecting the air gesture: based on determining that the air gesture satisfies a first set of criteria when the user's attention is directed toward the third virtual object and the third virtual object responds to the rotation of the hand, a first operation is performed relative to the third virtual object (rather than relative to the second virtual object) and based on the movement of the hand; and based on determining that the air gesture satisfies the first set of criteria when the user's attention is directed toward the third virtual object and the third virtual object responds to the rotation of the hand, the first operation is not performed relative to the third virtual object (and not based on the movement of the hand) (e.g., as described in reference to FIG. 1 ). Figure 7B According to determining that the gesture in space meets the first set of criteria when the user's attention is directed to the third virtual object and the third virtual object responds to the rotation of the hand, selecting whether to perform the first operation relative to the third virtual object and based on the movement of the hand allows the computer system to automatically perform the first operation relative to the object when the object responds to the rotation of the hand.

[0160] In some embodiments, the first set of criteria includes criteria that are satisfied when the user's attention is directed to the first location, and wherein the user's attention is determined based on the user's gaze being directed to the first location (e.g., as indicated by 754a). In response to detecting the air gesture and selecting whether to perform the first operation based on the air gesture based on determining that the air gesture satisfies the first set of criteria, this provides the user with more control to cause the performance of the first operation by making a particular gesture without requiring additional controls and / or virtual objects that clutter the user interface, wherein the first set of criteria includes criteria that are satisfied when the user's attention is directed to the first location, and wherein the user's attention is determined based on the user's gaze being directed to the first location.

[0161] In some embodiments, the first set of criteria includes criteria that are satisfied when the user's attention is directed to the second location, and wherein the user's attention is determined based on the user's hand being within a predetermined distance (e.g., 0.1 meters to 3 meters) from the second location (e.g., and / or pointing to the second location (e.g., within the approximate direction of the second location and / or pointing at the second location (e.g., considering the user's arm is pointing and / or pointing at the second location)). In response to detecting an air gesture and selecting whether to perform a first operation based on the air gesture based on determining that the air gesture satisfies the first set of criteria, this provides the user with more control to cause performance of the first operation by making a particular gesture without the need for additional controls and / or virtual objects that clutter the user interface, wherein the first set of criteria includes criteria that are satisfied when the user's attention is directed to the second location and wherein the user's attention is determined based on the user's hand being within a predetermined distance from the second location.

[0162] In some embodiments, performing a first operation based on an air gesture includes: in response to detecting a first portion of the air gesture including a pinch and hold gesture, displaying multiple virtual objects including virtual objects corresponding to a first application (e.g., a browser application, a note-taking application, a stock application, a word processing application, a messaging application, and / or a social media application); and while displaying the multiple virtual objects and while continuing to detect the air gesture, detecting a second portion of the air gesture including rotation of the hand; in response to detecting the second portion of the air gesture including rotation of the hand, updating the appearance of a user interface including multiple virtual objects, including indicating that the input focus has moved from the virtual object corresponding to the first application to the virtual object corresponding to a second application different from the first application. In some embodiments, indicating that the input focus has moved includes one or more of the following: moving a focus ring between virtual objects; moving virtual objects around the display so that the focused virtual object is at a particular location on the display (e.g., center, middle, prominent location, left location, and / or right location); highlighting the focused virtual object; emphasizing the focused virtual object; and deemphasizing one or more virtual objects that are not focused; and / or changing the size of the focused virtual object to be different from the size of one or more virtual objects that are not focused; when updating the appearance of the user interface (and in some embodiments, when displaying multiple virtual objects simultaneously and / or when causing one or more virtual objects to be displayed and one or more other virtual objects to cease being displayed) and when indicating that the virtual object corresponding to the second application has input focus, detecting an air gesture that includes releasing the third portion of the pinch and hold gesture; and in response to detecting the air gesture that includes releasing the third portion of the pinch and hold gesture when the virtual object corresponding to the second application is displayed, displaying the user interface corresponding to the second application (e.g., launching and / or opening the second application) (e.g., as described in reference to 7A to 7E In some embodiments, the second application was not previously displayed before the air gesture was detected. In some embodiments, the first application is displayed when and / or when the air gesture is initially detected.

[0163] Displaying a user interface corresponding to the second application in response to detecting an air gesture that includes releasing the pinch and holding a third portion of the gesture while displaying a virtual object corresponding to the second application (and while transitioning through multiple virtual objects and while displaying the virtual object corresponding to the second application) provides more control for navigating between applications.

[0164] In some embodiments, aspects / operations of methods 800, 1000, and / or 1200 as described herein may be interchanged, replaced, and / or added between these methods. For example, the first gesture of method 1000 and / or the input of method 1200 may be the air gesture of method 800. For the sake of brevity, these details are not repeated here.

[0165] 9A to 9D An example of a technique for making audio playback adjustments using gestures is illustrated. Fig.10 is a flow chart of an exemplary method 1000 for making audio playback adjustments using gestures. 9A to 9D The diagram in the figure is used to illustrate the process described below, including Fig.10 process.

[0166] Fig. 9A The example shows a user 901 wearing a wearable device 702 on his right hand. As described above, the wearable device 702 includes one or more sensors (e.g., one or more heart rate sensors and / or blood pressure sensors (e.g., one or more light-emitting elements and / or optical sensors on the back side of the device oriented toward the wrist of the user 901), accelerometers, and / or gyroscopes) that detect movement (e.g., rotation and / or lateral movement), orientation, gestures, and positioning of the user's 901 right hand. The user 901 also wears a headphone device 900, which is a wireless headphone that communicates with the device 702. In some embodiments, the user 901 also wears a second headphone device in the user's other ear. In such embodiments, relative to the headphone device 900, the user 901 also wears a second headphone device in the user's other ear. 9A to 9D The operations discussed in the embodiments of the present invention may occur on both headphone devices based on the described gestures. In some embodiments, the headphone device includes one or more features of the computer system 101. In some embodiments, both the wearable device 702 and the headphone device 900 are connected (e.g., wirelessly) to another external device, such as a smart phone, a tablet computer, and / or a head-mounted display device. In some embodiments, the headphone device 900 is an audio component (e.g., an integrated speaker) of a head-mounted display (e.g., HMD) device. In such embodiments, reference 9A to 9D The discussed operations may allow a user to adjust audio playback using one or more gestures without requiring the user to make contact (e.g., provide touch input) with the headphone device 900 and / or the wearable device 702. Control via gestures may be particularly useful for an HMD, as hardware elements (e.g., buttons or touch-sensitive surfaces) of the HMD may not be visible to the user while wearing the HMD and / or may be difficult to operate due to their location and / or lack of visibility.

[0167] exist Fig. 9A, user 901 is currently listening to song #1 via headphone device 900, as indicated by exemplary text 920. Playback of song #1 is currently occurring at 50% volume, as indicated by exemplary indication 910a. 9A to 9D In an embodiment, illustrative elements such as text 920 and indication 910a are provided for illustrative purposes only and are not part of any user interface provided by device 702 and / or device 900.

[0168] exist Fig. 9A , when device 702 detects that user 901's right hand is at the user's side, device 702 detects a first input as a first type of gesture, as indicated by exemplary text 950a. In some embodiments, the first type of gesture is an air gesture, such as described above with reference to Figure 7B and Figure 7C In some embodiments, the air gesture is a different air gesture, such as a tap gesture made with the index or middle finger (e.g., a mid-air tap that does not involve contacting the device 700 or device 702 with the user's finger) or positioning the user's fingers in a predetermined pose (e.g., a "C" shape made with the thumb and index finger).

[0169] exist Fig. 9B At , in response to detecting a first input corresponding to illustrative text 950a, device 702 (e.g., directly or indirectly (e.g., via an external device (e.g., a smart phone) connected to both device 702 and device 900)) sends an indication of the detected first input to headphone device 900. After receiving the indication of the detected first input, device 900 continues the same audio playback operation (e.g., playing back song #1 at 50% intensity) without making any modifications and / or adjustments based on receiving the indication of the detected input, as indicated by illustrative text 910a and illustrative text 920. Device 900 does not modify and / or adjust the audio playback operation based on the first input because the first type of gesture is detected when the user's hand is detected to the side of the user (in some embodiments, because the gesture is not detected when the hand is detected to be in a predefined position (e.g., within a predetermined distance from the user's head)). In some embodiments, based on detecting the first input, a different operation that does not affect audio playback is performed. For example, device 702 may send an indication of the detected first input to an external device (eg, a smartphone or HMD), and in response, the external device performs a reference to 7A to 7E In another example, the headphone device 900 responds to one or more of the operations described. Fig. 9AIn another example, device 702 may send an indication of the detected first input to an external device (e.g., a smart phone or HMD) that is presenting an extended reality environment and performing one or more operations that affect the extended reality environment (e.g., moving one or more virtual objects that are part of the extended reality environment) in response to the first input.

[0170] exist Fig. 9B At 900, while the headphone device 900 continues to play song #1 at 50% volume, the device 702 detects a second user input including user 901 performing a first type of gesture (e.g., with a finger) while the user's right hand is positioned adjacent to the user's head (e.g., within a predetermined distance (e.g., 1 to 15 inches) of the user's head). Fig. 9A ), as indicated by illustrative text 950b.

[0171] exist Fig. 9C In response to detecting a second input corresponding to exemplary text 950b, device 702 sends an indication of the detected second input (e.g., directly or indirectly) to headphone device 900 and outputs tactile output 970a. In response to receiving the indication of the detected second input, headphone device 900 adjusts the properties of the ongoing audio playback. Specifically, as Fig. 9C As shown in and as indicated by illustrative text 910b, the headphone device 900 adjusts the playback intensity from 50% to 75% while continuing to play back song #1. In some embodiments, the component of the adjustment is based on the characteristics of the input. For example, in some embodiments, when the second input includes a rotation of the user's hand, the direction of the adjustment is determined based on the direction of the rotation (e.g., clockwise for an increase in intensity and counterclockwise for a decrease in intensity); in addition, the magnitude of the adjustment is based on the speed and / or angular distance of the rotation (e.g., each degree of change in angular distance results in an increase or decrease in intensity of 1%, 5%, or 10%). In some embodiments, one or more attributes of the tactile output 970a (e.g., duration, amplitude, pattern, and / or frequency) are based on one or more characteristics of the second input (e.g., rotation speed, angular distance, and / or the resting position of the hand at the end of the rotation) and / or the current operation. For example, in some embodiments, a discrete tactile output (e.g., a discrete perceptible vibration) is output for each predetermined unit increase in sound intensity (e.g., a discrete tactile vibration for each 1%, 5%, or 10% increase in sound intensity).

[0172] exist Fig. 9CAt 900, while the headphone device 900 continues to play song #1 at 75% volume, the device 702 detects a third user input including user 901 performing a second type of gesture (e.g., with the user's right hand) while the user's right hand is positioned adjacent to the user's head (e.g., within a predetermined distance (e.g., 1 to 15 inches) of the user's head). Fig. 9A and Fig. 9B In some embodiments, the second type of gesture is an air gesture, such as movement of the user's thumb along the length of the user's index finger (e.g., a finger sliding gesture). In some embodiments, the air gesture is a different air gesture, such as a tap gesture made with the index or middle finger (e.g., a mid-air tap that does not involve contacting the user's finger with the device 700 or device 702) or positioning the user's fingers in a predetermined pose (e.g., a "V" shape made with the thumb and index finger).

[0173] exist Fig.9D In response to detecting the third input corresponding to exemplary text 950c, device 702 sends an indication of the detected third input (e.g., directly or indirectly) to headphone device 900 and outputs tactile output 970b. In response to receiving the indication of the detected third input, headphone device 900 adjusts the properties of the ongoing audio playback. Specifically, as Fig.9D , and indicated by illustrative text 930, the headphone device 900 transitions from playback of song #1 to playback of song #2 (e.g., performing a track skip operation) while continuing to output audio at 75%. In some embodiments, the component of the adjustment is based on the characteristics of the input. For example, in some embodiments, when the third input includes sliding the user's thumb across the user's index finger, the direction of the adjustment (e.g., going to the previous track or the next track) is determined based on the direction of the slide (e.g., forward to jump to the next track and backward to go to the previous track); in addition, the magnitude of the adjustment is based on the speed and / or distance of the slide (e.g., sliding a greater distance and / or a higher speed can result in skipping two or more tracks forward or backward). In some embodiments, the audio playback adjustment operation is to pause or resume playback (e.g., when the third input includes pinching and then releasing an air gesture). In some embodiments, one or more attributes of the tactile output 970b (e.g., duration, amplitude, pattern, and / or frequency) are based on one or more characteristics of the second input (e.g., rotation speed, angular distance, and / or the resting position of the hand at the end of the rotation) and / or the current operation. For example, in some embodiments, a discrete tactile output (e.g., a discrete perceptible vibration) is output as each track is skipped.

[0174] about 9A to 9DFor additional description, refer to the following section with respect to 9A to 9D Method 1000 is described.

[0175] Fig.10 is a flow chart of an exemplary method 1000 for making audio playback adjustments using gestures according to some embodiments. In some embodiments, method 1000 is performed on a computer system (e.g., a computer system) that is connected to one or more input devices (e.g., a camera; a gyroscope; an accelerometer; an acoustic sensor; and / or a physiological sensor (e.g., a blood pressure sensor and / or a heart rate sensor)). Figure 1 100; device 900, 700, or 702) (e.g., a smart phone, a desktop computer, a laptop computer, a tablet computer, a smart watch, a head-up display unit, a head-mounted display unit, an optical head-mounted display unit, a head-mounted augmented reality and / or extended reality device, a set of headphones, and / or a wearable device). In some embodiments, one or more input devices are integrated into an external device (e.g., a smart watch, a smart phone, and / or a wearable device) that communicates with the computer system. In some embodiments, the computer system communicates with a display generation component (e.g., a display controller, a touch-sensitive display system, and / or a head-mounted display system). In some embodiments, method 1000 is performed by storing in a non-transitory (or transient) computer-readable storage medium and by one or more processors of a computer system (such as one or more processors 202 of computer system 101) (e.g., Figure 1 Some operations in method 1000 are optionally combined, and / or the order of some operations is optionally changed.

[0176] A computer system (e.g., 900) detects (1002) via one or more input devices (and in some embodiments, while an audio playback operation is occurring) a first gesture (e.g., 950a or 950b) (e.g., an air gesture) performed by a first hand (e.g., a hand of a user of the computer system).

[0177] In response to detecting the first gesture (1004) and based on determining that the first gesture (e.g., 950b) satisfies the first set of criteria, the computer system performs (1006) an audio playback adjustment operation (e.g., Fig. 9C Medium to low sound intensity; Fig.9DIn some embodiments, performing an audio playback operation includes transmitting an instruction to an external device (e.g., a set of headphones and / or earbuds and / or a computer system different from the computer system) that causes the audio playback adjustment operation to be performed at the external device.

[0178] In response to detecting the first gesture (1004) and based on determining that the first gesture (e.g., 950a) does not meet the first set of criteria, the computer system abandons (e.g., Fig. 9B (1008) performs an audio playback adjustment operation (e.g., abandons performing any operation based on detecting the first gesture and / or performs an operation different from the audio playback adjustment operation). In some embodiments, as part of performing the audio playback operation, the computer system causes an external device (e.g., a set of headphones and / or a wearable device) to perform the operation. In response to detecting the first gesture and selecting whether to perform the audio playback adjustment operation based on determining that the first gesture satisfies a first set of criteria, this provides the user with more control to cause the performance of the audio playback adjustment operation by making a specific gesture without the need for additional controls and / or virtual objects that clutter the user interface, wherein the first set of criteria includes criteria that are satisfied when the first gesture includes a first hand in a first position that is at least a threshold distance from a first body part of the user.

[0179] In some embodiments, the first gesture includes detecting that the first hand is raised from a second position (e.g., a position different and / or not the same as the first position and / or a position that is not at least a threshold distance from a first body part of the user) to a first position (e.g., FIG. 9A to FIG. 9BIn some embodiments, as part of detecting the first gesture, the computer system detects that the first hand is lowered from the third position to the first position and / or is not at least a threshold distance from the first body part of the user. In response to detecting the first gesture and selecting whether to perform the audio playback adjustment operation based on determining that the first gesture satisfies a first set of criteria, the user is provided with more control to cause the performance of the audio playback adjustment operation by making a particular gesture without requiring additional controls and / or virtual objects that clutter the user interface, wherein the first set of criteria includes criteria that are satisfied when the first gesture includes the first hand being raised to the first position.

[0180] In some embodiments, in response to detecting a first gesture: performing an operation other than an audio playback adjustment operation (e.g., as described in reference to FIG. 1 ) based on determining that the first gesture (e.g., 950a) does not satisfy a first set of criteria. Fig. 9B Described) (and in some embodiments, without causing the external device to perform an operation). In response to detecting a first gesture and performing an operation other than the audio playback adjustment operation based on determining that the first gesture does not satisfy a first set of criteria, more control is provided to the user so that an operation other than the audio playback adjustment operation is performed.

[0181] In some embodiments, an operation other than an audio playback adjustment operation is an operation that changes one or more aspects of the augmented reality environment (e.g., as described in reference to Fig. 9B In response to detecting the first gesture and performing an operation to change one or more aspects of the extended reality environment based on determining that the first gesture does not satisfy the first set of criteria, more control is provided to the user so that the operation to change one or more aspects of the extended reality environment is performed.

[0182] In some embodiments, a first gesture is detected while a set of headphones (e.g., 900) (e.g., in communication with a computer system) is playing audio, and wherein performing an audio playback adjustment operation includes causing the set of headphones to perform an audio playback adjustment operation (e.g., such as Fig. 9C In response to detecting the first gesture and selecting whether to cause the set of headphones to perform an audio playback adjustment operation based on determining that the first gesture satisfies a first set of criteria, control is provided to the user to cause the set of headphones to perform the audio playback adjustment operation without requiring additional controls and / or virtual objects that clutter the user interface.

[0183] In some embodiments, a first gesture is detected while an extended reality device (e.g., a head mounted display unit, a smart phone, a laptop computer, and / or a tablet computer) is playing audio (e.g., because the extended reality device is displaying an extended reality user interface (e.g., an extended reality user interface associated with the audio being played back (e.g., a music user interface and / or a user interface that includes an indication that audio is being played back))), and wherein performing an audio playback adjustment operation includes causing the extended reality device to perform the audio playback adjustment operation. In response to detecting the first gesture and selecting whether to cause the extended reality device to perform the audio playback adjustment operation based on determining that the first gesture satisfies a first set of criteria, controls are provided to the user to cause the extended reality device to perform the audio playback adjustment operation without requiring additional controls and / or virtual objects that clutter the user interface.

[0184] In some embodiments, before detecting a first gesture performed by a first hand, a first media item is being played back (e.g., by a computer system, an extended reality device, a set of headphones, and / or a computer system different from the computer system) (e.g., 920); the first gesture is a pinch gesture (e.g., a single pinch gesture, a multiple pinch gesture, and / or in some embodiments, a tap gesture and / or a swipe gesture); and in response to detecting the first gesture, performing an audio playback adjustment operation includes playing or pausing the first media item (e.g., as described in reference to Fig.9D In some embodiments, in response to detecting the first gesture while the computer system is playing back the first media item, the computer system (or another computer system / device) pauses the first media item. In some embodiments, in response to detecting the first media item while the computer system (or another computer system / device) is not playing back the first media item (and in some embodiments is configured to play back the first media item), the computer system (or another computer system / device) plays the first media item. In some embodiments, playing the first media item or pausing the first media item includes transmitting and / or sending an instruction set that causes an extended reality device, a set of headphones, and / or a computer system different from the computer system to play the first media item and / or pause the first media item. In response to detecting the first gesture as a pinch gesture and selecting whether to play or pause the first media item based on determining that the first gesture satisfies the first set of criteria, a control is provided to the user to play or pause the first media item without the need for additional controls and / or virtual objects that clutter the user interface.

[0185] In some embodiments, before a first gesture performed by a first hand is detected, a second media item (e.g., 920 or 930) is being played back (e.g., by a computer system, an extended reality device, a set of headphones, and / or a computer system different from the computer system); the first gesture is a gesture (e.g., as described in reference to FIG. 1 ) that includes moving a finger of the first hand relative to a portion of the first hand (e.g., excluding the portion of the finger of the first hand and / or another finger of the first hand that is different from the finger of the first hand) (e.g., swiping and / or dragging along the first hand). Fig.9D and performing an audio playback adjustment operation in response to detecting the first gesture includes changing the playback (e.g., fast forwarding or rewinding) of the second media item (e.g., as described in reference Fig.9D In some embodiments, fast forwarding or rewinding the second media item includes transmitting and / or sending an instruction set that causes the extended reality device, a set of headphones, and / or a computer system different from the computer system to fast forward or rewind the second media item and / or pause the second media item. In some embodiments, based on determining that the first gesture is in a first direction, changing the playback of the second media item includes fast forwarding the media item (e.g., the media item currently being played and / or the media item currently configured for playback) (or in some embodiments, skipping to the next media item). In some embodiments, based on determining that the first gesture is in a second direction different from the first direction, changing the playback of the second media item includes rewinding the media item, e.g., the media item currently being played and / or the media item currently configured for playback (or in some embodiments, returning to the previous media item). In response to detecting a gesture that includes movement of a finger of the first hand relative to a portion of the first hand and selecting whether to fast forward or rewind the second media item based on determining that the first gesture satisfies a first set of criteria, this provides the user with control to fast forward or rewind the second media item without the need for additional controls and / or virtual objects that clutter the user interface.

[0186] In some embodiments, before detecting a first gesture performed by a first hand, the computer system displays (and / or in some embodiments, causes another display to display, the other display including an extended reality device, a set of headphones, and / or a computer system different from the computer system) a user interface (e.g., 700b) at a first amount of transparency (e.g., and / or is configured to operate in a first transparency mode); while the computer system is displaying the user interface at a second amount of transparency, detects a tap gesture (e.g., a double-click gesture, a single-click gesture, and / or in some embodiments a pinch gesture, a mouse click gesture, and / or a swipe gesture) performed by the first hand via one or more input devices; and in response to detecting the second gesture and based on determining that the second gesture satisfies a second set of criteria, displays the user interface at a second amount of transparency different from the first amount of transparency (e.g., configures the computer system to operate in a second transparency mode different from the first transparency mode). Displaying the user interface at a second amount of transparency different from the first amount of transparency in response to detecting the second gesture and based on determining that the second gesture satisfies the second set of criteria provides the user with control to change the amount of transparency of the user interface without requiring additional controls and / or virtual objects that clutter the user interface.

[0187] In some embodiments, prior to detecting a first gesture performed by a first hand, a third media item (e.g., 920 or 930) is configured to be played back (e.g., by a computer system, an extended reality device, a set of headphones, and / or a computer system different from the computer system) at a first intensity level (e.g., 910a or 910b); the first gesture is a first pinch gesture (e.g., 950b) of rotation (e.g., or a double-click gesture, a single-click gesture, and / or in some embodiments, a pinch gesture that moves (e.g., vertically, inwardly, outwardly, and / or horizontally), a mouse click gesture, and / or a sliding gesture); and performing an audio playback adjustment operation in response to detecting the first gesture includes configuring the third media item to be played back at a second intensity level (e.g., 930) different from the first intensity level (e.g., at a computer system, an extended reality device, a set of headphones, and / or a computer system different from the computer system). In some embodiments, configuring the third media item to be played back at a second intensity level different from the first intensity level includes causing the first intensity level to increase or causing the first intensity level to decrease. In some embodiments, in response to detecting the first gesture and in accordance with determining that the pinch gesture is rotated in a first direction, the second intensity level is lower than the first intensity level; and in response to detecting the first gesture and in accordance with determining that the pinch gesture is rotated in a second direction different from the first direction, the second intensity level is higher than the first intensity level. In response to detecting the first gesture as a rotated first pinch gesture and in accordance with determining that the first gesture satisfies a first set of criteria, selecting whether to configure the third media item to be played back at a second intensity level different from the first intensity level provides the user with control to change the intensity level at which the third media item is configured to be played back without the need for additional controls and / or virtual objects that clutter the user interface.

[0188] In some embodiments, before detecting a first gesture performed by a first hand, a fourth media item (e.g., 920 or 930) is configured (e.g., by a computer system, an extended reality device, a set of headphones, and / or a computer system different from the computer system) to be played back at a third intensity level (e.g., 910a); the first gesture is a second pinch gesture (e.g., 950b) of rotation (e.g., or a double-click gesture, a single-click gesture, and / or in some embodiments, a pinch gesture that moves (e.g., vertically, inwardly, outwardly, and / or horizontally), a mouse click gesture, and / or a sliding gesture); and performing an audio playback adjustment operation in response to detecting the first gesture includes: based on determining that the second pinch gesture is rotating at a first rate (e.g., speed, acceleration, movement rate, and / or velocity), configuring the third media item to be played back at a fourth intensity level that differs from the third intensity level by a first intensity amount (e.g., as described in reference Fig. 9Cand, based on determining that the second pinch gesture rotates at a second rate different from the first rate, configuring the third media item to be played back at a fifth intensity level that differs from the third intensity level by a second intensity amount (e.g., as described in reference Fig. 9C The second sound intensity amount is different from the first sound intensity amount. In some embodiments, when the second rate is higher (e.g., faster) than the first rate, the second sound intensity amount is greater than the first sound intensity amount (and / or the difference in sound intensity change increases as the gesture rotates at a higher rate). Configuring the third media item to play back at different sound intensity amounts based on the rate at which the second pinch gesture rotates provides the user with control over how much the sound intensity level changes without the need for additional controls and / or virtual objects that clutter the user interface.

[0189] In some embodiments, in response to detecting the first gesture and based on determining that the first gesture satisfies the first set of criteria, a first set of tactile outputs (e.g., 970a) corresponding to the audio playback adjustment operation is generated (e.g., in conjunction with performing the audio playback adjustment operation (e.g., while, before, and / or after performing the audio playback adjustment operation)). Generating the first set of tactile outputs corresponding to the audio playback adjustment operation provides feedback to the user regarding the execution of the audio playback adjustment operation, which can also reduce the number of inputs required to reverse the execution of the operation when the user inadvertently causes the audio playback adjustment operation.

[0190] In some embodiments, a wrist-worn wearable device (e.g., 702) (e.g., a smart watch, a wrist-worn fitness tracker, a heart rate monitor, and / or other wrist-worn device capable of detecting gestures) includes one or more input devices (e.g., 244) for detecting a first gesture performed by a first hand.

[0191] In some embodiments, in response to detecting the first gesture and based on determining that the first gesture satisfies the first set of criteria, the computer system causes the wrist-worn wearable device (e.g., 702) to generate a second set of tactile outputs (e.g., 970a) corresponding to the audio playback adjustment operation (e.g., in conjunction with performing the audio playback adjustment operation (e.g., while, before, and / or after performing the audio playback adjustment operation)). Causing the wrist-worn wearable device to generate the second set of tactile outputs corresponding to the audio playback adjustment operation provides feedback to the user about the execution of the audio playback adjustment operation, which can also reduce the number of inputs required to reverse the execution of the operation when the user inadvertently causes the audio playback adjustment operation.

[0192] In some embodiments, based on determining that the first gesture (e.g., 950b) (e.g., when in a first position and / or when at least a threshold distance from a first body part of a user) has a first rotational direction, the audio playback adjustment operation is a first operation (e.g., reducing the volume level, rewinding the media item, jumping to a previous media item in a queue of media items, and / or reducing one or more audio characteristics (e.g., bass, balance, pitch, and / or tone)); and based on determining that the first gesture has a second rotational direction, the audio adjustment operation is a second operation different from the first operation (e.g., as described in reference to FIG. Fig. 9C Performing audio playback adjustment operations based on rotational direction allows the user to control the audio playback adjustment operations performed without the need for additional controls and / or virtual objects that clutter the user interface.

[0193] In some embodiments, based on determining that the first gesture (e.g., 950b) (e.g., when in a first position and / or when at a threshold distance from a first body part of the user) has a first rotation magnitude (e.g., rate, speed, acceleration, velocity, distance, and / or angular distance), the audio playback adjustment operation has a first adjustment magnitude (e.g., as described in reference Fig. 9C described) (e.g., reducing the volume level, rewinding the media item, jumping to the previous media item in the media item queue, and / or reducing one or more audio characteristics (e.g., bass, balance, pitch, and / or tone) by a first amplitude) (e.g., increasing the volume level, fast-forwarding the media item, jumping to the next media item, and / or increasing one or more audio characteristics (e.g., bass, balance, pitch, and / or tone) by a first amplitude); and based on determining that the first gesture has a second rotation amplitude different from the first rotation amplitude, the audio adjustment operation has a second adjustment amplitude different from the third adjustment amplitude (e.g., reducing the volume level, rewinding the media item, jumping to the previous media item in the media item queue, and / or reducing one or more audio characteristics (e.g., bass, balance, pitch, and / or tone) by a second adjustment amplitude different from the first adjustment amplitude) (e.g., increasing the volume level, fast-forwarding the media item in the media item queue, jumping to the next media item, and / or increasing one or more audio characteristics (e.g., bass, balance, pitch, and / or tone) by the second amplitude). Performing audio playback adjustment operations based on rotation magnitude allows a user to control the audio playback adjustment operations performed without requiring additional controls and / or virtual objects that clutter the user interface.

[0194] In some embodiments, aspects / operations of methods 800, 1000, and / or 1200 as described herein may be interchanged, replaced, and / or added between these methods. For example, the air gesture of method 800 may be the first gesture of method 1000 of conditionally performing audio playback adjustments. For the sake of brevity, these details are not repeated here.

[0195] FIG. 11A to FIG. 11H Examples are illustrated of techniques for conditionally responding to input. Fig.12 is a flow diagram of an exemplary method 1200 for conditionally responding to input. FIG. 11A to FIG. 11H The diagram in the figure is used to illustrate the process described below, including Fig.12 . As discussed in more detail below, those processes include providing: a) a user interface object that causes a first operation to be performed when the device receives a first type of gesture and a second operation to be performed when the device receives a second type of gesture; b) a user interface object that causes a third operation to be performed when the device receives a first type of gesture or a second type of gesture; and / or c) a user interface object that causes a fourth operation to be performed when the device receives a first type of gesture but does not cause an operation (e.g., any operation) to be performed when the device receives a second type of gesture. In some embodiments, the device is an extended reality device (e.g., a device that presents an extended reality environment to a user), such as a head-mounted device. In such embodiments, presenting a user interface with virtual objects that can respond differently to gestures provides a variety of control options, particularly for control via gestures. Control via gestures may be particularly useful for HMDs because hardware elements (e.g., buttons or touch-sensitive surfaces) of the HMD may not be visible to the user when the HMD is worn and / or may be difficult to operate due to their location and / or lack of visibility.

[0196] exist Fig.11A , user 701 is holding and interacting with device 700 that is currently displaying camera user interface 1102 of a camera application. As discussed above, device 700 may include one or more features of computer system 101 (e.g., eye tracking unit 243 configured to track the location and movement of user gaze); FIG. 11A to FIG. 11HIn an embodiment, device 700 includes image sensor 314, which includes one or more cameras (e.g., a rear camera) that can be used to capture still images and videos using camera user interface 1102. User 701 also wears wearable device 702 on her right hand. As described above, wearable device 702 includes one or more sensors (e.g., one or more heart rate sensors and / or blood pressure sensors (e.g., one or more light-emitting elements and / or optical sensors on the back side of the device oriented toward the wrist of user 701), accelerometers, and / or gyroscopes) that detect movement (e.g., rotation and / or lateral movement), orientation, gestures, and positioning of the right hand of user 701.

[0197] exist Fig.11A , camera user interface 1102 includes various selectable interface objects, including a shutter object 1102a (e.g., for initiating image or video capture), a camera roll object 1102b (e.g., for accessing one or more previously captured images or videos), a flash control object 1102c (e.g., for selecting and / or modifying a flash mode), and a video mode object 1102d (e.g., for selecting a video capture mode). Fig.11A , video object 1102d is currently selected (e.g., as indicated by bold), and thus device 700 is configured to capture video media (e.g., when shutter object 1102a is selected). Camera user interface 1102 also includes camera preview object 1104, which is a user interface area that provides a preview of image data captured in the field of view of one or more cameras of device 700. Fig.11A , the camera preview object 1104 currently shows that the camera of the device 700 is currently pointed at the person who is playing the guitar. In some embodiments, the camera user interface 1102 is a set of virtual objects displayed in a virtual reality environment.

[0198] exist Fig.11A At , device 700 (e.g., alternatively and / or sequentially) detects that user 701's gaze is directed toward shutter object 1102a, camera roll object 1102b, and flash control object 1102c, as indicated by exemplary gaze line 752a and gaze target indications 1154a, 1154b, and 1154c, respectively. FIG. 11A to FIG. 11H In embodiments, illustrative elements such as gaze line 752a and gaze target indications 1154a to 1154c are provided for illustrative purposes only and are not part of a user interface provided by device 700 and / or 702.

[0199] Also in Fig.11AAt , device 702 (in some embodiments and / or device 700) detects a first input as a first type of gesture while the user's gaze is directed (e.g., alternatively and / or sequentially) toward user interface objects 1102a to 1102c, as indicated by illustrative text 1150a. In some embodiments, the first type of gesture is an air gesture, such as a pinch-and-release gesture (e.g., a pinch with the thumb and index finger that lasts less than a predetermined time period) or as described above with reference to Figure 7B and Figure 7C In some embodiments, the air gesture is a different air gesture, such as a tap gesture made with the index or middle finger (e.g., a mid-air tap that does not involve contacting the device 700 or device 702 with the user's finger) or positioning the user's fingers in a predetermined pose (e.g., a "C" shape made with the thumb and index finger).

[0200] exist Fig. 11B In response to the user 701's gaze pointing to the shutter object 1102a (e.g., Fig.11A 1154a in the gaze target 1154a of the display device 700, the device 702 sends an indication of the detected first input to the device 700. In response to receiving an indication of the first input when the user's gaze is directed to the shutter object 1102a, the device 700 initiates a process of recording a video, as indicated by the shutter object 1102a being replaced by the stop object 1102e and the recording time object 1102f starting to count up. Therefore, when a gesture of the first type is detected when the user's attention is directed to the shutter object 1102a, the device 700 performs a first operation corresponding to the shutter object 1102a (e.g., initiates video recording). In some embodiments, in response to detecting the first input corresponding to the illustrative text 1150a, the device 702 and / or the device 700 outputs a tactile output (e.g., to indicate that the gesture is received / recognized). In some embodiments, different tactile outputs are provided for different gesture types (e.g., a single tactile vibration for pinching and then releasing and two tactile vibrations for a double pinch gesture).

[0201] exist Fig. 11C In response to the user 701's gaze pointing to the camera roll object 1102b (e.g., Fig.11A In response to receiving the indication of the first input when the user's gaze is directed to camera roll object 1102b, device 700 displays camera roll interface 1106, which includes previously captured images (e.g., in Fig.11AThus, when a first type of gesture is detected while the user's attention is directed toward camera roll object 1102 b, device 700 performs a first operation corresponding to camera roll object 1102 b (e.g., displaying a representation of previously captured media).

[0202] exist Fig.11D In response to the user 701's gaze pointing to the flash control object 1102c (e.g., Fig.11A 1154c in the figure, the device 702 detects a first input corresponding to the illustrative text 1150a, and the device 702 sends an indication of the detected first input to the device 700. In response to receiving the indication of the first input when the user's gaze is directed to the flash control object 1102c, the device 700 enables the automatic flash function, as indicated by the change in the appearance of the flash control object 1102c. Therefore, when the first type of gesture is detected when the user's attention is directed to the flash control object 1102c, the device 700 performs a first operation corresponding to the flash control object 1102c (e.g., enabling automatic flash).

[0203] exist Fig.11D At , the device 700 (e.g., alternatively and / or sequentially) detects that the gaze of the user 701 is directed to the shutter object 1102a, the camera roll object 1102b, and the flash control object 1102c, as indicated by the exemplary gaze line 752a and the gaze target indications 1154d, 1154e, and 1154f, respectively. In some embodiments, the device 700 displays a visual indication of the detected user gaze, such as highlighting the object (e.g., when the device 700 determines that the user's gaze is currently directed to the shutter object 1102, the shutter object 1102 is highlighted and / or bolded).

[0204] Also in Fig.11D At , device 702 (in some embodiments and / or device 700) detects a second input that is a second type of gesture that is different from the first type, while the user's gaze is directed (e.g., alternatively and / or sequentially) toward user interface objects 1102a to 1102c, as indicated by illustrative text 1150b and gaze targets 1154d to 1154f, respectively. In some embodiments, the second type of gesture is an air gesture, such as a pinch and hold gesture (e.g., pinching with the thumb and index finger, which is held for at least a predetermined period of time before being released) or a pinch and rotate, as described above with reference to Figure 7B and Figure 7CIn some embodiments, the air gesture is a different air gesture, such as a tap gesture made with the index or middle finger (e.g., a mid-air tap that does not involve contacting the device 700 or device 702 with the user's finger) or positioning the user's fingers in a predetermined pose (e.g., a "V" shape made with the thumb and index finger).

[0205] In response to the user 701's gaze pointing to the shutter object 1102a (e.g., Fig.11D In response to receiving the indication of the second input when the user's gaze is directed to shutter object 1102a, device 700 initiates the process of recording video, such as Fig. 11B , where the shutter object 1102a is replaced by the stop object 1102e and the recording time object 1102f begins to count up. Therefore, when the second type of gesture is detected when the user's attention is directed to the shutter object 1102a, the device 700 performs the same first operation corresponding to the shutter object 1102a (e.g., initiates video recording). In summary, when the first type of gesture or the second type of gesture is detected when the user's attention is directed to the shutter object 1102a, the device 700 performs the same operation. In some embodiments, mapping multiple gestures to the same operation for the virtual object ensures that the operation is performed without requiring the user to remember a single precise gesture. In some embodiments, the virtual object is associated with only a single operation, and therefore gesture disambiguation is not required. In some embodiments, the operation is an important or critical operation (e.g., media capture of a potential transient event), and mapping multiple gestures from a set of recognizable gestures (in some embodiments, mapping all recognizable gestures) reduces the risk of not performing the operation due to misrecognition of the gesture and / or user error in providing the desired gesture.

[0206] In response to the user 701's gaze pointing to the camera roll object 1102b (e.g., Fig.11D In response to receiving the indication of the second input when the user's gaze is directed to the shutter object 1102b, the device 700 maintains the display of the user interface 1102b, as shown in FIG. Fig.11D1102b). Thus, when the second type of gesture is detected while the user's attention is directed toward camera roll object 1102b, device 700 does not perform a perceptible operation corresponding to camera roll object 1102b. In some embodiments, the second type of gesture does not cause a perceptible operation (e.g., displaying a representation of previously captured media, such as Fig. 11C For example, navigating away from the camera capture user interface 1102 may result in missing a momentary media capture opportunity when the user does not intend to navigate away from the camera capture user interface 1102. In such embodiments, the first operation corresponding to the camera roll object 1102b is mapped only to a specific set of gesture types (in some embodiments, a single type of gesture).

[0207] In response to the user 701's gaze pointing to the flash control object 1102c (e.g., Fig.11D 4f in the figure, device 702 detects a second input corresponding to illustrative text 1150b when the user's gaze is directed to flash control object 1102c, device 700 sends an indication of the detected second input to device 700. In response to receiving an indication of the second input when the user's gaze is directed to flash control object 1102c, device 700 switches to the forced flash on function. Therefore, when a first type of gesture is detected when the user's attention is directed to flash control object 1102c, device 700 performs a second operation corresponding to flash control object 1102c (e.g., enabling forced flash). In some embodiments, if a second type of gesture is detected when the flash is off and when the user's attention is directed to flash control object 1102c (e.g., Fig.11A ), the flash function will transition to forced flash on instead of automatic flash. In some embodiments, the virtual object is associated with three or more operations (e.g., flash off, automatic flash, and forced flash on), and the three or more specific gesture types are each mapped to a specific operation. For example, a pinch-and-release gesture is mapped to flash off, a pinch-and-hold gesture is mapped to automatic flash, and a double-pinch gesture is mapped to forced flash on. In some embodiments, the corresponding virtual object is associated with multiple states (e.g., three or more states, such as off, automatic flash, and forced flash on) and receiving a first type of gesture or a second type of gesture when the user's attention is directed to the corresponding virtual object causes the same operation - cycling to the next state in a predetermined sequence of states.

[0208] exist Fig.11E , device 700 detects that the user's gaze is directed to a location in camera preview object 1104, as indicated by exemplary gaze line 752a and gaze target indication 1154g. Fig.11E At this point, device 702 (in some embodiments and / or device 700) detects a third input as a gesture of the first type while the user's gaze is directed toward a location in camera preview object 1104, as indicated by illustrative text 1150c.

[0209] exist Fig.11F In response to detecting a third input corresponding to illustrative text 1150c when the gaze of user 701 is directed to a location in camera preview object 1104, device 702 sends an indication of the detected third input to device 700. In response to receiving an indication of the third input when the user's gaze is directed to a location in camera preview object 1104, device 700 displays exposure adjustment control object 1108. In some embodiments, the first type of gesture is an air gesture having a magnitude characteristic and / or a direction characteristic (e.g., the first type of gesture is as described above with respect to Fig. 9C 1104), and one or more characteristics of the operation are based on the amplitude characteristics and / or direction characteristics of the gesture (e.g., the change in exposure is based on the direction and distance of the thumb sliding on the index finger). Therefore, when a first type of gesture is detected when the user's attention is directed to the camera preview object 1104, the device 700 performs a first operation corresponding to the camera preview object 1104 (e.g., displaying the exposure adjustment control object 1108).

[0210] exist Fig.11G At the device 700, the user's gaze is detected as Fig.11E , as indicated by the exemplary gaze line 752a and gaze target indication 1154g. Fig.11G At this point, device 702 (in some embodiments and / or device 700) detects a fourth input as a second type of gesture while the user's gaze is directed toward a location in camera preview object 1104, as indicated by illustrative text 1150d.

[0211] exist Fig.11H In response to detecting a fourth input corresponding to exemplary text 1150d when the gaze of user 701 is directed to a location in camera preview object 1104, device 702 sends an indication of the detected fourth input to device 700. In response to receiving the indication of the fourth input when the user's gaze is directed to a location in camera preview object 1104, device 700 displays representation 720a corresponding to the weather application, as shown in reference to FIG. Figure 7B As described, and outputs tactile output 1160a (e.g., similar to Figure 7B In some embodiments, such as with respect to 7A to 7EAs discussed, the user can then use additional gestures to switch to different applications. Thus, when a second type of gesture is detected when the user's attention is directed to the camera preview object 1104, the device 700 performs a second operation corresponding to the camera preview object 1104 (e.g., displaying the representation 720a). In some embodiments, when a third type of gesture is detected (e.g., a double pinch gesture), a third operation (e.g., a system-level operation such as transitioning the device and / or display to a low-power state) is performed. In some embodiments, when a corresponding gesture is detected when the user's attention is directed to a virtual object, different operations mapped to different gesture types can be performed. In some embodiments, doing so allows multiple operations to be associated with a virtual object without cluttering the user interface with additionally displayed control objects.

[0212] about FIG. 11A to FIG. 11H For additional description, refer to the following section with respect to FIG. 11A to FIG. 11H Method 1200 is described.

[0213] Fig.12 1 is a flow chart of an exemplary method 1200 for conditionally responding to input according to some embodiments. In some embodiments, method 1000 is performed on a computer system (e.g., a computer system) in communication with a display generation component and one or more input devices (e.g., a camera; a gyroscope, an accelerometer, an acoustic sensor, a physiological sensor (e.g., a blood pressure sensor), a keyboard, a touch-sensitive surface, a smart watch, and / or a mouse). Figure 1 101; device 900, 700, or 702) (e.g., a smart phone, a desktop computer, a laptop computer, a tablet computer, a smart watch, a wrist-worn fitness tracker, a head-up display unit, a head-mounted display unit, an optical head-mounted display unit, a head-mounted augmented reality and / or extended reality device, and / or a wearable device). In some embodiments, one or more input devices are integrated into an external device (e.g., a smart watch and / or a wearable device) that communicates with the computer system. In some embodiments, method 1000 is performed by storing in a non-transitory (or transient) computer-readable storage medium and by one or more processors of a computer system (such as one or more processors 202 of computer system 101) (e.g., Figure 1 Some operations in method 1200 are optionally combined, and / or the order of some operations is optionally changed.

[0214] A computer system (e.g., 700 or 702) detects (1202) input (e.g., 1150a) (e.g., input having a set of characteristics (e.g., pinch, pinch and hold, and / or multi-pinch gestures / inputs and / or in some embodiments, non-pinch gestures / inputs (such as click, click and hold, and / or multi-click, tap, press and hold, and / or multi-tap gestures / inputs))) via one or more input devices when displaying a user interface (e.g., 1102) including virtual objects (e.g., 1102a to 1102c) (e.g., and / or when causing a first user interface to be displayed) via a display generation component (e.g., 700a) (e.g., and / or when causing a first user interface to be displayed).

[0215] In response to detecting an input (1204) and in accordance with determining that the user's attention (e.g., the user's gaze directed to a portion (e.g., a specific portion and / or a predetermined portion) of the user interface, an object or a body part of the user) is directed to the first virtual object (e.g., 1154c or 1104) (e.g., causing the computer system to perform different operations on the virtual object in response to the first type of input and the second type of input and / or in response to detecting the first type of input or the second type of input) in conjunction with detecting the input (e.g., at the same time, after (e.g., immediately after (e.g., within 0 seconds to 5 seconds)) and / or before (e.g., immediately before (e.g., within 0 seconds to 5 seconds))) and the input corresponds to the first type of input (e.g., 1150a) (e.g., pinch, pinch and hold, single pinch and / or multiple pinches (e.g., double pinch and / or triple pinch), the computer system performs (1206) a first operation (e.g., as described in reference to the first virtual object) with respect to the first virtual object. Fig.11D or Fig.11F described) (e.g., selecting a virtual object, switching between applications, turning settings on and / or off, and / or capturing media) (e.g., not performing the second operation with respect to the first virtual object).

[0216] In response to detecting the input (1204) and based on determining that the user's attention is directed toward the first virtual object in combination with detecting the input and the input corresponding to a second type of input different from the first type of input (e.g., 1150b) (e.g., a pinch, a pinch and hold, a single pinch, and / or a multi-pinch (e.g., a double pinch and / or a triple pinch) input), the computer system moves the finger relative to the first virtual object (e.g., as shown in reference Fig. 11B , Fig. 11C or Fig.11D ) performs (1208) a second operation (e.g., as described in reference Fig.11D or Fig.11Hdescribed) (e.g., selecting a virtual object, switching between applications, turning on and / or off settings, and / or capturing media), wherein the second operation is different from the first operation (e.g., the first operation is not performed relative to the first virtual object).

[0217] In response to detecting the input (1204) and based on determining that the user's attention is directed toward a second virtual object (e.g., 1102) (e.g., a virtual object that causes the computer system to perform the same operation in response to the first type of input (and in some embodiments, not the second type of input) and / or in response to detecting the first type of input or the second type of input), wherein the second virtual object is different from the first virtual object and the input corresponds to the first type of input, the computer system performs (1210) the first operation (e.g., as described in reference to FIG. 1 ). Fig. 11B described) (e.g., not performing the second operation relative to the second virtual object).

[0218] In response to detecting the input (1204) and based on determining that the user's attention is directed toward the second virtual object in conjunction with detecting the input and the input corresponds to a second type of input, the computer system performs (1212) a first operation (e.g., as described in reference to the second virtual object) with respect to the second virtual object. Fig.11D described) (e.g., not performing the second operation relative to the second virtual object).

[0219] In some embodiments, detecting the first type of input includes detecting that a pinch and then release gesture has been performed (e.g., referring to Fig.11A Performing the same operation or a different operation with respect to a corresponding virtual object based on the corresponding virtual object detecting a pinch-and-release gesture or another type of input allows a computer system to automatically select which operation to perform based on the type of the corresponding virtual object, wherein the same operation is performed in some scenarios (e.g., when the corresponding virtual object is a first virtual object) and different operations are performed in other scenarios (e.g., when the corresponding virtual object is a second virtual object) in response to detecting a pinch-and-release gesture or another type of input.

[0220] In some embodiments, detecting the second type of input includes detecting a time period greater than a predetermined time period (e.g., as described in reference to Fig.11DThe pinch gesture described above has a duration longer than a predetermined time period (e.g., a non-zero time period (e.g., 1 second to 5 seconds) and / or a time period longer than zero seconds). Performing the same operation or a different operation based on the corresponding virtual object with respect to detecting a first type of input or a pinch gesture with a duration longer than a predetermined time period allows the computer system to automatically select which operation to perform based on the type of the corresponding virtual object, wherein the same operation is performed in some scenarios (e.g., when the corresponding virtual object is a first virtual object) and different operations are performed in other scenarios (e.g., when the corresponding virtual object is a second virtual object) in response to detecting that a pinch gesture has been performed for a time longer than a predetermined time period or a second type of input.

[0221] In some embodiments, in response to detecting the input and based on determining that the user's attention is directed to the first virtual object (e.g., 1102c) in combination with detecting the input and the input corresponding to a third type of input different from the first type of input and the second type of input, performing a third operation with respect to the first virtual object (e.g., as described in reference to FIG. Fig.11D The invention relates to a method for controlling a user to perform an operation different from the first operation or the second operation (e.g., selecting a virtual object, switching between applications, turning on and / or off settings, and / or capturing media) in accordance with the present invention. The method further relates to a method for controlling a user to perform an operation different from the first operation or the second operation (e.g., relative to an object responsive to the first operation, the second operation, and the third operation ...

[0222] In some embodiments, detecting the third type of input includes detecting that a multi-pinch gesture (e.g., a double pinch gesture, a triple pinch gesture, and / or a quad pinch gesture) has been performed (e.g., as described in reference to Fig.11D described). In some embodiments, a multi-pinch gesture is a gesture in which multiple single pinches are detected within a predetermined time period (e.g., within 0.1 seconds to 2 seconds of each other); in some embodiments, if one of the single pinches is not detected within a predetermined time period (e.g., within 0.1 seconds to 2 seconds) of a previous single pinch, the computer system performs an operation different from a third operation. Based on determining that the user's attention is directed to the first virtual object in combination with detecting input and the input corresponding to a multi-pinch gesture, a third operation is performed relative to the first virtual object to provide the user with control to perform an operation different from the first operation or the second operation (e.g., relative to an object that responds to the first operation, the second operation, and the third operation) without cluttering the user interface with additional controls and / or virtual objects.

[0223] In some embodiments, performing the third operation relative to the first virtual object includes performing a system operation (e.g., displaying a system user interface or enabling or disabling a system-level function). Performing the system operation relative to the first virtual object based on determining that the user's attention is directed toward the first virtual object in combination with detecting an input and the input corresponds to an input of the third type provides the user with control to perform an operation different from the first operation or the second operation (e.g., relative to an object responsive to the first operation, the second operation, and the system operation) without cluttering the user interface with additional controls and / or virtual objects.

[0224] In some embodiments, performing the third operation with respect to the first virtual object includes transitioning the computer system from a first system mode to a second system mode different from the first system mode (e.g., as described in reference to Fig.11H As described). In some embodiments, as part of transitioning a computer system from a first system mode to a second system mode different from the first system mode, the computer system enables a low power mode and / or a reduced power mode (e.g., a mode that places one or more components of the computer system (e.g., a display, a display generating component, a processor, and / or a connectivity hardware component such as a Bluetooth hardware module and / or a wireless hardware module) in a low power state and / or a reduced power state) or a sleep mode (e.g., a mode that places one or more components of the computer system (e.g., a display, a display generating component, a processor, and / or a connectivity hardware component such as a Bluetooth hardware module and / or a wireless hardware module) in a sleep state) or disables a low power mode or a sleep mode. The computer system is transitioned from the first system mode to a second system mode different from the first system mode based on determining that the user's attention is directed to the first virtual object in combination with detecting an input and the input corresponds to an input of a third type, which provides the user with control to transition the computer system from the first system mode to the second system mode without cluttering the user interface with additional controls and / or virtual objects.

[0225] In some embodiments, in response to detecting the input and based on determining that the user's attention is directed to a portion of the user interface that does not include the second virtual object (e.g., or any virtual object), the computer system performs a fourth operation (e.g., not performing an operation with respect to the second virtual object) (and / or the first operation and / or the second operation). In response to detecting the input and based on determining that the user's attention is directed to a portion of the user interface that does not include the second virtual object and the input corresponds to an input of the second type, the fourth operation is performed, which allows the computer system to automatically perform the fourth operation because the user interface responds to the second type of input (e.g., while the second virtual object does not respond to the second type of input).

[0226] In some embodiments, when displaying the user interface: based on determining that the user's attention is directed to a third virtual object (e.g., the first virtual object, the second virtual object, or another virtual object), emphasizing the third virtual object (e.g., as shown in the reference Fig.11D described) (e.g., highlighting the third virtual object, increasing the size of the third virtual object, bolding the third virtual object (e.g., the perimeter and / or interior of the third virtual object)) (in some embodiments, to indicate that the device does not sense the second type of input (e.g., or the first type of input); and based on determining that the user's attention is not directed to the third virtual object, giving up emphasizing the third virtual object (e.g., not highlighting the third virtual object, increasing the size of the third virtual object, bolding the third virtual object (e.g., the perimeter and / or interior of the third virtual object)). Selecting whether to emphasize the third virtual object based on determining that the user's attention is directed to the third virtual object allows the computer system to automatically provide the user with feedback that the user's attention is directed to the third virtual object based on specified conditions.

[0227] In some embodiments, detecting the second type of input causes the computer system to display a system user interface (e.g., as shown in FIG. Fig.11H described) (e.g., not displayed and / or not previously displayed before the second type of input is detected).

[0228] The system UI is the application switcher UI (e.g., as referenced in Fig.11H and 7A to 7E described) (e.g., a user interface that displays multiple user interfaces, where each of the multiple user interfaces corresponds to and / or represents an application that is different from other user interfaces in the multiple user interfaces). In some embodiments, while displaying the application switcher user interface, the computer system may detect one or more inputs (e.g., a single pinch gesture, a multiple pinch gesture, a pinch and rotate gesture, and / or an air tap gesture); and in response to detecting the one or more inputs, the computer system performs one or more operations (e.g., an operation to switch to one or more different applications and / or an operation to switch to one or more applications that are not displayed in the application switcher user interface and / or are not currently focused in the application switcher user interface).

[0229] In some embodiments, while displaying the system user interface, the computer system detects a second input (e.g., 750a2) corresponding to a fourth type of input (e.g., different from the first type of input and / or the second type of input) (e.g., a portion of the input and / or an input different from the detected input detected when displaying the user interface including the virtual object and / or having the set of characteristics). In some embodiments, the fourth type of input is a portion of the second type of input (e.g., the fourth type of input is the rotational portion of the pinch and rotate input and / or the fourth type of input is the sliding portion of the pinch and slide input). In response to detecting the second input corresponding to the fourth type of input, an operation corresponding to the fourth type of input is performed relative to the system user interface (e.g., as described in reference to FIG. 7C to FIG. 7D described) (and in some embodiments, the operation is not performed relative to the first virtual object and / or the second virtual object). In some embodiments, in response to detecting a second input corresponding to a fourth type of input and based on determining that the second input is performed in the first direction, an operation corresponding to the fourth type of input is performed relative to the system user interface based on the first direction (and not based on a second direction different from the first direction). In some embodiments, in response to detecting a second input corresponding to the fourth type of input and based on determining that the second input is performed in a second direction different from the first direction, an operation corresponding to the fourth type of input is performed relative to the system user interface based on the second direction (and not based on the first direction). Performing an operation relative to the system user interface in response to detecting a second input corresponding to the fourth type of input allows the user to control the system user interface without cluttering the user interface with additional controls and / or virtual objects.

[0230] In some embodiments, in response to detecting the input, the computer system generates a first set of tactile outputs (e.g., 1160a) (e.g., to provide feedback for detecting the input and / or to indicate that a particular type of input (e.g., one or more air pinch, air pinch and hold, air pinch and rotate, and / or air double pinch gestures) is detected). In some embodiments, generating the first set of outputs includes: based on determining that the input is a first type of input, the first set of tactile sensations includes a first type of tactile sensation (e.g., having a first duration, a first amplitude, and / or a first pattern); based on determining that the input is a second type of input, the first set of tactile sensations includes a second type of tactile sensation (e.g., having a second duration different from the first duration, a second amplitude different from the first amplitude, and / or a second pattern different from the first pattern). In some embodiments, the first set of tactile sensations changes over time and / or occurs over time as the input is made and / or the input is executed. Generating the first set of tactile outputs in response to detecting the input provides feedback to the user about the detection of executing the input, which can also reduce the number of inputs required to execute the reversal operation when the user inadvertently causes the audio playback adjustment operation.

[0231] In some embodiments, a wrist-worn wearable device (e.g., 702) (e.g., a smart watch, a wrist-worn fitness tracker, and / or a heart rate monitor) includes one or more input devices for detecting input (e.g., 244).

[0232] In some embodiments, in response to detecting the input, the wrist-worn wearable device (e.g., 702) generates a second set of tactile outputs (e.g., as shown in reference Fig.11H The wrist-worn wearable device generates a second set of tactile outputs in response to detecting the input to provide feedback to the user about the execution of the detection of the input, which can also reduce the number of inputs required to perform the reversal operation when the user inadvertently causes the audio playback adjustment operation.

[0233] In some embodiments, the user interface (e.g., 1102) is an extended reality user interface (e.g., as described in reference Fig.11A In some embodiments, the computer system detects input while the extended reality user interface is displayed and / or detects input at a computer system that is not displaying the extended reality user interface.

[0234] For the purpose of explanation, the foregoing description is described by reference to specific embodiments. However, the above exemplary discussion is not intended to be exhaustive or to limit the invention to the disclosed precise form. According to the above teachings, many modifications and variations are possible. The embodiments are selected and described in order to best illustrate the principles of the invention and its practical application, so that other persons skilled in the art can best use the invention and the various described embodiments with various modifications suitable for the specific purposes contemplated.

[0235] In some embodiments, aspects / operations of methods 800, 1000, and / or 1200 as described herein may be interchanged, replaced, and / or added between these methods. For example, the air gesture of method 800 may be an input to method 1200 detected when the user's attention is directed toward the first virtual object. For the sake of brevity, these details are not repeated here.

[0236] As described above, one aspect of the present technology is to collect and use data from various sources to improve the user's XR experience and / or improve gesture-based input systems. The present disclosure contemplates that, in some instances, such collected data may include personal information data that uniquely identifies or can be used to contact or locate a specific person. Such personal information data may include demographic data, location-based data, phone numbers, email addresses, Twitter IDs, home addresses, data or records related to the user's health or fitness level (e.g., vital sign measurements, medication information, exercise information), date of birth, or any other identification or personal information.

[0237] The present disclosure recognizes that the use of such personal information data in the present technology can be used to benefit the user. For example, the personal information data can be used to improve the user's XR experience and / or improve gesture-based input systems. In addition, the present disclosure also anticipates other uses of personal information data that benefit the user. For example, health and fitness data can be used to provide insights into the user's overall health, or can be used as positive feedback to individuals who use technology to pursue health goals.

[0238] The disclosure anticipates that entities responsible for the collection, analysis, disclosure, transmission, storage or other purposes of such personal information data will comply with sound privacy policies and / or privacy measures. Specifically, such entities should implement and adhere to the use of privacy policies and measures that are recognized as meeting or exceeding the industry or government requirements for maintaining the privacy and security of personal information data. Such policies should be convenient for users to access and should be updated as changes in the collection and / or use of data occur. Personal information from users should be collected for legal and reasonable entity purposes and should not be shared or sold outside these legal purposes. In addition, such collection / sharing should be carried out after receiving the informed consent of the user. Additionally, such entities should consider taking any necessary steps to protect and safeguard access to such personal information data, and ensure that other entities with access to personal information data comply with the privacy policies and procedures of other entities. In addition, such entities can subject themselves to third-party assessments to prove that they comply with widely accepted privacy policies and privacy practices. In addition, policies and practices should be adapted to specific types of personal information data collected and / or accessed, and to applicable laws and standards including considerations of special jurisdictions. For example, in the United States, the collection or acquisition of certain health data may be governed by federal and / or state laws, such as the Health Insurance Portability and Accountability Act (HIPAA); while health data in other countries may be subject to other regulations and policies and should be handled accordingly. Therefore, different privacy measures should be advocated for different types of personal data in each country.

[0239] Regardless of the foregoing, the present disclosure also contemplates implementation schemes in which users selectively block the use or access of personal information data. That is, the present disclosure contemplates that hardware elements and / or software elements may be provided to prevent or block access to such personal information data. For example, with respect to XR experiences or gesture-based input experiences, the technology of the present invention may be configured to allow users to choose to "opt in" or "opt out" at any time during or after registration for a service to participate in the collection of personal information data. As another example, a user may choose not to provide data for service customization. As another example, a user may choose to limit the length of time that data is retained or completely prohibit the development of customized services. In addition to providing "opt-in" and "opt-out" options, the present disclosure also contemplates providing notifications related to access or use of personal information. For example, a user may be notified that their personal information data will be accessed when downloading an application, and then reminded again just before the personal information data is accessed by the application.

[0240] In addition, it is the intention of the present disclosure that personal information data should be managed and processed in a manner that minimizes the risk of unintentional or unauthorized access or use. Once the data is no longer needed, the risk can be minimized by limiting the collection of data and deleting the data. In addition, and when applicable, including in certain health-related applications, data de-identification can be used to protect the privacy of users. De-identification can be facilitated by removing specific identifiers (e.g., date of birth, etc.), controlling the amount or specificity of stored data (e.g., collecting location data at the city level rather than at the address level), controlling how the data is stored (e.g., aggregating data between users), and / or other methods when appropriate.

[0241] Thus, while the present disclosure broadly covers the use of personal information data to implement one or more of the various disclosed embodiments, the present disclosure also contemplates that various embodiments may be implemented without requiring access to such personal information data. That is, various embodiments of the present technology will not fail to function properly due to the lack of all or a portion of such personal information data. For example, an XR experience may be generated by inferring preferences based on non-personal information data or an absolute minimum amount of personal information (such as content requested by a device associated with a user, other non-personal information available to a service, or publicly available information).

Claims

1. A method, comprising: At a computer system in communication with one or more input devices: detecting, via the one or more input devices, an in-air gesture performed by a hand and comprising a rotation of the hand; and In response to detecting the mid-air gesture: performing a first operation based on the air gesture in accordance with determining that the air gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria that are satisfied when the air gesture is detected while the hand is performing a pinch gesture; and Based on determining that the air gesture does not satisfy the first set of criteria, abandoning performing the first operation based on the air gesture.

2. The method according to claim 1, wherein: In response to detecting the mid-air gesture and in accordance with determining that the mid-air gesture satisfies the first set of criteria: According to determining that the hand rotates with a first movement amplitude, performing the first operation with a first execution amplitude; and The first operation is performed with a second execution amplitude different from the first execution amplitude based on determining that the hand is rotated with a second movement amplitude different from the first movement amplitude.

3. The method according to any one of claims 1 to 2, wherein: In response to detecting the mid-air gesture and in accordance with determining that the mid-air gesture satisfies the first set of criteria: Based on determining that the hand is rotating at a first speed and the hand is rotating a first angular distance, performing the first operation at a third execution amplitude; and The first operation is performed with a fourth execution amplitude different from the third execution amplitude based on determining that the hand is rotating at the first speed and the hand is rotated by a second angular distance different from the first angular distance. 4 . The method according to claim 1 , wherein the first angular distance is smaller than the second angular distance, and wherein the third execution amplitude is larger than the fourth execution amplitude.

5. The method according to any one of claims 1 to 4, wherein: In response to detecting the mid-air gesture and in accordance with determining that the mid-air gesture satisfies the first set of criteria: In response to determining that the hand is rotating in a first direction, performing the first operation based on the first direction; and Based on determining that the hand is rotated in a second direction different from the first direction, the first operation is performed based on the second direction.

6. The method according to any one of claims 1 to 5, further comprising: In response to detecting the mid-air gesture and based on determining that the mid-air gesture satisfies the first set of criteria, a process is initiated to generate a set of one or more tactile outputs indicating that the gesture satisfies the first set of criteria.

7. A method according to claim 6, wherein the computer system communicates with a wearable device, and wherein initiating the process for generating tactile feedback includes sending one or more instructions that cause the wearable device to generate the set of one or more tactile outputs indicating that the gesture satisfies the first set of criteria.

8. The method of any one of claims 1 to 7, wherein performing the first operation based on the mid-air gesture comprises transitioning through a first state sequence, the method further comprising: When transitioning through the first sequence of states: based on determining that a first state in the first sequence of states has been reached, generating a set of one or more tactile outputs indicating that the first state in the first sequence of states has been reached; and Based on determining that a second state in the first sequence of states has been reached, a set of one or more tactile outputs are generated indicating that the second state in the first sequence of states has been reached, wherein the second state is different from the first state.

9. The method of any one of claims 1 to 8, wherein performing the first operation based on the mid-air gesture comprises transitioning through a second state sequence, the method further comprising: While transitioning through the sequence of states, detecting that a particular state in the sequence of states has been reached; as well as In response to detecting that the particular state has been reached, a set of one or more tactile outputs are generated indicating that the particular state in the sequence of states has been reached.

10. The method according to any one of claims 1 to 9, further comprising: while performing the first operation based on the mid-air gesture, detecting a first change to the mid-air gesture including the rotation of the hand; as well as In response to detecting the first change to the mid-air gesture that includes the rotation of the hand and based on determining that the rotation of the hand has stopped while the hand continues to perform the pinch gesture, continuing to perform the first operation.

11. The method according to any one of claims 1 to 10, further comprising: while performing the first operation based on the mid-air gesture, detecting a second change to the mid-air gesture including the rotation of the hand; as well as In response to detecting the second change to the mid-air gesture that includes the rotation of the hand and based on determining that the hand has changed from rotating in a first direction to rotating in a second direction different from the first direction, ceasing to perform the first operation.

12. The method according to any one of claims 1 to 11, further comprising: When performing the first operation based on the mid-air gesture: based on determining that the first portion of the first operation is being performed, generating a set of one or more tactile outputs indicating that the first portion of the first operation is being performed; and Based on determining that a second portion of the first operation is being performed, generating a set of one or more tactile outputs indicating that the second portion of the first operation is being performed, wherein the second portion of the first operation is different from the first portion of the operation.

13. The method according to any one of claims 1 to 12, wherein performing the first operation based on the mid-air gesture comprises: based on determining that the mid-air gesture is being performed at a first speed, generating a set of tactile feedback indicating that the mid-air gesture is being performed at the first speed; and Based on determining that the mid-air gesture is being performed at a second speed different from the first speed, a set of tactile feedback is generated indicating that the mid-air gesture is being performed at the second speed different from the first speed.

14. The method of any one of claims 1 to 13, wherein in response to detecting the mid-air gesture, performing the first operation at a first rate, the method further comprising: while performing the first operation at the first rate, detecting an additional rotation of the hand while the hand is performing the pinch gesture; as well as In response to detecting the additional rotation of the hand while the hand is performing the pinch gesture, performing the first operation at a second rate different from the first rate.

15. The method according to any one of claims 1 to 14, further comprising: while performing the first operation based on the mid-air gesture, detecting a third change to the mid-air gesture including the rotation of the hand; as well as In response to detecting the third change to the mid-air gesture that includes the rotation of the hand and based on determining that the hand is no longer performing the pinch gesture, performing the first operation is abandoned.

16. The method according to any one of claims 1 to 15, wherein the first operation is an operation performed with respect to one or more virtual objects in an extended reality environment.

17. The method of any one of claims 1 to 16, wherein the computer system is in communication with a display generation component, and wherein the first set of criteria comprises criteria that are satisfied when the display generation component is in an active state.

18. The method of any one of claims 1 to 17, wherein the mid-air gesture is detected while displaying a first virtual object and a second virtual object different from the first virtual object, and wherein: In response to detecting the mid-air gesture: Based on determining that the mid-air gesture satisfies the first set of criteria when the user's attention is directed toward the first virtual object, performing the first operation relative to the first virtual object; and Based on determining that the mid-air gesture satisfies the first set of criteria when the user's attention is directed toward the second virtual object, performing the first operation relative to the second virtual object.

19. The method of any one of claims 1 to 18, wherein the mid-air gesture is detected while a third virtual object is displayed, and wherein: In response to detecting the mid-air gesture: performing the first operation relative to the third virtual object and based on the movement of the hand based on determining that the mid-air gesture meets the first set of criteria when the user's attention is directed to the third virtual object and the third virtual object responds to the rotation of the hand; and Based on determining that the mid-air gesture meets the first set of criteria when the user's attention is directed to the third virtual object and the third virtual object responds to the rotation of the hand, not performing the first operation relative to the third virtual object.

20. The method of any one of claims 1 to 19, wherein the first set of criteria comprises criteria that are satisfied when a user's attention is directed toward a first location, and wherein the user's attention is determined based on the user's gaze being directed toward the first location.

21. A method according to any one of claims 1 to 20, wherein the first set of criteria includes criteria that are satisfied when the user's attention is directed to a second location, and wherein the user's attention is determined based on the user's hand being within a predetermined distance from the second location.

22. The method according to any one of claims 1 to 21, wherein performing the first operation based on the mid-air gesture comprises: in response to detecting a first portion of the mid-air gesture including a pinch-and-hold gesture, displaying a plurality of virtual objects including a virtual object corresponding to a first application; and while displaying the plurality of virtual objects and while continuing to detect the mid-air gesture, detecting a second portion of the mid-air gesture including the rotation of the hand; in response to detecting the second portion of the mid-air gesture including the rotation of the hand, updating an appearance of a user interface including the plurality of virtual objects, including indicating that input focus has moved from the virtual object corresponding to the first application to a virtual object corresponding to a second application different from the first application; While updating the appearance of the user interface and while indicating that the virtual object corresponding to the second application has input focus, detecting a third portion of the air gesture including releasing the pinch-and-hold gesture; and In response to detecting the third portion of the air gesture including releasing the pinch-and-hold gesture while the virtual object corresponding to the second application is displayed, displaying a user interface corresponding to the second application.

23. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that communicates with one or more input devices, the one or more programs comprising instructions for executing the method according to any one of claims 1 to 22.

24. A computer system configured to communicate with 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 instructions for executing the method according to any one of claims 1 to 22.

25. A computer system configured to communicate with one or more input devices, the computer system comprising: Components for carrying out the method according to any one of claims 1 to 22.

26. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system in communication with one or more input devices, the one or more programs comprising instructions for performing the method according to any one of claims 1 to 22.

27. A non-transitory 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 input devices, the one or more programs comprising instructions for: detecting, via the one or more input devices, an in-air gesture performed by a hand and comprising a rotation of the hand; and In response to detecting the mid-air gesture: performing a first operation based on the air gesture in accordance with determining that the air gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria that are satisfied when the air gesture is detected while the hand is performing a pinch gesture; and Based on determining that the air gesture does not satisfy the first set of criteria, abandoning performing the first operation based on the air gesture.

28. A computer system configured to communicate with 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: detecting, via the one or more input devices, an in-air gesture performed by a hand and comprising a rotation of the hand; and In response to detecting the mid-air gesture: performing a first operation based on the air gesture in accordance with determining that the air gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria that are satisfied when the air gesture is detected while the hand is performing a pinch gesture; and Based on determining that the air gesture does not satisfy the first set of criteria, abandoning performing the first operation based on the air gesture.

29. A computer system configured to communicate with one or more input devices, the computer system comprising: means for detecting, via the one or more input devices, an in-air gesture performed by a hand and comprising a rotation of the hand; as well as In response to detecting the mid-air gesture, a component for: performing a first operation based on the air gesture in accordance with determining that the air gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria that are satisfied when the air gesture is detected while the hand is performing a pinch gesture; as well as Based on determining that the air gesture does not satisfy the first set of criteria, abandoning performing the first operation based on the air gesture.

30. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system in communication with one or more input devices, the one or more programs comprising instructions for: detecting, via the one or more input devices, an in-air gesture performed by a hand and comprising a rotation of the hand; and In response to detecting the mid-air gesture: performing a first operation based on the air gesture in accordance with determining that the air gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria that are satisfied when the air gesture is detected while the hand is performing a pinch gesture; and Based on determining that the air gesture does not satisfy the first set of criteria, abandoning performing the first operation based on the air gesture.

31. A method comprising: At a computer system in communication with one or more input devices: detecting, via the one or more input devices, a first gesture performed by a first hand; as well as In response to detecting the first gesture: performing an audio playback adjustment operation based on determining that the first gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria that are satisfied when the first gesture includes the first hand being in a first position that is at least a threshold distance from a first body part of a user; and Based on determining that the first gesture does not satisfy the first set of criteria, abandoning the audio playback adjustment operation.

32. The method of claim 31 , wherein detecting the first gesture comprises detecting the first hand being raised from a second position to the first position.

33. The method of any one of claims 31 to 32, further comprising, in response to detecting the first gesture: Based on determining that the first gesture does not satisfy the first set of criteria, an operation other than the audio playback adjustment operation is performed.

34. The method of claim 33, wherein the operation other than the audio playback adjustment operation is an operation that changes one or more aspects of an augmented reality environment.

35. The method of any one of claims 31 to 34, wherein the first gesture is detected while a set of headphones is playing audio, and wherein performing the audio playback adjustment operation comprises causing the set of headphones to perform the audio playback adjustment operation.

36. The method of any one of claims 31 to 35, wherein the first gesture is detected while an extended reality device is playing audio, and wherein performing the audio playback adjustment operation comprises causing the extended reality device to perform the audio playback adjustment operation.

37. A method according to any one of claims 31 to 36, wherein: Prior to detecting the first gesture performed by the first hand, a first media item is being played back; The first gesture is a pinch gesture; and Performing the audio playback adjustment operation in response to detecting the first gesture includes playing or pausing the first media item.

38. A method according to any one of claims 31 to 37, wherein: Prior to detecting the first gesture performed by the first hand, a second media item is being played back; The first gesture is a gesture comprising movement of a finger of the first hand relative to a portion of the first hand; and Performing the audio playback adjustment operation in response to detecting the first gesture includes changing playback of the second media item.

39. The method according to any one of claims 31 to 38, further comprising: prior to detecting the first gesture performed by the first hand, displaying a user interface at a first amount of transparency; detecting, via the one or more input devices, a tap gesture performed by the first hand while the computer system is displaying the user interface at a second amount of transparency; as well as In response to detecting the tap gesture performed by the first hand and based on determining that the tap gesture performed by the first hand satisfies the second set of criteria, displaying the user interface with the second amount of transparency that is different from the first amount of transparency.

40. A method according to any one of claims 31 to 39, wherein: Prior to detecting the first gesture performed by the first hand, a third media item is configured to be played back at a first intensity level; The first gesture is a rotational first pinch gesture; and Performing the audio playback adjustment operation in response to detecting the first gesture includes configuring the third media item to be played back at a second intensity level different than the first intensity level.

41. A method according to any one of claims 31 to 40, wherein: Prior to detecting the first gesture performed by the first hand, a fourth media item is configured to be played back at a third intensity level; The first gesture is a second pinch gesture of rotation; and Performing the audio playback adjustment operation in response to detecting the first gesture includes: Based on determining that the second pinch gesture rotates at a first rate, configuring the third media item to be played back at a fourth intensity level that differs from the third intensity level by a first intensity amount; and Based on determining that the second pinch gesture rotates at a second rate different from the first rate, configuring the third media item to be played back at a fifth intensity level that differs from the third intensity level by a second intensity amount, wherein the second intensity amount is different from the first intensity amount.

42. The method according to any one of claims 31 to 41, further comprising: In response to detecting the first gesture and based on determining that the first gesture satisfies a first set of criteria, generating a first set of tactile outputs corresponding to the audio playback adjustment operations.

43. The method of any one of claims 31 to 42, wherein a wrist-worn wearable device comprises the one or more input devices for detecting the first gesture performed by the first hand.

44. The method of claim 43, further comprising: In response to detecting the first gesture and based on determining that the first gesture satisfies the first set of criteria, causing the wrist-worn wearable device to generate a second set of tactile outputs corresponding to the audio playback adjustment operations.

45. A method according to any one of claims 31 to 44, wherein: Based on determining that the first gesture has a first rotation direction, the audio playback adjustment operation is a first operation; and Based on determining that the first gesture has a second rotation direction, the audio adjustment operation is a second operation different from the first operation.

46. ​​A method according to any one of claims 31 to 45, wherein: According to determining that the first gesture has a first rotation amplitude, the audio playback adjustment operation has a first adjustment amplitude; and Based on determining that the first gesture has a second rotation magnitude different from the first rotation magnitude, the audio adjustment operation has a second adjustment magnitude different from the first adjustment magnitude.

47. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that communicates with one or more input devices, the one or more programs comprising instructions for executing a method according to any one of claims 31 to 46.

48. A computer system configured to communicate with 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 instructions for executing the method according to any one of claims 31 to 46.

49. A computer system configured to communicate with one or more input devices, the computer system comprising: Means for carrying out the method according to any one of claims 31 to 46.

50. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system in communication with one or more input devices, the one or more programs comprising instructions for performing the method according to any one of claims 31 to 46.

51. A non-transitory 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 input devices, the one or more programs comprising instructions for: detecting, via the one or more input devices, a first gesture performed by a first hand; and In response to detecting the first gesture: performing an audio playback adjustment operation based on determining that the first gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria that are satisfied when the first gesture includes the first hand being in a first position that is at least a threshold distance from a first body part of a user; and Based on determining that the first gesture does not satisfy the first set of criteria, abandoning the audio playback adjustment operation.

52. A computer system configured to communicate with 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: detecting, via the one or more input devices, a first gesture performed by a first hand; and In response to detecting the first gesture: performing an audio playback adjustment operation based on determining that the first gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria that are satisfied when the first gesture includes the first hand being in a first position that is at least a threshold distance from a first body part of a user; and Based on determining that the first gesture does not satisfy the first set of criteria, abandoning the audio playback adjustment operation.

53. A computer system configured to communicate with one or more input devices, the computer system comprising: means for detecting, via the one or more input devices, a first gesture performed by a first hand; as well as means for, in response to detecting the first gesture: performing an audio playback adjustment operation based on determining that the first gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria that are satisfied when the first gesture includes the first hand being in a first position that is at least a threshold distance from a first body part of a user; and Based on determining that the first gesture does not satisfy the first set of criteria, abandoning the audio playback adjustment operation.

54. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system in communication with one or more input devices, the one or more programs comprising instructions for: detecting, via the one or more input devices, a first gesture performed by a first hand; and In response to detecting the first gesture: performing an audio playback adjustment operation based on determining that the first gesture satisfies a first set of criteria, wherein the first set of criteria includes criteria that are satisfied when the first gesture includes the first hand being in a first position that is at least a threshold distance from a first body part of a user; and Based on determining that the first gesture does not satisfy the first set of criteria, abandoning the audio playback adjustment operation.

55. A method comprising: At a computer system in communication with a display generating component and one or more input devices: detecting input via the one or more input devices while displaying a user interface including a virtual object via the display generation component; and In response to detecting the input: performing a first operation with respect to the first virtual object based on determining that the user's attention is directed toward the first virtual object in conjunction with detecting the input and the input corresponds to a first type of input; performing a second operation with respect to the first virtual object based on determining that the user's attention is directed toward the first virtual object in conjunction with detecting that the input corresponds to a second type of input that is different from the first type of input, wherein the second operation is different from the first operation; Based on determining that the user's attention is directed toward the second virtual object in conjunction with detecting the input and the input corresponds to the first type of input, performing the first operation with respect to the second virtual object, wherein the second virtual object is different from the first virtual object; and Based on determining that the user's attention is directed toward the second virtual object in conjunction with detecting the input and the input corresponds to the second type of input, the first operation is performed with respect to the second virtual object.

56. The method of claim 55, wherein detecting the first type of input comprises detecting that a pinch and release gesture has been performed.

57. A method according to any one of claims 55 to 56, wherein detecting the second type of input comprises detecting a pinch gesture having a duration longer than a predetermined time period.

58. The method of any one of claims 55 to 57, further comprising, in response to detecting the input: Based on determining that the user's attention is directed toward the first virtual object in combination with detecting the input and that the input corresponds to a third type of input different from the first type of input and the second type of input, a third operation is performed relative to the first virtual object, wherein the third operation is different from the first operation and the second operation.

59. The method of claim 58, wherein detecting the third type of input comprises detecting that a multi-pinch gesture has been performed.

60. The method of any one of claims 58 to 59, wherein performing the third operation with respect to the first virtual object comprises performing a system operation.

61. The method of any one of claims 58 to 60, wherein performing the third operation with respect to the first virtual object comprises transitioning the computer system from a first system mode to a second system mode different from the first system mode.

62. The method according to any one of claims 55 to 61, further comprising: In response to detecting the input and based on determining that the user's attention is directed to a portion of the user interface that does not include the second virtual object, performing a fourth operation.

63. The method according to any one of claims 55 to 62, further comprising: When the user interface is displayed: According to determining that the user's attention is directed toward the third virtual object, emphasizing the third virtual object; and According to determining that the user's attention is not directed to the third virtual object, The third virtual object is de-emphasized.

64. A method according to any one of claims 55 to 63, wherein detecting the second type of input causes the computer system to display a system user interface.

65. The method of any one of claims 55 to 64, wherein the system user interface is an application switcher user interface.

66. The method of any one of claims 55 to 65, further comprising: while displaying the system user interface, detecting a second input corresponding to an input of a fourth type; And in response to detecting the second input corresponding to the fourth type of input, performing an operation corresponding to the fourth type of input with respect to the system user interface.

67. The method according to any one of claims 55 to 66, further comprising: In response to detecting the input, a first set of tactile outputs is generated.

68. The method of any one of claims 55 to 67, wherein a wrist-worn wearable device comprises the one or more input devices for detecting the input.

69. The method according to any one of claims 55 to 68, further comprising: In response to detecting the input, the wrist-worn wearable device is caused to generate a second set of tactile outputs.

70. The method of any one of claims 55 to 69, wherein the user interface is an extended reality user interface.

71. A non-transitory computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system that communicates with a display generating component and one or more input devices, the one or more programs comprising instructions for executing a method according to any one of claims 55 to 70.

72. A computer system configured to communicate 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 instructions for executing the method according to any one of claims 55 to 70.

73. A computer system configured to communicate with a display generation component and one or more input devices, the computer system comprising: Means for carrying out the method according to any one of claims 55 to 70.

74. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system in communication with a display generating component and one or more input devices, the one or more programs comprising instructions for performing a method according to any one of claims 55 to 70.

75. A non-transitory 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 instructions for: detecting input via the one or more input devices while displaying a user interface including a virtual object via the display generation component; and In response to detecting the input: performing a first operation with respect to the first virtual object based on determining that the user's attention is directed toward the first virtual object in conjunction with detecting the input and the input corresponds to a first type of input; performing a second operation with respect to the first virtual object based on determining that the user's attention is directed toward the first virtual object in conjunction with detecting that the input corresponds to a second type of input different from the first type of input, wherein the second operation is different from the first operation; performing the first operation with respect to a second virtual object based on determining that the user's attention is directed toward a second virtual object in conjunction with detecting the input and the input corresponds to the first type of input, wherein the second virtual object is different from the first virtual object; and Based on determining that the user's attention is directed toward the second virtual object in conjunction with detecting the input and the input corresponds to the second type of input, the first operation is performed with respect to the second virtual object.

76. A computer system configured to communicate 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: detecting input via the one or more input devices while displaying a user interface including a virtual object via the display generation component; and In response to detecting the input: performing a first operation with respect to the first virtual object based on determining that the user's attention is directed toward the first virtual object in conjunction with detecting the input and the input corresponds to a first type of input; performing a second operation with respect to the first virtual object based on determining that the user's attention is directed toward the first virtual object in conjunction with detecting that the input corresponds to a second type of input that is different from the first type of input, wherein the second operation is different from the first operation; Based on determining that the user's attention is directed toward the second virtual object in conjunction with detecting the input and the input corresponds to the first type of input, performing the first operation with respect to the second virtual object, wherein the second virtual object is different from the first virtual object; and Based on determining that the user's attention is directed toward the second virtual object in conjunction with detecting the input and the input corresponds to the second type of input, the first operation is performed with respect to the second virtual object.

77. A computer system configured to communicate with a display generation component and one or more input devices, the computer system comprising: means for detecting input via the one or more input devices while displaying, via the display generating means, a user interface including a virtual object; as well as In response to detecting the input, a component for: performing a first operation with respect to the first virtual object based on determining that the user's attention is directed toward the first virtual object in conjunction with detecting the input and the input corresponds to a first type of input; performing a second operation with respect to the first virtual object based on determining that the user's attention is directed toward the first virtual object in conjunction with detecting that the input corresponds to a second type of input different from the first type of input, wherein the second operation is different from the first operation; performing the first operation with respect to a second virtual object based on determining that the user's attention is directed toward a second virtual object in conjunction with detecting the input and the input corresponds to the first type of input, wherein the second virtual object is different from the first virtual object; and Based on determining that the user's attention is directed toward the second virtual object in conjunction with detecting the input and the input corresponds to the second type of input, the first operation is performed with respect to the second virtual object.

78. A computer program product comprising 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 instructions for: detecting input via the one or more input devices while displaying a user interface including a virtual object via the display generation component; and In response to detecting the input: performing a first operation with respect to the first virtual object based on determining that the user's attention is directed toward the first virtual object in conjunction with detecting the input and the input corresponds to a first type of input; performing a second operation with respect to the first virtual object based on determining that the user's attention is directed toward the first virtual object in conjunction with detecting that the input corresponds to a second type of input that is different from the first type of input, wherein the second operation is different from the first operation; performing the first operation with respect to a second virtual object based on determining that the user's attention is directed toward a second virtual object in conjunction with detecting the input and the input corresponds to the first type of input, wherein the second virtual object is different from the first virtual object; and Based on determining that the user's attention is directed toward the second virtual object in conjunction with detecting the input and the input corresponds to the second type of input, the first operation is performed with respect to the second virtual object.

Citation Information

Cited By

  • Operation control method and system for lifting dissecting table

    CN120859792A