How to manage duplicate windows and apply visual effects

The system addresses inefficiencies in virtual and augmented reality interactions by modifying virtual object visual splendor based on overlap and spatial location, enhancing user interface efficiency and conserving power through intuitive interaction methods.

JP2026514320APending Publication Date: 2026-05-11APPLE INC
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
APPLE INC
Filing Date
2024-06-04
Publication Date
2026-05-11

Smart Images

  • Figure 2026514320000001_ABST
    Figure 2026514320000001_ABST
Patent Text Reader

Abstract

In some embodiments, the computer system modifies the visual prominence of individual virtual objects in response to detecting a threshold overlap between a first virtual object and a second virtual object. In some embodiments, the computer system modifies the visual prominence of individual virtual objects based on a change in the spatial location of the first virtual object relative to the second virtual object. In some embodiments, the computer system applies visual effects to physical objects, virtual environments, and / or representations of the physical environment. In some embodiments, the computer system modifies the visual prominence of virtual objects relative to a three-dimensional environment based on the display of different types of overlapping objects in the three-dimensional environment. In some embodiments, the computer system modifies the opacity level of the first virtual object overlapping the second virtual object in response to the movement of the first virtual object.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0004]

[0001] (Cross - Reference to Related Applications) This application claims the benefit of U.S. Provisional Patent Application No. 63 / 587,442, filed Oct. 2, 2023; U.S. Provisional Patent Application No. 63 / 515,119, filed Jul. 23, 2023; U.S. Provisional Patent Application No. 63 / 506,128, filed Jun. 4, 2023; and U.S. Provisional Patent Application No. 63 / 506,109, filed Jun. 4, 2023, the contents of which are hereby incorporated by reference in their entirety for all purposes.

[0002] The present invention generally relates to computer systems that provide computer - generated experiences, including, but not limited to, electronic devices that provide virtual and mixed - reality experiences via a display.

Background Art

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

[0006] The above-mentioned drawbacks and other problems associated with the user interface of a computer system are mitigated 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, tablet computer, or handheld device). In some embodiments, the computer system is a personal electronic device (e.g., a wearable electronic device such as a wristwatch or a head-mounted device). In some embodiments, the computer system has a touchpad. In some embodiments, the computer system has one or more cameras. In some embodiments, the computer system has (e.g., includes or communicates with) a display generating component (e.g., a display device such as a head-mounted device (HMD), a display, a projector, a touch-sensitive display (also known as a “touchscreen” or “touchscreen display”), or other devices or components that present visual content to the user that is visible on or in the display generating component itself or generated from the display generating component and is visible elsewhere). In some embodiments, the computer system has one or more eye-tracking components. In some embodiments, the computer system has one or more hand-tracking components. In some embodiments, the computer system has one or more output devices in addition to the display generation components, and the output devices 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, memory, and one or more modules, programs, or instruction sets stored in memory for performing multiple functions.In some embodiments, the user interacts with the GUI (and / or computer system) through stylus and / or finger touch and gestures on a touch-sensitive surface, the GUI as captured by a camera and other motion sensors, or the user's eye and hand movements in space relative to the user's body, and / or voice input as captured by one or more audio input devices. In some embodiments, the functions performed through the interaction optionally include image editing, drawing, presentation, word processing, spreadsheet creation, gameplay, making phone calls, video conferencing, sending emails, instant messaging, training support, digital photography, digital videography, web browsing, digital music playback, note-taking, and / or digital video playback. The executable instructions for performing those functions optionally include temporary computer-readable storage media and / or non-temporary computer-readable storage media, or other computer program products configured to be executed by one or more processors.

[0007] There is a need for electronic devices with improved methods and interfaces for interacting with three-dimensional environments. Such methods and interfaces can complement or replace conventional methods for interacting with three-dimensional environments. Such methods and interfaces reduce the number, degree, and / or type of user input, resulting in a more efficient human-machine interface. In the case of battery-operated computing devices, such methods and interfaces conserve power and increase the interval between battery charges.

[0008] In some embodiments, the computer system modifies the visual splendor of individual virtual objects in response to detecting a threshold overlap between a first virtual object and a second virtual object. In some embodiments, the computer system modifies the visual splendor of individual virtual objects based on a change in the spatial location of the first virtual object relative to the second virtual object. In some embodiments, the computer system applies visual effects to real-world objects in response to detecting pass-through visibility events (e.g., events in which real-world objects become visible through the computer system). In some embodiments, the computer system applies visual effects to the background based on the state of the background. In some embodiments, the computer system applies visual effects associated with virtual objects based on the state of the virtual objects. In some embodiments, the computer system modifies the visual splendor of virtual objects relative to a three-dimensional environment based on the display of different types of overlapping objects in the three-dimensional environment. In some embodiments, the computer system modifies the opacity level of the first virtual object overlapping the second virtual object in response to the movement of the first virtual object.

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

[0010] To better understand the various embodiments described, the following “Modes for Carrying Out the Invention” should be referenced in conjunction with the following drawings, and similar reference numbers throughout the following drawings refer to the corresponding parts.

[0011] [Figure 1A] This block diagram shows the operating environment of a computer system for providing an XR experience, according to several embodiments.

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

[0013] [Figure 2] A block diagram showing a controller of a computer system configured to manage and adjust an XR experience for a user, according to some embodiments. <000​​​​​​​​​​​​​​​​​​​​​​​​​​​​ [Figure 7A1] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7B] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7C] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7D] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7E] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7F] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7G] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7H] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7I] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7J] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7K] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7L] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7M] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7N] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7O] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7P] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7Q]This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7R] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7S] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7T] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7U] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7V] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7W] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7X] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7Y] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7Z] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7AA] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7BB] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7CC] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7DD] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment. [Figure 7EE] This example demonstrates how to change the visual prominence of individual virtual objects within a three-dimensional environment.

[0019] [Figure 8]This flowchart illustrates an exemplary method for changing the visual splendor of individual virtual objects based on the threshold overlap amount between a first virtual object and a second virtual object.

[0020] [Figure 9] This flowchart illustrates an exemplary method for changing the visual prominence of individual virtual objects based on a change in the spatial location of a first virtual object relative to a second virtual object.

[0021] [Figure 10A] This example demonstrates how to apply visual effects to real-world objects. [Figure 10B] This example demonstrates how to apply visual effects to real-world objects. [Figure 10C] This example demonstrates how to apply visual effects to real-world objects. [Figure 10D] This example demonstrates how to apply visual effects to real-world objects. [Figure 10E] This example demonstrates how to apply visual effects to real-world objects. [Figure 10F] This example demonstrates how to apply visual effects to real-world objects. [Figure 10G] This example demonstrates how to apply visual effects to real-world objects. [Figure 10H] This example demonstrates how to apply visual effects to real-world objects. [Figure 10I] This example demonstrates how to apply visual effects to real-world objects. [Figure 10J] This example demonstrates how to apply visual effects to real-world objects. [Figure 10K] This example demonstrates how to apply visual effects to real-world objects. [Figure 10L] This example demonstrates how to apply visual effects to real-world objects. [Figure 10M] This example demonstrates how to apply visual effects to real-world objects. [Figure 10N] This example demonstrates how to apply visual effects to real-world objects. [Figure 10N1] This example demonstrates how to apply visual effects to real-world objects.

[0022] [Figure 11] This flowchart illustrates an exemplary method for applying visual effects to real-world objects.

[0023] [Figure 12A] This example shows how to apply visual effects to the background. [Figure 12B] This example shows how to apply visual effects to the background. [Figure 12C] This example shows how to apply visual effects to the background. [Figure 12D] This example shows how to apply visual effects to the background. [Figure 12E] This example shows how to apply visual effects to the background. [Figure 12F] This example shows how to apply visual effects to the background. [Figure 12G] This example shows how to apply visual effects to the background. [Figure 12H] This example shows how to apply visual effects to the background. [Figure 12I] This example shows how to apply visual effects to the background. [Figure 12J] This example shows how to apply visual effects to the background. [Figure 12K] This example shows how to apply visual effects to the background. [Figure 12L] This example shows how to apply visual effects to the background. [Figure 12M] This example shows how to apply visual effects to the background. [Figure 12N] This example shows how to apply visual effects to the background. [Figure 12O] This example shows how to apply visual effects to the background. [Figure 12P] This example shows how to apply visual effects to the background. [Figure 12Q] This example shows how to apply visual effects to the background. [Figure 12Q1] This example shows how to apply visual effects to the background.

[0024] [Figure 13] This flowchart illustrates an exemplary method for applying visual effects to a background.

[0025] [Figure 14A] This example demonstrates how to apply visual effects based on the state of a virtual object. [Figure 14B] This example demonstrates how to apply visual effects based on the state of a virtual object. [Figure 14C] This example demonstrates how to apply visual effects based on the state of a virtual object. [Figure 14D] This example demonstrates how to apply visual effects based on the state of a virtual object. [Figure 14D1] This example demonstrates how to apply visual effects based on the state of a virtual object. [Figure 14E] This example demonstrates how to apply visual effects based on the state of a virtual object. [Figure 14F] This example demonstrates how to apply visual effects based on the state of a virtual object. [Figure 14G] This example demonstrates how to apply visual effects based on the state of a virtual object. [Figure 14H] This example demonstrates how to apply visual effects based on the state of a virtual object. [Figure 14I] This example demonstrates how to apply visual effects based on the state of a virtual object. [Figure 14J] This example demonstrates how to apply visual effects based on the state of a virtual object. [Figure 14K] This example demonstrates how to apply visual effects based on the state of a virtual object.

[0026] [Figure 15] This flowchart shows how to apply visual effects based on the state of a virtual object.

[0027] [Figure 16A]This document presents examples of computer systems that modify the visual prominence of virtual objects based on the display of different types of overlapping objects in a three-dimensional environment, according to several embodiments. [Figure 16B] This document presents examples of computer systems that modify the visual prominence of virtual objects based on the display of different types of overlapping objects in a three-dimensional environment, according to several embodiments. [Figure 16C] This document presents examples of computer systems that modify the visual prominence of virtual objects based on the display of different types of overlapping objects in a three-dimensional environment, according to several embodiments. [Figure 16D] This document presents examples of computer systems that modify the visual prominence of virtual objects based on the display of different types of overlapping objects in a three-dimensional environment, according to several embodiments. [Figure 16E] This document presents examples of computer systems that modify the visual prominence of virtual objects based on the display of different types of overlapping objects in a three-dimensional environment, according to several embodiments. [Figure 16F] This document presents examples of computer systems that modify the visual prominence of virtual objects based on the display of different types of overlapping objects in a three-dimensional environment, according to several embodiments. [Figure 16G] This document presents examples of computer systems that modify the visual prominence of virtual objects based on the display of different types of overlapping objects in a three-dimensional environment, according to several embodiments. [Figure 16H] This document presents examples of computer systems that modify the visual prominence of virtual objects based on the display of different types of overlapping objects in a three-dimensional environment, according to several embodiments. [Figure 16I] This document presents examples of computer systems that modify the visual prominence of virtual objects based on the display of different types of overlapping objects in a three-dimensional environment, according to several embodiments. [Figure 16J]This document presents examples of computer systems that modify the visual prominence of virtual objects based on the display of different types of overlapping objects in a three-dimensional environment, according to several embodiments. [Figure 16K] This document presents examples of computer systems that modify the visual prominence of virtual objects based on the display of different types of overlapping objects in a three-dimensional environment, according to several embodiments.

[0028] [Figure 17] This flowchart shows a method for changing the visual prominence of a virtual object based on the display of different types of duplicate objects, according to several embodiments.

[0029] [Figure 18A] Examples of computer systems that modify the visual prominence of virtual objects to resolve simulated overlaps with other virtual objects, according to several embodiments, are presented. [Figure 18B] Examples of computer systems that modify the visual prominence of virtual objects to resolve simulated overlaps with other virtual objects, according to several embodiments, are presented. [Figure 18C] Examples of computer systems that modify the visual prominence of virtual objects to resolve simulated overlaps with other virtual objects, according to several embodiments, are presented. [Figure 18D] Examples of computer systems that modify the visual prominence of virtual objects to resolve simulated overlaps with other virtual objects, according to several embodiments, are presented. [Figure 18E] Examples of computer systems that modify the visual prominence of virtual objects to resolve simulated overlaps with other virtual objects, according to several embodiments, are presented. [Figure 18F] Examples of computer systems that modify the visual prominence of virtual objects to resolve simulated overlaps with other virtual objects, according to several embodiments, are presented. [Figure 18G] Examples of computer systems that modify the visual prominence of virtual objects to resolve simulated overlaps with other virtual objects, according to several embodiments, are presented. [Figure 18H] Examples of computer systems that modify the visual prominence of virtual objects to resolve simulated overlaps with other virtual objects, according to several embodiments, are presented. [Figure 18I] Examples of computer systems that modify the visual prominence of virtual objects to resolve simulated overlaps with other virtual objects, according to several embodiments, are presented. [Figure 18J] Examples of computer systems that modify the visual prominence of virtual objects to resolve simulated overlaps with other virtual objects, according to several embodiments, are presented. [Figure 18K] Examples of computer systems that modify the visual prominence of virtual objects to resolve simulated overlaps with other virtual objects, according to several embodiments, are presented. [Figure 18L] Examples of computer systems that modify the visual prominence of virtual objects to resolve simulated overlaps with other virtual objects, according to several embodiments, are presented. [Figure 18M] Examples of computer systems that modify the visual prominence of virtual objects to resolve simulated overlaps with other virtual objects, according to several embodiments, are presented. [Figure 18N] Examples of computer systems that modify the visual prominence of virtual objects to resolve simulated overlaps with other virtual objects, according to several embodiments, are presented. [Figure 18O] Examples of computer systems that modify the visual prominence of virtual objects to resolve simulated overlaps with other virtual objects, according to several embodiments, are presented. [Figure 18P]Examples of computer systems that modify the visual prominence of virtual objects to resolve simulated overlaps with other virtual objects, according to several embodiments, are presented. [Figure 18Q] Examples of computer systems that modify the visual prominence of virtual objects to resolve simulated overlaps with other virtual objects, according to several embodiments, are presented. [Figure 18R] Examples of computer systems that modify the visual prominence of virtual objects to resolve simulated overlaps with other virtual objects, according to several embodiments, are presented. [Figure 18S] Examples of computer systems that modify the visual prominence of virtual objects to resolve simulated overlaps with other virtual objects, according to several embodiments, are presented. [Figure 18T] Examples of computer systems that modify the visual prominence of virtual objects to resolve simulated overlaps with other virtual objects, according to several embodiments, are presented.

[0030] [Figure 19] This flowchart shows how, according to several embodiments, the visual prominence of a virtual object can be modified to resolve simulated overlap with another virtual object. [Modes for carrying out the invention]

[0031] This disclosure relates to user interfaces that provide users with Extended Reality (XR) experiences, in several embodiments.

[0032] The systems, methods, and GUIs described herein improve user interface interactions with virtual / augmented reality environments in multiple ways.

[0033] In some embodiments, the computer system modifies the visual prominence of individual virtual objects in a three-dimensional environment in response to detecting that at least a portion of a first virtual object overlaps a second virtual object by a threshold amount from the user's current viewpoint.

[0034] In some embodiments, the computer system reduces the visual prominence of parts of individual virtual objects and modifies the visual prominence of parts of individual virtual objects based on changes in the spatial location of the first virtual object relative to a second virtual object while the first virtual object is moving in a three-dimensional environment.

[0035] In some embodiments, the computer system applies visual effects, such as dimming or tinting effects, to real-world objects in response to detecting pass-through visibility events that make real-world objects visible within a three-dimensional environment presented by the computer system.

[0036] In some embodiments, while displaying virtual content in a three-dimensional environment and while the background (e.g., a background optionally including representations of the virtual and / or physical environments) is visible in the three-dimensional environment, the computer system applies (or refrains from applying) visual effects to the background based on the state of the background, such as a state associated with the time setting.

[0037] In some embodiments, the computer system applies (or refrains from applying) visual effects associated with a virtual object (e.g., a virtual application window) based on whether the virtual object is active or inactive.

[0038] In some embodiments, the computer system changes the visual prominence, such as changing the brightness and / or transparency of a virtual object, in response to detecting an event that causes a user interface element to be displayed superimposed on a virtual object in a three-dimensional environment.

[0039] In some embodiments, the computer system changes the opacity level of the first virtual object that overlaps the second virtual object in response to the movement of the first virtual object.

[0040] Figures 1A to 6 provide a description of exemplary computer systems for providing users with an XR experience (as described below with respect to methods 800, 900, 1100, 1300, and / or 1500). Figures 7A to 7EE show examples of computer systems, by several embodiments, for changing the visual splendor of individual virtual objects relative to a three-dimensional environment. Figure 8 is a flowchart, by several embodiments, for changing the visual splendor of individual virtual objects relative to a three-dimensional environment in response to detecting a threshold overlap between a first virtual object and a second virtual object in the three-dimensional environment. The user interfaces in Figures 7A to 7EE are used to illustrate the process in Figure 8. Figure 9 is a flowchart, by several embodiments, for changing the visual splendor of individual virtual objects based on a change in the spatial location of a first virtual object relative to a second virtual object in a three-dimensional environment. The user interfaces in Figures 7A to 7EE are used to illustrate the process in Figure 9. Figures 10A to 10N show exemplary techniques, by several embodiments, for applying visual effects to real-world objects. Figure 11 is a flowchart illustrating various embodiments of methods for applying visual effects to real-world objects. The user interfaces in Figures 10A to 10F are used to illustrate the process in Figure 11. Figures 12A to 12Q show exemplary techniques for applying visual effects to a background in several embodiments. Figure 13 is a flowchart illustrating various embodiments of methods for applying visual effects to a background. The user interfaces in Figures 12A to 12Q are used to illustrate the process in Figure 13. Figures 14A to 14K show exemplary techniques for applying visual effects based on the state of a virtual object in several embodiments. Figure 15 is a flowchart illustrating various embodiments of methods for applying visual effects based on the state of a virtual object. The user interfaces in Figures 14A to 14K are used to illustrate the process in Figure 15.Figures 16A to 16K illustrate exemplary techniques for changing the visual splendor of a virtual object based on the display of different types of overlapping objects in a three-dimensional environment, according to various embodiments. Figure 17 is a flowchart of a method for changing the visual splendor of a virtual object based on the display of different types of overlapping objects in a three-dimensional environment, according to various embodiments, and the user interfaces in Figures 16A to 16K are used to illustrate the process in Figure 17. Figures 18A to 18T illustrate exemplary techniques for a computer system to change the visual splendor of a virtual object to resolve simulated overlap with another virtual object, according to several embodiments. Figure 19 is a flowchart showing a method for changing the visual splendor of a virtual object to resolve simulated overlap with another virtual object, according to several embodiments. The user interfaces in Figures 18A to 18T are used to illustrate the process in Figure 19.

[0041] The processes described below enhance the usability of the device and make the user device interface more efficient (for example, by helping the user provide appropriate input and reducing user errors when operating / interacting with the device) through various technologies, including providing the user with improved visual feedback, reducing the number of inputs required to perform actions, providing additional control options without cluttering the user interface with additional displayed controls, performing actions without requiring further user input when a set of conditions is met, improving privacy and / or security, providing a more diverse, detailed, and / or realistic user experience while saving memory space, and / or additional technologies. These technologies also reduce power consumption and improve the battery life of the device by enabling the user to use the device more quickly and efficiently. Saving battery power, and therefore weight, improves the ergonomics of the device. These technologies also enable real-time communication, allow the use of fewer and / or less accurate sensors, resulting in more compact, lighter, and less expensive devices, and enabling the device to be used in a variety of lighting conditions. These technologies reduce energy consumption and thereby reduce the heat emitted by the device, which is especially important for wearable devices that can become uncomfortable for the user to wear if they generate excessive heat, even if the device is well within the operating parameters for its components.

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

[0043] In some embodiments, as shown in Figure 1A, the XR experience is provided to the user via an operating environment 100 which includes a computer system 101. The computer system 101 includes a controller 110 (e.g., a processor of a portable electronic device or remote server), display generation components 120 (e.g., a head-mounted device (HMD), a display, a projector, a touchscreen, 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 location sensor, a motion sensor, a velocity sensor, etc.), and optionally one or more peripheral devices 195 (e.g., a home appliance, a wearable device, etc.). In some embodiments, one or more of the input device 125, output device 155, sensor 190, and peripheral device 195 are integrated with the display generation component 120 (for example, within a head-mounted device or handheld device).

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

[0045] Physical Environment: The physical environment refers to the physical world that people can perceive and / or interact with without the help of electronic systems. Examples of physical environments, such as a physical park, include physical objects such as physical trees, physical buildings, and physical people. People can directly perceive and / or interact with the physical environment through their senses of sight, touch, hearing, taste, and smell.

[0046] Extended reality: In contrast, an extended reality (XR) environment refers to a fully or partially simulated environment that people perceive and / or interact with through an electronic system. In XR, a subset of a person's bodily movements or their representation is tracked, and accordingly, one or more properties of one or more virtual objects simulated within the XR environment are adjusted to behave according to at least one law of physics. For example, an XR system may detect a person's head rotation and, accordingly, adjust the graphical content and sound field presented to the person in a similar way to how such views and sounds would change in a physical environment. In some situations (e.g., for reasons of accessibility), adjustments to the properties of one or more virtual objects within the XR environment may be made in response to a representation of physical movement (e.g., a voice command). A person may perceive and / or interact with an XR object using any one of their senses, including sight, sound, touch, taste, and smell. For example, a person can perceive and / or interact with audio objects that create a 3D or spatial audio environment, providing the perception of point audio sources in 3D space. In another example, audio objects may enable audio transparency, selectively incorporating ambient sounds from the physical environment, with or without computer-generated audio. In some XR environments, a person may perceive and / or interact with only audio objects.

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

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

[0049] Mixed Reality: A mixed reality (MR) environment is a simulated environment designed to incorporate sensory input or its representation from a physical environment, in addition to including computer-generated sensory input (e.g., virtual objects), in contrast to a virtual reality (VR) environment designed to rely entirely on computer-generated sensory input. On a virtual continuum, a mixed reality environment is any location between, but not encompassing, the complete physical environment at one end and the virtual reality environment at the other. In some MR environments, computer-generated sensory input may respond to changes in sensory input from the physical environment. Also, some electronic systems for presenting an MR environment may track location and / or orientation relative to the physical environment to enable virtual objects to interact with real objects (i.e., physical articles or their representations from the physical environment). For example, the system may take movement into account so that a virtual tree appears stationary relative to the physical ground.

[0050] Examples of mixed reality include augmented reality and augmented virtual reality.

[0051] Augmented Reality: An augmented reality (AR) environment refers to a simulated environment in which one or more virtual objects are superimposed on or onto a physical environment. For example, an electronic system for presenting an AR environment may have a transparent or translucent display that allows a person to directly view the physical environment. The system may also be configured to present virtual objects on the transparent or translucent display, thereby allowing a person to use the system to perceive the virtual objects superimposed on the physical environment. Alternatively, the system may have an opaque display and one or more imaging sensors that capture an image or video of the physical environment, which is a representation of the physical environment. The system composites the image or video with the virtual objects and presents the composite on the opaque display. A person uses this system to perceive the virtual objects superimposed on the physical environment by indirectly viewing the physical environment through the image or video of the physical environment. As used herein, a video of the physical environment displayed on an opaque display is referred to as “pass-through 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 the opaque display. Alternatively, the system may have a projection system that projects virtual objects, for example, as holograms, into or onto the physical environment, so that a person can use the system to perceive the virtual objects superimposed on the physical environment. An augmented reality environment also refers to a simulated environment in which the representation of the physical environment is transformed by computer-generated sensory information. For example, when providing pass-through video, the system may transform one or more sensor images to plane a selected perspective (e.g., viewpoint) different from the perspective captured by the imaging sensor. As another example, the representation of the physical environment may be transformed by graphically modifying (e.g., enlarging) a portion of it, so that the modified portion is a non-photorealistic altered version of the original captured image. As yet another example, the representation of the physical environment may be transformed by graphically removing or obscuring a portion of it.

[0052] Augmented Virtuality (AV) refers to a simulated environment in which a virtual or computer-generated environment incorporates one or more sensory inputs from a physical environment. These sensory inputs may be representations of one or more characteristics of the physical environment. For example, an AV park might have virtual trees and buildings, but people with faces might be realistically reproduced from images of real people. Another example is that a virtual object might adopt the shape or color of a physical article captured by one or more imaging sensors. A further example is that a virtual object might adopt shadows that correspond to the position of the sun in the physical environment.

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

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

[0055] Viewpoint-locked virtual objects: A virtual object is viewpoint-locked when the computer system displays the virtual object in the same location and / or position within the user's view, 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 in the forward direction of the user's head (e.g., the user's viewpoint is at least a portion of the user's field of view when the user is looking straight ahead). Thus, the user's viewpoint remains fixed even if the user's gaze moves, without moving the user's head. In embodiments where the computer system has a display-generating component (e.g., a display screen) that can be repositioned relative to the user's head, the user's viewpoint is the augmented reality view presented to the user on the display-generating component of the computer system. For example, a viewpoint-locked virtual object 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) will continue to be displayed in the upper-left corner of the user's viewpoint even if the user's viewpoint changes to a second orientation (e.g., the user's head is facing west). In other words, the location and / or position in which a viewpoint-locked virtual object is displayed from 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, so that the virtual object is also referred to as a “head-locked virtual object”.

[0056] Environment-Locked Virtual Objects: A virtual object is environment-locked (or "world-locked") when a computer system displays it at a location and / or position in the user's viewpoint that is based on (e.g., selected by reference to and / or fixed to) a location and / or object in a three-dimensional environment (e.g., a physical or virtual environment). As the user's viewpoint shifts, the location and / or object in the environment relative to the user's viewpoint changes, and as a result, the environment-locked virtual object will appear at a different location and / or position in the user's viewpoint. For example, an environment-locked virtual object locked to a tree directly in front of the user will appear centered in the user's viewpoint. If the user's viewpoint shifts to the right (e.g., the user's head is turned to the right) and the tree becomes left-leaning in the user's viewpoint (e.g., the tree's position in the user's viewpoint shifts), the environment-locked virtual object locked to the tree will appear left-leaning in the user's viewpoint. In other words, the location and / or position in which an environment-locked virtual object is displayed in the user's viewpoint depends on the location and / or object's position and / or orientation in the environment to which the virtual object is locked. In some embodiments, the computer system uses a stationary reference frame (e.g., a fixed location in the physical environment and / or a coordinate system fixed to an object) to determine the position in which the environment-locked virtual object is displayed from the user's viewpoint. The environment-locked virtual object can be locked to a stationary part of the environment (e.g., a floor, wall, table, or other stationary object) or to a moving part of the environment (e.g., a vehicle, animal, person, or a representation of a part of the user's body that moves independently of the user's viewpoint, such as the user's hands, wrists, arms, or feet), so that the virtual object moves as the viewpoint or the part of the environment moves in order 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 delayed tracking behavior, reducing or delaying its movement in response to the movement of a reference point that the virtual object is following. In some embodiments, when exhibiting delayed tracking behavior, the computer system detects movement of the reference point that the virtual object is following (e.g., a part of the environment, a viewpoint, or a point fixed to the viewpoint, such as a point between 5 and 300 cm from the viewpoint) and intentionally delays the movement of the virtual object. For example, when the reference point (e.g., a part of the environment or the viewpoint) moves at a first velocity, the virtual object is moved by the device so as to remain locked to the reference point, but at a second velocity slower than the first velocity (e.g., the virtual object begins to catch up to the reference point until the reference point stops or slows down). In some embodiments, when a virtual object exhibits delayed tracking behavior, the device ignores small movements of the reference point (e.g., ignoring movements of the reference point that are below a threshold movement amount, such as a movement of 0 to 5 degrees or a movement of 0 to 50 cm). For example, when the reference point (e.g., the part of the environment or viewpoint from which the virtual object is locked) moves by a first amount, the distance between the reference point and the virtual object increases (e.g., because the virtual object is displayed to maintain a fixed or substantially fixed position relative to a different viewpoint or part of the environment from which the virtual object is locked), and when the reference point (e.g., the part of the environment or viewpoint from which the virtual object is locked) moves by a second amount greater than the first amount, the distance between the reference point and the virtual object first increases (e.g., because the virtual object is displayed to maintain a fixed or substantially fixed position relative to a different viewpoint or part of the environment from which the virtual object is locked), and then decreases as the amount of movement of the reference point increases beyond a threshold (e.g., a "delayed tracking" threshold) as the virtual object is moved by the computer system to maintain a fixed or substantially fixed position relative to the reference point.In some embodiments, a virtual object that maintains a substantially fixed position with respect to a reference point includes the virtual object being displayed within a threshold distance (e.g., 1, 2, 3, 5, 15, 20, 50 cm) of the reference point in one or more dimensions (e.g., above / below, left / right, and / or forward / behind the position of the reference point).

[0058] Hardware: There are many different types of electronic systems that enable a person to perceive and / or interact with various XR environments. Examples include head-mounted systems, projection-based systems, head-up displays (HUDs), vehicle windshields with integrated display capabilities, windows with integrated display capabilities, displays formed as lenses designed to be positioned over a person's eyes (e.g., contact lenses), headphones / earphones, speaker arrays, input systems (e.g., wearable or handheld controllers with or without haptic feedback), smartphones, tablets, and desktop / laptop computers. A head-mounted system may have one or more 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 videos of the physical environment and / or one or more microphones for capturing sounds of the physical environment. A head-mounted system may have a transparent or translucent display instead of an opaque display. A transparent or translucent display may have a medium through which light representing an image is directed to a person's eye. The display may utilize digital light projection, OLED, LED, uLED, liquid crystal on silicon, laser scanning light source, or any combination of these technologies. The medium may be an optical waveguide, a holographic medium, an optical coupler, an optical reflector, or any combination thereof. In one embodiment, the transparent or translucent display may be configured to be selectively opaque. The projection-based system may employ retinal projection technology to project a graphical image onto a person's retina. The projection system may also be configured to project virtual objects into the physical environment, for example, as a hologram or onto a physical surface. In some embodiments, the controller 110 is configured to manage and adjust the XR experience for the user.In some embodiments, the controller 110 includes a preferred combination of software, firmware, and / or hardware. The controller 110 is described in more detail below with reference to Figure 2. In some embodiments, the controller 110 is a computing device that is local or remote to the scene 105 (e.g., the physical environment). For example, the controller 110 is a local server located within the scene 105. In another example, the controller 110 is a remote server located outside the scene 105 (e.g., a cloud server, a central server, etc.). In some embodiments, the controller 110 is communicably coupled to a display generation component 120 (e.g., an HMD, display, projector, touchscreen, etc.) via one or more wired or wireless communication channels 144 (e.g., Bluetooth, IEEE 802.11x, IEEE 802.16x, IEEE 802.3x, etc.). In another example, the controller 110 is contained within a housing (e.g., a physical housing) of one or more of the display generation components 120 (e.g., a portable electronic device including a display and one or more processors), one or more of the input devices 125, one or more of the output devices 155, one or more of the sensors 190, and / or peripheral devices 195, or shares the same physical housing or support structure as one or more of the above.

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

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

[0061] In some embodiments, the display generation component is mounted on a part of the user's body (e.g., their head or hand). Thus, 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 smartphone or tablet) configured to present XR content, and the user holds the device, which has a display directed towards the user's field of view and a camera directed towards scene 105. In some embodiments, the handheld device is optionally placed in a housing mounted on the user's head. In some embodiments, the handheld device is optionally placed on a support in front of the user (e.g., a tripod). In some embodiments, the display generation component 120 is an XR chamber, housing, or room configured to present XR content when the user is not mounting or holding 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 interaction with XR content triggered based on interaction occurring in the space in front of a handheld or tripod-mounted device may be implemented similarly to an HMD where the interaction occurs in the space in front of the HMD and the XR content response is displayed through the HMD. Similarly, a user interface showing interaction with XR content triggered based on the movement of a handheld or tripod-mounted device relative to a physical environment (e.g., Scene 105 or a part of the user's body (e.g., the user's eyes, head, or hands)) may be implemented similarly to an HMD where the movement is triggered by the movement of the HMD relative to a physical environment (e.g., Scene 105 or a part of the user's body (e.g., the user's eyes, head, or hands)).

[0062] While relevant features of the operating environment 100 are shown in Figure 1A, those skilled in the art will understand from this disclosure that various other features have been omitted for brevity so as not to obscure more appropriate embodiments of the exemplary embodiments disclosed herein.

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

[0064] Figure 1B shows front, top, and perspective views of an example of a head-mountable display (HMD) device 1-100, which is worn by a user and configured to provide a virtual and augmented / mixed reality (VR / AR) experience. The HMD 1-100 may include a display unit 1-102 or assembly, an electronic strap assembly 1-104 connected to and extending from the display unit 1-102, and a band assembly 1-106 fixed to the electronic strap assembly 1-104 at either end. The electronic strap assembly 1-104 and the band 1-106 may be part of a retaining assembly configured to wrap around the user's head to hold the display unit 1-102 against the user's face.

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

[0066] In at least one example, the fastening mechanism includes a first electronic strap 1-105a, which includes a first proximal end 1-134 coupled to a housing 1-150 of the display unit 1-102, for example, and a first distal end 1-136 opposite the first proximal end 1-134. The fastening mechanism may also include a second electronic strap 1-105b, which includes a second proximal end 1-138 coupled to the housing 1-150 of the display unit 1-102, and a second distal end 1-140 opposite the second proximal end 1-138. The fastening mechanism may also include a first band 1-116 having a first end 1-142 coupled to a first distal end 1-136 and a second end 1-144 coupled to a second distal end 1-140, and a second band 1-117 extending between the first electronic strap 1-105a and the second electronic strap 1-105b. The straps 1-105a and 1-105b and the band 1-116 may be connected via a connecting mechanism or assembly 1-114. In at least one example, the second band 1-117 includes a first end 1-146 coupled to a first electron strap 1-105a between a first proximal end 1-134 and a first distal end 1-136, and a second end 1-148 coupled to a second electron strap 1-105b between a second proximal end 1-138 and a second distal end 1-140.

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

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

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

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

[0071] Figure 1C shows a rear perspective view of HMD1-100. HMD1-100 may include an optical seal 1-110 extending rearward from the housing 1-150 of the display assembly 1-108 and around the outer periphery of the housing 1-150, as shown. The optical seal 1-110 may be configured to extend from the housing 1-150 to the user's face around the user's eyes to block external light from being visible. In one example, HMD1-100 may include first and second display assemblies 1-120a, 1-120b disposed in or within a rearward-facing second opening 1-154 defined by the housing 1-150 and / or disposed within the internal volume of the housing 1-150 and configured to project light through the second opening 1-154. In at least one example, each display assembly 1-120a-b may include respective display screens 1-122a, 1-122b configured to project light backward through a second opening 1-154 toward the user's eyes.

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

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

[0074] Figure 1D shows an exploded view of an example of HMD1-200, which includes various parts or components separated according to modularity and the selective coupling of their components. For example, HMD1-200 may include a band 1-216 that can be selectively coupled to first and second electronic straps 1-205a, 1-205b. The first fastening strap 1-205a may include a first electronic component 1-212a, and the second fastening strap 1-205b may include a second electronic component 1-212b. In at least one example, the first and second straps 1-205a and 1-205b may be detachably coupled to a display unit 1-202.

[0075] In addition, the HMD1-200 may include an optical seal 1-210 configured to be detachably coupled to a display unit 1-202. The HMD1-200 may also include a lens 1-218 that can be detachably coupled to the display unit 1-202, for example, on first and second display assemblies including a display screen. The lens 1-218 may include a customized prescription lens configured for vision correction. As stated, each component shown in the exploded view of Figure 1D and described above may be detachably coupled, mounted, remounted, and replaced in order to update or replace parts for different users. For example, bands such as band 1-216, optical seals such as optical seal 1-210, lenses such as lens 1-218, and electronic straps such as straps 1-205a~b may be replaced on a user-by-user basis so that these components are customized to fit and correspond to individual users of the HMD1-200.

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

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

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

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

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

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

[0082] Various components, systems, and assemblies shown in the exploded view of Figure 1F are described in more detail herein with reference to Figures 1B to 1E and subsequent figures referenced herein. Display units 1-406 shown in Figure 1F may be assembled and integrated with fastening mechanisms shown in Figures 1B to 1E, which include other components such as electronic straps, bands, and optical seals, and connecting assemblies.

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

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

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

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

[0087] In at least one example, the shroud 3-104 can define one or more aperture transparent portions 3-120 through which a sensor can send and receive signals. In one example, portion 3-120 is an aperture through which a sensor can extend or send and receive signals. In one example, portion 3-120 is a transparent portion, or a portion more transparent than the translucent or opaque portion around the shroud, through which the sensor can send and receive signals through the shroud and through the transparent cover 3-102. In one example, the sensor may include a camera, an IR sensor, a LUX sensor, or any other visual or non-visual environment sensor of the HMD device.

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

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

[0090] Figure 1I shows a portion of the HMD device 6-100, including the front transparent cover 6-104 and the sensor system 6-102. The sensor system 6-102 may include multiple different sensors, emitters, and receivers, including a camera, IR sensor, and projector. The transparent cover 6-104 is shown in front of the sensor system 6-102 to show the relative positions of the various sensors and emitters and the orientation of each sensor / emitter in the system 6-102. As used herein, “lateral,” “side,” “lateral,” “horizontal,” and other similar terms refer to orientation or direction as indicated by the X-axis shown in Figure 1J. Terms such as “vertical,” “up,” “down,” and similar terms refer to orientation or direction as indicated by the Z-axis shown in Figure 1J. Terms such as “forward,” “backward,” “front,” “rear,” and similar terms refer to orientation or direction as indicated by the Y-axis shown in Figure 1J.

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

[0092] As described elsewhere in this specification, the HMD device 6-100 may include one or more controllers, including processors, for electrically coupling the various sensors and emitters of the sensor system 6-102 to one or more motherboards, processing units, and other electronic devices such as display screens. In addition, as will be shown in more detail below with reference to other figures, the various sensors, emitters, and other components of the sensor system 6-102 may be coupled to various structural frame members, brackets, etc. of the HMD device 6-100, which are not shown in Figure 1I. Figure 1I shows components of the sensor system 6-102 that are not attached to and electrically coupled from other components, for the sake of clarity as an example.

[0093] In at least one example, the device may include one or more controllers having processors configured to execute instructions stored on memory components electrically coupled to the processors. The instructions may include, or be executed by, one or more algorithms for self-correcting the angles and positions of various cameras described herein over time with use as the initial position, angle, or orientation of the cameras is impacted or deformed due to an unintended fall event or other event.

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

[0095] In at least one example, the sensor system 6-102 may include a first depth sensor 6-108 that is generally oriented forward in the Y direction. In at least one example, the first depth sensor 6-108 can be used for reconstructing the environment and objects, as well as tracking the user's hands and body. In at least one example, the sensor system 6-102 may include a second depth sensor 6-110 that is centrally positioned along the width of the HMD device 6-100 (for example, along the X axis). For example, the second depth sensor 6-110 can be positioned to align with the central bridge or feature above the user's nose when the HMD 6-100 is worn. In at least one example, the second depth sensor 6-110 can be used for reconstructing the environment and objects, as well as tracking the hands and body. In at least one example, the second depth sensor may include a LIDAR sensor.

[0096] In at least one example, the sensor system 6-102 may include a generally forward-facing depth projector 6-112 to project electromagnetic waves, for example, in the form of a predetermined pattern of light dots, into and within the field of view of the user and / or scene camera 6-106, or into and within the field of view including and beyond the field of view of the user and / or scene camera 6-106. In at least one example, the depth projector may project electromagnetic waves of light in the form of a dot light pattern that is reflected from objects and returned to the aforementioned depth sensors, including depth sensors 6-108, 6-110. In at least one example, the depth projector 6-112 may be used for environment and object reconstruction and hand and body tracking.

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

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

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

[0100] In at least one example, the sensor system 6-102 may include multiple eye-tracking and gaze-tracking sensors for determining the user's eye identification information, status, and gaze direction during and / or before use. In at least one example, the eye / gaze-tracking sensor may include nasal eye cameras 6-120 positioned on either side of the user's nose and adjacent to the user's nose when the HMD device 6-100 is worn. The eye / gaze sensor may also include lower eye cameras 6-122 positioned below each user's eye for capturing images of the eye for face avatar detection and creation, gaze tracking, and iris recognition functions.

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

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

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

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

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

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

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

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

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

[0110] Figure 1L shows a bottom view of an example of the HMD 6-400, including the front display / cover assembly 6-404 and the sensor system 6-402. The sensor system 6-402 may be similar to other sensor systems described above and elsewhere in this specification, including referring to Figures 1I to 1K. In at least one example, the jaw camera 6-416 may be oriented downward to capture an image of the user's lower facial features. In one example, the jaw camera 6-416 may be directly coupled to the frame or housing 6-430, or to one or more internal brackets directly coupled to the illustrated frame or housing 6-430. The frame or housing 6-430 may include one or more apertures / openings 6-415 from which the jaw camera 6-416 can send and receive signals.

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

[0112] Figure 1M shows a rear perspective view of the interpupillary distance (IPD) adjustment system 11.1.1-102, which includes first and second optical modules 11.1.1-104a-b that are slidably engaged / coupled to the respective guide rods 11.1.1-108a-b and motors 11.1.1-110a-b of the left and right adjustment subsystems 11.1.1-106a-b. The IPD adjustment system 11.1.1-102 may include buttons 11.1.1-114 that are coupled to the bracket 11.1.1-112 and communicate electrically with the motors 11.1.1-110a-b. In at least one example, the buttons 11.1.1-114 can electrically communicate with the first and second motors 11.1.1-110a~b via a processor or other circuit component to activate the first and second motors 11.1.1-110a~b and change the positions of the first and second optical modules 11.1.1-104a~b relative to each other.

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

[0114] In one example, the user can operate buttons 11.1.1-114 to trigger automatic position adjustment of the first and second optical modules 11.1.1-104a~b. In another example, the user can operate buttons 11.1.1-114 to trigger manual adjustment, for example, by rotating buttons 11.1.1-114 in one or the other direction, so that the optical modules 11.1.1-104a~b move further away or closer until the user visually matches their IPD. In another example, the manual adjustment is communicated electronically via one or more circuits, and power for the movement of the optical modules 11.1.1-104a~b via motors 11.1.1-110a~b is provided by a power supply. In yet another example, the adjustment and movement of the optical modules 11.1.1-104a~b via the operation of buttons 11.1.1-114 is mechanically actuated via the movement of buttons 11.1.1-114.

[0115] Any of the features, components, and / or parts shown in Figure 1M, including their arrangement and configuration, may be included, individually or in any combination, in any other example of devices, features, components, and parts shown in any other figures shown and described herein. The same applies to any of the features, components, and / or parts shown in Figure 1M, including their arrangement and configuration, which may be shown and described, individually or in any combination, with reference to any other figures shown and described herein.

[0116] Figure 1N shows a partial front perspective view of the HMD 11.1.2-100, including an outer structural frame 11.1.2-102 and an inner or intermediate structural frame 11.1.2-104 that define the first and second apertures 11.1.2-106a and 11.1.2-106b. Views of apertures 11.1.2-106a-b may be obstructed by one or more other components of the HMD 11.1.2-100 coupled to the inner frame 11.1.2-104 and / or the outer frame 11.1.2-102, as shown in the figure; therefore, apertures 11.1.2-106a-b are shown as dotted lines in Figure 1N. In at least one example, the HMD 11.1.2-100 may include a first mounting bracket 11.1.2-108 coupled to the inner frame 11.1.2-104. In at least one example, the mounting bracket 11.1.2-108 is coupled to the inner frame 11.1.2-104 between the first and second apertures 11.1.2-106a and 11.1.2-106b.

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

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

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

[0120] In at least one example, the HMD 11.1.2-100 may include one or more components coupled to the mounting bracket 11.1.2-108. In one example, the components include a plurality of sensors 11.1.2-110a~f. Each of the plurality of sensors 11.1.2-110a~f may include various types of sensors, such as cameras and IR sensors. In some examples, one or more of the sensors 11.1.2-110a~f may be used for object recognition in three-dimensional space, such that it is important to maintain the precise relative positions of two or more of the plurality of sensors 11.1.2-110a~f. The cantilevered nature of the mounting bracket 11.1.2-108 can protect the sensors 11.1.2-110a~f from damage and displacement in the event of an accidental drop by the user. Since sensors 11.1.2-110a~f are cantilevered on arms 11.1.2-112 and 11.1.2-114 of mounting bracket 11.1.2-108, stresses and deformations in the inner and / or outer frames 11.1.2-104 and 11.1.2-102 are not transmitted to the cantilever arms 11.1.2-112 and 11.1.2-114, and therefore do not affect the relative positioning of sensors 11.1.2-110a~f coupled to / mounted on mounting bracket 11.1.2-108.

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

[0122] Figure 10 shows an example of an optical module 11.3.2-100 for use in electronic devices such as HMDs, including the HDM devices described herein. As shown in one or more other examples described herein, the optical module 11.3.2-100 may be one of two optical modules in an HMD, each optical module being positioned to project light toward the user's eye. In this way, the first optical module can project light toward the user's first eye via a display screen, and the second optical module of the same device can project light toward the user's second eye via another display screen.

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

[0124] In one example, the optical module 11.3.2-100 may include one or more cameras 11.3.2-106 coupled to the housing 11.3.2-102. The cameras 11.3.2-106 may be positioned relative to the display 11.3.2-104 and the housing 11.3.2-102 so that the cameras 11.3.2-106 are configured to capture one or more images of the user's eyes while in use. In at least one example, the optical module 11.3.2-100 may also include a light strip 11.3.2-108 surrounding the display 11.3.2-104. In one example, the light strip 11.3.2-108 is positioned between the display 11.3.2-104 and the cameras 11.3.2-106. The light strip 11.3.2-108 may include multiple lights 11.3.2-110. Multiple lights may include one or more light-emitting diodes (LEDs) or other lights configured to project light toward the user's eyes when the HMD is worn. Individual lights 11.3.2-110 of the light strip 11.3.2-108 can be spaced apart around the strip 11.3.2-108 and thus can be spaced uniformly or unevenly around the display 11.3.2-104 at various locations on the strip 11.3.2-108 and around the display 11.3.2-104.

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

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

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

[0128] Figure 1P shows a cross-sectional view of an example of an optical module 11.3.2-200, which includes a housing 11.3.2-202, a display assembly 11.3.2-204 coupled to the housing 11.3.2-202, and a lens 11.3.2-216 coupled to the housing 11.3.2-202. In at least one example, the housing 11.3.2-202 defines a first aperture or channel 11.3.2-212 and a second aperture or channel 11.3.2-214. Channels 11.3.2-212 and 11.3.2-214 may be configured to slidably engage with the respective rails or guide rods of the HMD device to allow the optical module 11.3.2-200 to adjust its position relative to the user's eyes to match the user's interpupillary distance (IPD). The housing 11.3.2-202 can slidably engage with the guide rod to fix the optical module 11.3.2-200 in place within the HMD.

[0129] In at least one example, the optical module 11.3.2-200 may also include a lens 11.3.2-216 coupled to the housing 11.3.2-202 and positioned between the display assembly 11.3.2-204 and the user's eyes when the HMD is worn. The lens 11.3.2-216 may be configured to direct light from the display assembly 11.3.2-204 to the user's eyes. In at least one example, the lens 11.3.2-216 may be part of a lens assembly that includes a corrective lens detachably attached to the optical module 11.3.2-200. In at least one example, lens 11.3.2-216 is positioned above light strip 11.3.2-208 and one or more eye-tracking cameras 11.3.2-206, so that the cameras 11.3.2-206 are configured to capture an image of the user's eye through lens 11.3.2-216, and light strip 11.3.2-208 includes a light configured to project light onto the user's eye through lens 11.3.2-216 during use.

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

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

[0132] In some embodiments, one or more communication buses 204 include circuits for interconnecting and controlling communication between system components. In some embodiments, one or more I / O devices 206 include at least one of the following: a keyboard, mouse, touchpad, joystick, one or more microphones, one or more speakers, one or more image sensors, one or more displays, etc.

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

[0134] The operating system 230 handles various basic system services and includes instructions for performing hardware-dependent tasks. In some embodiments, the XR experience module 240 is configured to manage and coordinate one or more XR experiences for one or more users (e.g., a single XR experience for one or more users, or multiple XR experiences for each group 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 transmission unit 248.

[0135] In some embodiments, the data acquisition unit 241 is configured to acquire data (e.g., presentation data, interaction data, sensor data, location data, etc.) from at least the display generation component 120 of Figure 1A, and optionally from one or more of the input device 125, output device 155, sensor 190, and / or peripheral device 195. For this purpose, in various embodiments, the data acquisition unit 241 includes instructions and / or logic for that purpose, as well as heuristics and metadata for that purpose.

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

[0137] In some embodiments, the adjustment unit 246 is configured to manage and adjust the XR experience presented to the user by the display generation component 120 and optionally by one or more of the output devices 155 and / or peripheral devices 195. For this purpose, in various embodiments, the adjustment unit 246 includes instructions and / or logic for that purpose, as well as heuristics and metadata for that purpose.

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

[0139] While the data acquisition unit 241, tracking unit 242 (including, for example, eye-tracking unit 243 and hand-tracking unit 244), adjustment unit 246, and data transmission unit 248 are shown as residing on a single device (e.g., controller 110), it should be understood that in other embodiments, any combination of the data acquisition unit 241, tracking unit 242 (including, for example, eye-tracking unit 243 and hand-tracking unit 244), adjustment unit 246, and data transmission unit 248 may be located in separate computing devices.

[0140] Furthermore, Figure 2 is intended to illustrate the function of various features that may be present in a particular embodiment, in contrast to the structural schematics of the embodiments described herein. As will be recognized by those skilled in the art, the separately shown items can be combined, and some items can be separated. For example, several functional modules separately shown in Figure 2 can be realized in a single module, and the various functions of a single functional block can be realized by one or more functional blocks in various embodiments. The actual number of modules, as well as the division of certain functions and how functions are assigned between them, will vary depending on the implementation and, in some embodiments, will partially depend on a particular combination of hardware, software, and / or firmware selected for a particular implementation.

[0141] Figure 3 is a block diagram of an example of a display generation component 120 according to several embodiments. While certain features are shown, those skilled in the art will understand from this disclosure that various other features have been omitted for brevity so as not to obscure more suitable embodiments of the embodiments disclosed herein. For that purpose, in some non-limiting examples, the display generation component 120 (e.g., HMD) may include one or more processing units 302 (e.g., microprocessors, ASICs, FPGAs, GPUs, CPUs, processing cores, etc.), one or more input / output (I / O) devices and sensors 306, one or more communication interfaces 308 (e.g., USB, FireWire, Thunderbolt, IEEE 802.3x, IEEE 802.11x, IEEE 802.16x, GSM, CDMA, TDMA, GPS, infrared, Bluetooth, ZiGBEE, and / or similar types of interfaces), one or more programming (e.g., I / O) interfaces 310, one or more XR displays 312, one or more optional in-facing and / or out-facing image sensors 314, memory 320, and one or more communication buses 304 for interconnecting these and various other components.

[0142] In some embodiments, one or more communication buses 304 include circuits for interconnecting and controlling communication between system components. In some embodiments, one or more I / O devices and sensors 306 include at least one of the following: an inertial measuring 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, one or more depth sensors (e.g., structured light, time of flight, etc.).

[0143] In some embodiments, one or more XR displays 312 are configured to provide the user with an XR experience. 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), MEMS, and / or similar display types. In some embodiments, one or more XR displays 312 correspond to waveguide displays such as diffraction, reflection, polarization, and holographic. For example, a 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 of the user's eyes. In some embodiments, one or more XR displays 312 can present MR or VR content.

[0144] In some embodiments, 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, one or more image sensors 314 are configured to acquire image data corresponding to at least a portion of the user's hands and optionally a portion of the user's arms (and may be referred to as a hand-tracking camera). In some embodiments, one or more image sensors 314 are configured to face forward to acquire image data corresponding to a scene that the user would view if a display generation component 120 (e.g., an HMD) were not present (and may be referred to as a scene camera). One or more optional image sensors 314 may include one or more RGB cameras (e.g., complementary metal-oxide-semiconductor (CMOS) image sensors or charge-coupled device (CCD) image sensors), one or more infrared (IR) cameras, one or more event-based cameras, and / or similar.

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

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

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

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

[0149] In some embodiments, the XR map generation unit 346 is configured to generate an XR map (for example, 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 extended reality) based on media content data. For this purpose, in various embodiments, the XR map generation unit 346 includes instructions and / or logic for that purpose, as well as heuristics and metadata for that purpose.

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

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

[0152] Furthermore, Figure 3 is intended to illustrate the functionality of various features that may be present in a particular implementation, in contrast to the structural schematics of the embodiments described herein. As will be recognized by those skilled in the art, the separately shown items can be combined, and some items can be separated. For example, several functional modules shown separately in Figure 3 can be realized within a single module, and the various functions of a single functional block can be performed by one or more functional blocks in various embodiments. The actual number of modules, as well as the division of certain functions and how functions are assigned between them, will vary depending on the implementation and, in some embodiments, will partially depend on a particular combination of hardware, software, and / or firmware selected for a particular implementation.

[0153] Figure 4 is a schematic diagram of an exemplary embodiment of the hand tracking device 140. In some embodiments, the hand tracking device 140 (Figure 1A) is controlled by the hand tracking unit 244 (Figure 2) to track the position / location of one or more parts of the user's hand and / or the movement of one or more parts of the user's hand relative to the scene 105 in Figure 1A (e.g., relative to parts of the physical environment surrounding the user, relative to the display generation component 120, or relative to parts of the user (e.g., the user's face, eyes, or head), and / or relative to a coordinate system defined for the user's hand). In some embodiments, the hand tracking device 140 is part of the display generation component 120 (e.g., embedded in or attached to a 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).

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

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

[0156] In some embodiments, the image sensor 404 projects a spot pattern onto a scene including the hand 406 and captures an image of the projected pattern. In some embodiments, the controller 110 calculates the 3D coordinates of points in the scene (including points on the surface of the user's hand) by triangulation based on the lateral shift of the spot in the pattern. This approach is advantageous in that the user does not need to hold or wear any kind of beacon, sensor, or other marker. This gives the depth coordinates of points in the scene relative to a given reference plane at a specific distance from the image sensor 404. In this disclosure, it is assumed that the image sensor 404 defines an orthogonal set of x, y, and z axes such that the depth coordinates of points in the scene correspond to a z component measured by the image sensor. Alternatively, the image sensor 404 (e.g., a hand tracking device) may use other 3D mapping methods such as stereoscopic imaging or time-of-flight measurement based on one or more cameras or other types of sensors.

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

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

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

[0160] In some embodiments, the input gestures used in the various examples and embodiments described herein include air gestures, as in some embodiments, performed by moving one or more of the user's fingers relative to other fingers or parts of the user's hand for interacting with an XR environment (e.g., a virtual or mixed reality environment). In some embodiments, an air gesture is a gesture detected without the user touching (or independently of) an input element that is part of the device, and is based on detected movement of a part of the user's body in the air, including movement of the user's body relative to an absolute reference (e.g., the angle of the user's arm relative to the ground, or the distance of the user's hand relative to the ground), movement of the user's body relative to another part of the user's body (e.g., movement of the user's hand relative to the user's shoulder, movement of the user's other hand relative to one 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 involving movement of the hand in a predetermined pose by a predetermined amount and / or speed, or a shake gesture involving rotation of a part of the user's body by a predetermined speed or amount).

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

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

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

[0164] In some embodiments, a 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 that is an air gesture involves moving two or more fingers of a hand to touch each other, i.e., including an optional interruption (e.g., within 0 to 1 second) immediately after the touch. A long pinch gesture that is an air gesture involves moving two or more fingers of a hand to touch each other for at least a threshold time amount (e.g., at least 1 second) before detecting an interruption of contact between them. For example, a long pinch gesture includes the user holding a pinch gesture (e.g., if 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 that is an air gesture includes two (e.g., or more) pinch inputs (e.g., performed with the same hand) that are detected directly and consecutively (e.g., within a predetermined period of time) to 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., breaks contact between two or more fingers), and then performs a second pinch input within a predetermined period (e.g., within 1 second or 2 seconds) after releasing the first pinch input.

[0165] In some embodiments, an air gesture, a pinch-and-drag gesture, includes a pinch gesture (e.g., a pinch gesture or a long pinch gesture) performed in relation to (e.g., after) a drag input that changes the user's hand position from a first position (e.g., a drag initiation position) to a second position (e.g., a resistance termination position). In some embodiments, the user maintains the pinch gesture while performing the drag input and releases the pinch gesture (e.g., spreading two or more fingers) to terminate the drag gesture (e.g., at the second position). In some embodiments, the pinch input and drag input are performed by the same hand (e.g., the user pinches two or more fingers together and touches them to each other, and then moves the same hand to a second position in the air with a 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., the user's second hand moves from the first position to the second position in the air while the user continues the pinch input with the user's first hand). In some embodiments, an input gesture that is an air gesture includes an input (e.g., a pinch input and / or a tap input) performed using both of the user's hands. For example, an input gesture includes two (e.g., or more) pinch inputs performed in relation to each other (e.g., simultaneously or within a predetermined period of time). For example, a first pinch gesture (e.g., a pinch input, a long pinch input, or a pinch and drag input) performed using the user's first hand, and a second pinch input performed using the other hand (e.g., a second hand of the user's hands) in relation to performing the pinch input using the first hand.

[0166] In some embodiments, a tap input performed as an air gesture (e.g., directed towards a user interface element) includes the movement of one or more of the user's fingers toward the user interface element, the movement of the user's hand toward the user interface element with the user's fingers (one or more) optionally extended toward the user interface element, a downward movement of the user's fingers (e.g., mimicking a mouse click or a tap on a touchscreen), or other default movements of the user's hand. In some embodiments, a tap input performed as an air gesture is detected based on the movement characteristics of the finger or hand that performs the tap gesture movement away from the user's viewpoint and / or toward the object that is the target of the tap input, followed by the 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 that performs the tap gesture (e.g., away from the user's viewpoint and / or the end of the movement toward the object that is the target of the tap input, a reversal of the direction of the finger or hand movement, and / or a reversal of the direction of acceleration of the finger or hand movement).

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

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

[0169] In scenarios where the input is described in reference to an air gesture, similar gestures may also be detected using hardware input devices attached to or held by one or more of the user's hands, in which case the position 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 it should be understood that the position and / or movement of the hardware input device is used instead of the position and / or movement of one or more hands in the corresponding air gesture(s). User input can be detected using controls included in hardware input devices, such as one or more touch-sensitive input elements, one or more pressure-sensitive input elements, one or more buttons, one or more knobs, one or more dials, one or more joysticks, one or more hand or finger covers capable of detecting the position or change in position of parts of the hands and / or fingers relative to each other, relative to the user's body, and / or the user's physical environment, and / or other hardware input device controls. User input using controls included in hardware input devices is used in place of hand and / or finger gestures such as air taps or air pinches in corresponding air gestures(single or multiple). For example, a selection input described as being performed by an air tap or air pinch input can alternatively be detected by a button press, a tap on a touch-sensitive surface, a press on a pressure-sensitive surface, or other hardware input.As another example, a movement input described as being performed by an air pinch-and-drag (e.g., an air drag gesture or an air swipe gesture) can alternatively be detected based on interaction with hardware input controls such as button press-and-hold, touch on a touch-sensitive surface, or press on a pressure-sensitive surface, or based on hardware input that follows the movement of other hardware input devices in space (e.g., accompanying the hand to which the hardware input device is associated). Similarly, two-handed inputs, including movements of both hands relative to each other, can also be performed using various combinations of inputs detected by air gestures and / or one or more of the aforementioned hardware input devices, using one air gesture and one hardware input device held in the hand not performing the air gesture, two hardware input devices held in separate hands, or two air gestures performed by separate hands.

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

[0171] Figure 4 further includes schematic diagrams of depth maps 410 captured by image sensor 404 according to several embodiments. The depth map includes a matrix of pixels, each having a depth value, as described above. Pixels 412 corresponding to the hand 406 are segmented in this map from the background and the wrist. The brightness of each pixel in the depth map 410 is inversely proportional to the depth value, i.e., the measured z-distance from image sensor 404, with the gradation becoming richer as the depth increases. Controller 110 processes these depth values ​​to identify and segment image components (i.e., groups of adjacent pixels) that have the characteristics of a human hand. These characteristics may include, for example, the overall size, shape, and frame-to-frame movement of the depth map sequence.

[0172] Figure 4 also schematically shows the hand skeleton 414 that the controller 110 ultimately extracts from the depth map 410 of the hand 406, according to several embodiments. In Figure 4, the hand skeleton 414 is superimposed on the hand background 416, which has been segmented from the original depth map. In some embodiments, the hand (e.g., knuckles, fingertips, center of the palm, end of the hand connected to the wrist), and optionally major feature points on the wrist or arm connected to the hand, are identified and positioned on the hand skeleton 414. In some embodiments, the location and movement of these major feature points across multiple image frames are used by the controller 110 to determine, according to several embodiments, a hand gesture performed by the hand or the current state of the hand.

[0173] Figure 5 shows an exemplary embodiment of the eye-tracking device 130 (Figure 1A). In some embodiments, the eye-tracking device 130 is controlled by an eye-tracking unit 243 (Figure 2) to track the position and movement of the user's gaze relative to the scene 105 or 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, if the display generation component 120 is a head-mounted device such as a headset, helmet, goggles, or glasses, or a handheld device positioned in a wearable frame, the head-mounted device includes both a component for generating XR content for user viewing and a component 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, if the display generation component is a handheld device or an XR chamber, the eye-tracking device 130 is optionally a separate device from the handheld device or XR chamber. In some embodiments, the eye-tracking device 130 is a head-mounted device or part of a head-mounted device. In some embodiments, the head-mounted eye-tracking device 130 is optionally used with a display generation component that is mounted on the head or a display generation component that is not mounted on the head. In some embodiments, the eye-tracking device 130 is not a head-mounted device, but is optionally used in combination with a head-mounted display generation component. In some embodiments, the eye-tracking device 130 is not a head-mounted device, but is optionally part of a non-head-mounted display generation component.

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

[0175] As shown in Figure 5, 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) camera or a near-IR (NIR) camera) and an illumination source (e.g., an IR or NIR light source such as an array or ring of LEDs) that emits light (e.g., IR or NIR light) toward the user's eye. The eye-tracking camera may be directed toward the user's eye to receive reflected IR or NIR light from the light source directly from the eye, or alternatively, it may be directed toward a "hot" mirror positioned between the user's eye and a display panel that reflects IR or NIR light from the eye 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 communicates the gaze tracking information to the controller 110. In some embodiments, both of the user's eyes are tracked separately by their respective eye-tracking cameras and illumination sources. In some embodiments, only one of the user's eyes is tracked by a separate eye-tracking camera and light source.

[0176] 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, e.g., the 3D geometric relationships and parameters of the LEDs, camera, hot mirror (if present), eyepiece, and display screen. The device-specific calibration process may be performed at the factory or another facility before delivery of the AR / VR device to the end user. The device-specific calibration process may be an automated calibration process or a manual calibration process. A user-specific calibration process may include estimating the eye parameters of a particular user, e.g., pupil location, central visual location, optical axis, visual axis, interpupillary distance. According to some embodiments, once the device-specific and user-specific parameters for the eye-tracking device 130 are determined, the images captured by the eye-tracking camera can be processed using a Glint-assisted method to determine the user's current visual axis and gaze point relative to the display.

[0177] As shown in Figure 5, the eye-tracking device 130 (e.g., 130A or 130B) includes an eyepiece(s) 520 and an eye-tracking system which includes at least one eye-tracking camera 540 (e.g., an infrared (IR) or near-IR (NIR) camera) positioned on the side of the user's face where eye tracking 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 eyes(s) 592. The eye-tracking camera 540 is positioned between the user's eye(s) 592 and the display 510 (e.g., the left or right display panel of a head-mounted display, or the display or projector of a handheld device) and may be directed towards a mirror 550 that transmits visible light while reflecting IR or NIR light from the eye(s) 592 (e.g., as shown at the top of Figure 5), or may be directed towards the user's eye(s) 592 to receive reflected IR or NIR light from the eye(s) 592 (e.g., as shown at the bottom of Figure 5).

[0178] 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. For various purposes, for example, when processing the frames 562 for display, the controller 110 uses gaze tracking input 542 from the eye-tracking camera 540. Optionally, the controller 110 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 glint-assisted method or other appropriate method. The gaze point estimated from the gaze tracking input 542 is optionally used to determine the direction the user is currently looking.

[0179] The following describes, but is not intended to be limiting, several possible use cases of the user's current gaze direction. As an exemplary use case, the controller 110 may render virtual content differently based on the determined user's gaze direction. For example, the controller 110 may generate virtual content at a higher resolution in the central visual region determined from the user's current gaze direction than in the peripheral region. As another example, the controller may position or move virtual content within the view based at least partially on the user's current gaze direction. As yet another example, the controller may display specific virtual content within the view based at least partially on the user's current gaze direction. As another exemplary use case in an AR application, the controller 110 may capture the physical environment of the XR experience and orient an external camera to focus in the determined direction. The external camera's autofocus mechanism can then focus on an object or surface in the environment that the user is currently viewing on the display 510. In another exemplary use case, the eyepiece 520 may be a focusing lens, and the controller uses eye-tracking information to adjust the focus of the eyepiece 520 so that the virtual object currently being viewed by the user has appropriate binocular coordination to match the convergence of the user's eye 592. The controller 110 can use the eye-tracking information to orient and adjust the focus of the eyepiece 520 so that the nearby object being viewed by the user appears at the correct distance.

[0180] In some embodiments, the eye-tracking device is part of a head-mounted device, which is housed within a wearable housing and includes a display (e.g., display 510), two eyepieces (e.g., one or more eyepieces 520), an eye-tracking camera (e.g., one or more eye-tracking cameras 540), and a light source (e.g., an illumination source 530 (e.g., IR or NIR LEDs)). The light source emits light (e.g., IR or NIR light) towards the user's eye(s) 592. In some embodiments, the light sources may be arranged in a ring or circular pattern around each lens, as shown in Figure 5. In some embodiments, as an example, eight illumination sources 530 (e.g., LEDs) are arranged around each lens 520. However, more or fewer illumination sources 530 may be used, and other arrangements and locations of the illumination sources 530 may be used.

[0181] In some embodiments, the display 510 emits light within the visible light range and does not emit light within the IR or NIR range, thus not introducing noise into the eye-tracking system. Note that the location and angle of the eye-tracking camera(s) 540 are given as examples and are not intended to be limiting. In some embodiments, a single eye-tracking camera 540 is positioned on each side of the user's face. In some embodiments, two or more NIR cameras 540 can 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.

[0182] Embodiments of eye-tracking systems, such as those shown in Figure 5, can be used, for example, in computer-generated reality, virtual reality, and / or mixed reality applications to provide users with computer-generated reality, virtual reality, augmented reality, and / or augmented virtual experiences.

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

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

[0185] At 610, if the tracking status is yes for the currently captured image, 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 shown in 620. At 630, if the pupil and glint are successfully detected, the method proceeds to element 640. If they are not successfully detected, the method returns to element 610 and processes the next image of the user's eyes.

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

[0187] Figure 6 is intended to serve as an example of an eye-tracking technology that may be used in a particular implementation. As will be recognized by those skilled in the art, other eye-tracking technologies that currently exist or may be developed in the future may be used in computer system 101 to provide users with XR experiences in various embodiments, either in place of or in combination with the Glint-assisted eye-tracking technology described herein.

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

[0189] Accordingly, this description describes several embodiments of three-dimensional environments (e.g., XR environments) that include representations of real-world objects and virtual objects. For example, a three-dimensional environment optionally includes a representation of a table existing in a physical environment, which is captured and displayed within the three-dimensional environment (e.g., actively via a computer system's camera and display, or passively via a computer system's transparent or translucent display). As described above, a three-dimensional environment optionally is a mixed reality system based on a physical environment, in which the three-dimensional environment is captured by one or more sensors of a computer system and displayed via a display generation component. As a mixed reality system, the computer system may optionally selectively display parts and / or objects of the physical environment so that each part and / or object of the physical environment appears to exist in the three-dimensional environment displayed by the computer system. Similarly, the computer system may optionally display virtual objects in a three-dimensional environment so that the virtual objects appear to exist in the real world (e.g., the physical environment) by placing virtual objects in each location within the three-dimensional environment that have corresponding locations in the real world. For example, a computer system may optionally display a vase in such a way that it appears as if a real vase were placed on a table in a physical environment. In some embodiments, individual locations in a three-dimensional environment have corresponding locations in the physical environment.Therefore, when a computer system is described as displaying virtual objects in separate locations relative to physical objects (for example, at or near the location of the user's hand, or on or near a physical table), the computer system displays the virtual objects in specific locations within a three-dimensional environment so that they appear to be at or near physical objects in the physical world (for example, if the virtual object is a real object at that specific location, then the virtual object will be displayed in the location within the three-dimensional environment that corresponds to the location within the physical environment where the virtual object would have been displayed).

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

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

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

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

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

[0195] Similarly, embodiments described herein may refer to the location of a user (e.g., a user of a computer system) and / or the location of a computer system in a three-dimensional environment. In some embodiments, the user of a computer system is holding, wearing, or otherwise positioned near the computer system. Thus, in some embodiments, the location of the computer system is used as a proxy for the user's location. In some embodiments, the location of the computer system and / or the user in the physical environment corresponds to individual locations in the three-dimensional environment. For example, if a user stands at a location facing an individual part of the physical environment that is visible through a display-generating component, the location of the computer system is the location in the physical environment (and its corresponding location in the three-dimensional environment) where the user will see objects in the physical environment in the same position, orientation, and / or size (e.g., absolutely and / or relative to each other) as the objects are visible through the display-generating component of the computer system in the three-dimensional environment. Similarly, if a virtual object displayed in a three-dimensional environment is a physical object in a physical environment (for example, the physical object is located in the same physical environment location as the one in the three-dimensional environment and has the same size and orientation as the one in the three-dimensional environment), then the computer system and / or user's location is the position from which the user will view the virtual object in the physical environment in the same position, orientation, and / or size (for example, absolutely, and / or relative to each other, and in relation to real-world objects) as it was displayed by the computer system's display generation components in the three-dimensional environment.

[0196] This disclosure describes various input methods for interaction with computer systems. Where one example is provided using one input device or method, and another example is provided using a different input device or method, each example may be compatible with the input device or method described in the other example, and their use should be considered optional. Similarly, various output methods for interaction with computer systems are described. Where one example is provided using one output device or method, and another example is provided using a different output device or method, each example may be compatible with the output device or method described in the other example, and their use should be considered optional. Similarly, various methods for interaction with virtual or mixed reality environments via computer systems are described. Where one example is provided using interaction with a virtual environment, and another example is provided using a mixed reality environment, each example may be compatible with the method described in the other example, and their use should be considered optional. Therefore, this disclosure discloses embodiments that are combinations of features of multiple examples, without exhaustively listing all features of the embodiments in the description of each exemplary embodiment. User interface and related processes

[0197] Here, we focus on embodiments of a user interface ("UI") and related processes that may be performed in a computer system such as a portable multifunction device or head-mounted device, which includes display generation components, one or more input devices, and (optionally) one or more cameras.

[0198] Figures 7A to 7EE illustrate an example in which a computer system changes the visual prominence of individual virtual objects in a three-dimensional environment in response to detecting a threshold overlap between a first virtual object and a second virtual object. In some embodiments, the computer system changes the visual prominence of individual virtual objects based on a change in the spatial location of the first virtual object relative to the second virtual object in the three-dimensional environment.

[0199] Figure 7A shows a computer system (e.g., electronic device) 101 that displays a three-dimensional environment 702 from the viewpoint of a user of the computer system 101 (e.g., user 712) (e.g., facing the back wall of the physical environment in which the computer system 101 is located) via a display generation component (e.g., display generation component 120 in Figure 1). In some embodiments, the computer system 101 includes a display generation component (e.g., a touchscreen) and a plurality of image sensors (e.g., image sensor 314 in Figure 3). The image sensors optionally include one or more of the following: a visible light camera, an infrared camera, a depth sensor, or any other sensors that the computer system 101 may use to capture one or more images of the user or a part of the user (e.g., one or more of the user's hands) while the user interacts with the computer system 101. In some embodiments, the user interfaces illustrated and described below may also be implemented on a head-mounted display, which includes a display generating component that displays the user interface or three-dimensional environment to the user, and sensors for detecting the physical environment and / or the movement of the user's hands (e.g., external sensors facing outward from the user) and / or the user's attention (e.g., gaze) (e.g., internal sensors facing inward toward the user's face).

[0200] As shown in Figure 7A, the computer system 101 displays a first virtual object 704a and a second virtual object 704b in a three-dimensional environment 702. In some embodiments, the first virtual object 704a and the second virtual object 704b have one or more characteristics of the first virtual object, the second virtual object, and / or individual virtual objects as described with reference to Methods 800 and / or 900. For example, the first virtual object 704a and / or the second virtual object 704b are associated with one or more applications for presenting content in the three-dimensional environment 702 (for example, the first virtual object 704a is associated with "Application A" and the second virtual object 704b is associated with "Application B"). In some embodiments, the first virtual object 704a and / or the second virtual object 704b present video content (e.g., associated with video media (e.g., from a video streaming application)), website content (e.g., from a web browsing application), telephone and / or message content (e.g., from a telephone, messaging, and / or social media application) or interactive content (e.g., from a video game application).

[0201] In Figure 7A, one or more objects other than the first virtual object 704a and the second virtual object 704b are visible. In particular, the table 706a, the wall photograph 706b, and the door 706c are shown in Figure 7A. In some embodiments, the table 706a, the wall photograph 706b, and the door 706c are physical objects from the user's (e.g., user 712 as described below) physical environment that are visible through optical passthrough on the display generation component 120. In some embodiments, the table 706a, the wall photograph 706b, and the door 706c are virtual representations of physical objects from the user's physical environment that are visible through virtual passthrough on the display generation component 120. In some embodiments, the three-dimensional environment 702 is an immersive virtual environment (e.g., fully immersive or partially immersive), and one or more objects from the user's physical environment are not visible to the user's current viewpoint. In some embodiments, the first virtual object 704a and the second virtual object 704b are displayed with a first amount of visual splendor (including one or more properties of the first amount of visual splendor to a three-dimensional environment, as described, for example, with reference to Method 800). For example, the first virtual object 704a and the second virtual object 704b are displayed with a certain amount of opacity, brightness, and / or color such that the content associated with the first virtual object 704a and the second virtual object 704b is visible to the current viewpoint of the user of the computer system 101. In some embodiments, displaying individual virtual objects (e.g., the first virtual object 704a or the second virtual object 704b) with a first amount of visual splendor corresponds to the individual virtual being an active virtual object, as described, with reference to Method 800.

[0202] An overhead view 710 of the three-dimensional environment 702 is shown in Figures 7A to 7EE. The overhead view 710 shows the user 712 in the three-dimensional environment 702. In some embodiments, the user 712 is a user of the computer system 101 (for example, the user 712 is viewing the three-dimensional environment 702 from the current viewpoint). In some embodiments, the user 712 in the overhead view 710 represents the user 712's current viewpoint relative to the three-dimensional environment 702. In the overhead view 710 of Figure 7A, the first virtual object 704a and the second virtual object 704b are not shown overlapping in the three-dimensional environment 702 (for example, they do not overlap with the user 712's current viewpoint as shown in Figure 7A). Specifically, the first virtual object 704a and the second virtual object 704b do not spatially compete within the three-dimensional environment 702 (for example, at least a portion of the first virtual object 704a and at least a portion of the second virtual object are not displayed in the same location within the three-dimensional environment 702). As shown in the overhead view 710, the first virtual object 704a has a different spatial arrangement from the second virtual object 704b with respect to the user 712's current viewpoint. In particular, with respect to the user 712's current viewpoint within the three-dimensional environment 702, the first virtual object 704a is at a first distance within the three-dimensional environment 702, and the second virtual object 704b is at a second distance within the three-dimensional environment 702, which is greater than the first distance.

[0203] As shown in Figure 7A, user 712 directs inputs (e.g., air pinch input, air tap input, pinch input, tap input, air pinch and drag input, air drag input, drag input, click and drag input, gaze input, and / or other inputs) to the first virtual object 704a. In particular, user 712's gaze 708 is directed to the first virtual object 704a (e.g., represented by a black circle in the three-dimensional environment 702) and user 712's hand 720 is pointed to. In some embodiments, user 712 performs air gestures with hand 720 (e.g., one or more air gestures described with reference to methods 800 and / or 900) while user 712's attention (e.g., gaze 708) is simultaneously directed to the first virtual object 704a. In some embodiments, the input shown in Figure 7A corresponds to a request to move (e.g., and / or change its spatial position) a first virtual object 704a in a three-dimensional environment 702 (e.g., and / or change the spatial position of the first virtual object 704a relative to the user 712's current viewpoint). For example, the input includes the movement of a hand using hand 720 corresponding to the requested movement of the first virtual object 704a in the three-dimensional environment 702 (e.g., while attention is directed to the first virtual object 704a and / or while an air gesture is being performed). In some embodiments, the input shown in Figure 7A has one or more characteristics of the first input described with reference to methods 800 and / or 900. In some embodiments, the input having one or more characteristics of the input shown in Figure 7A may be directed to a second virtual object 704b to move (e.g., to change the spatial position of the second virtual object 704b relative to the user 712's current viewpoint).

[0204] FIG. 7A1 shows the same and / or similar concepts as those shown in FIG. 7A (having many of the same reference numbers). Unless otherwise indicated below, elements shown in FIG. 7A1 having the same reference numbers as elements shown in FIGS. 7A - 7EE are understood to have one or more or all of the same characteristics. FIG. 7A1 includes a computer system 101 that includes (or is the same as) a display generation component 120. In some embodiments, the computer system 101 and the display generation component 120 each have one or more of the characteristics of the computer system 101 shown in FIGS. 7A - 7EE and the display generation component 120 shown in FIGS. 1 and 3, and in some embodiments, the computer system 101 and the display generation component 120 shown in FIGS. 7A - 7EE have one or more of the characteristics of the computer system 101 and the display generation component 120 shown in FIG. 7A1.

[0205] In FIG. 7A1, the display generation component 120 includes one or more internal image sensors 314a (e.g., the eye - tracking camera 540 described with reference to FIG. 5) oriented towards the user's face. In some embodiments, the internal image sensor 314a is used for eye - tracking (e.g., detecting the user's line of sight). The internal image sensor 314a is optionally disposed on the left and right portions of the display generation component 120 to enable eye - tracking of the user's left and right eyes. The display generation component 120 also includes external image sensors 314b and 314c facing outward from the user to detect and / or capture the physical environment and / or the movement of the user's hand. In some embodiments, the image sensors 314a, 314b, and 314c have one or more of the characteristics of the image sensor 314 described with reference to FIGS. 7A - 7EE.

[0206] In FIG. 7A1, the display generation component 120 is shown as being configured to optionally display content that corresponds to content that is described as being displayed via and / or visible to the display generation component 120, with reference to FIGS. 7A-7EE. In some embodiments, the content is displayed by a single display (e.g., display 510 of FIG. 5) included in the display generation component 120. In some embodiments, the display generation component 120 includes two or more displays (e.g., left and right display panels for the user's left and right eyes, as described with reference to FIG. 5) having displayed outputs that are merged (e.g., by the user's brain) to create a view of the content shown in FIG. 7A1.

[0207] The display generation component 120 has a field of view that corresponds to the content shown in FIG. 7A1 (e.g., a field of view captured by external image sensors 314b and 314c and / or visible to the user via the display generation component 120). The display generation component 120 is optionally a head-mounted device, and thus the field of view of the display generation component 120 is optionally the same as or similar to the user's field of view.

[0208] In FIG. 7A1, the user is depicted as performing an air pinch gesture (e.g., with hand 720) to provide an input to computer system 101 to provide user input directed to the content displayed by computer system 101. Such depiction is intended to be illustrative and not limiting, and the user may optionally use different air gestures and / or other forms of input to provide user input, as described with reference to FIGS. 7A-7EE.

[0209] In some embodiments, computer system 101 responds to the user input, as described with reference to FIGS. 7A-7EE.

[0210] In the example of Figure 7A1, the user's hand is visible in the three-dimensional environment because it is within the field of view of the display generation component 120. That is, the user can optionally view any part of their own body that is within the field of view of the display generation component 120 in the three-dimensional environment. It is understood that one or more or all aspects of the present disclosure shown in or described with reference to Figures 7A to 7EE and / or described with reference to the corresponding methods (one or more) may optionally be implemented on the computer system 101 and the display generation unit 120 in a manner similar to or similar to that shown in Figure 7A1.

[0211] Figure 7B shows the movement of the first virtual object 704a in the three-dimensional environment 702 (for example, relative to the user 712's current viewpoint) in response to the input provided by the user 712 in Figure 7A. As shown in Figure 7B, the movement of the first virtual object 704a in the three-dimensional environment 702 causes the first virtual object 704a to overlap the second virtual object 704b at least partially (for example, at least a portion of the first virtual object 704a is spatially competing with the second virtual object 704b (for example, making it visually obscured) (for example, the first virtual object overlaps with the second virtual object from the user's viewpoint, and optionally, the first virtual object is within the threshold distance of the second virtual object in terms of depth dimension relative to the user 712's current viewpoint)). Specifically, the first virtual object 704a is displayed at a distance in the three-dimensional environment 702 that is closer to the user 712 (for example, relative to the user 712's current viewpoint) than the second virtual object 704b, and the portion of the first virtual object 704a that overlaps with the second virtual object 704b is visually obscured relative to the user 712's current viewpoint.

[0212] In some embodiments, as the computer system 101 detects the threshold overlap amount between a portion of the first virtual object 704a and the second virtual object 704b, the individual virtual objects displayed in the three-dimensional environment 702 (e.g., the first virtual object 704a or the second virtual object 704b) are displayed with different visual splendor (e.g., the computer system 101 reduces the visual splendor of at least a portion of the individual virtual objects). Accordingly, the overhead view 710 shows schematic diagrams of overlapping area (e.g., area) thresholds 714a and overlapping angle (e.g., angular distance) thresholds 714b corresponding to the threshold overlap amount (e.g., or optionally, one or more threshold amounts of overlap) detected by the computer system 101 to change the visual splendor of the individual virtual objects displayed in the three-dimensional environment 702. In some embodiments, as the computer system 101 detects an overlap between the first virtual object 704a and the second virtual object 704b that exceeds an overlap area threshold 714a and / or an overlap angle threshold 716b, at least a portion of the first virtual object 704a or the second virtual object 704b is displayed with different (e.g., reduced) visual splendor. For example, as the user 712's attention is directed towards the first virtual object 704a (e.g., via line of sight 708 while simultaneously performing an air gesture (e.g., an air pinch) with hand 720), the second virtual object 704b is displayed with different visual splendor (e.g., the first virtual object 704a is the active virtual object). For example, according to the attention of user 712 directed towards the second virtual object 704b (e.g., through line of sight 708 while simultaneously performing an air gesture (e.g., an air pinch) with hand 720), the first virtual object 704a is displayed with different visual prominence (e.g., the second virtual object 704b is the active virtual object). In some embodiments, the threshold overlap amount (e.g., overlapping region threshold 714a and / or overlapping angle threshold 714b) has one or more characteristics of the threshold overlap amount between at least a portion of the first virtual object and the second virtual object, as described with reference to Method 800.

[0213] As shown in Figure 7B, the overlap between the first virtual object 704a and the second virtual object 704b does not exceed the overlap area threshold 714a or the overlap angle threshold 714b. In accordance with the fact that the overlap between the first virtual object 704a and the second virtual object 704b does not exceed the threshold overlap amount, the computer system 101 maintains the display of the first virtual object 704a and the second virtual object 704b with first visual prominence in the three-dimensional environment 702.

[0214] In Figure 7B, user 712 directs inputs (e.g., air pinch input, air tap input, pinch input, tap input, air pinch and drag input, air drag input, drag input, click and drag input, gaze input, and / or other inputs) to the first virtual object 704a, corresponding to a request to move the first virtual object 704a within the three-dimensional environment 702 (e.g., a gaze line 708 directed towards the first virtual object 704a, as well as air gestures and / or hand movements performed by the hand 720). In some embodiments, Figure 7B shows that the computer system 101 continues to receive inputs initiated by user 712 in Figure 7A. For example, the input shown in Figure 7B is a continuation of the input shown in Figure 7A (for example, user 712 continues to move the first virtual object 704a in the three-dimensional environment 702 by continuing to direct their gaze 708 towards the first virtual object 704a while continuing to perform the air gesture and / or hand movement initiated in Figure 7A).

[0215] Figure 7C shows the movement of a first virtual object 704a in the three-dimensional environment 702 (e.g., relative to the user 712's current viewpoint) based on the input(s) provided by the user 712 in Figures 7A and 7B. As a result of the movement of the first virtual object 704a in the three-dimensional environment 702 (e.g., relative to the user 712's current viewpoint), the first virtual object 704a overlaps with the second virtual object 704b beyond the threshold overlap amount (e.g., beyond the overlap area threshold 714 and / or overlap angle threshold 714b, as shown in the overhead view 710) relative to the user 712's current viewpoint. As the movement of the first virtual object 704a causes it to exceed a threshold overlap amount with the second virtual object 704b, the second virtual object 704b (e.g., or optionally, a portion of the second virtual object 704b) is displayed with a second amount of visual splendor (e.g., including one or more properties of the second visual splendor, as described with reference to Method 800). In some embodiments, displaying the second virtual object 704b with a second amount of visual splendor includes displaying the second virtual object 704b (e.g., or optionally, a portion of the second virtual object 704b) having reduced amounts of luminance, hue, saturation, and / or opacity compared to displaying the second virtual object 704b with a first amount of visual splendor (e.g., the amounts of visual splendor of the second virtual object 704b are shown in Figures 7A and 7B). In some embodiments, displaying the second virtual object 704b with a second degree of visual prominence includes discontinuing the display of the portion of the second virtual object 704b in a three-dimensional environment that overlaps with the first virtual object 704a with respect to the user 712's current viewpoint (e.g., the portion of the second virtual object 704b spatially competes with the first virtual object 704a with respect to the user 712's current viewpoint (e.g., it is visually obscured by the first virtual object 704a)) (e.g., the second virtual object overlaps with the first virtual object from the user's viewpoint, and optionally, the second virtual object is within a threshold distance of the first virtual object in depth dimensions).In some embodiments, the second virtual object 704b is displayed with a second amount of visual prominence because the user 712's attention is directed to the first virtual object 704a (e.g., through gaze 708 and air gestures and / or hand movements performed by hand 720) while performing the inputs shown in Figures 7A and 7B (e.g., the first virtual object 704a is the active virtual object).

[0216] As shown in Figure 7C, user 712 may cease giving an input to the first virtual object 704a (e.g., ceasing to move the hand beyond a threshold time, releasing the user's fingers for an air pinch input, closing the user's eyes, or another input indicating the end of the input) and give an input to the second virtual object 704b (e.g., an air pinch input, an air tap input, a pinch input, a tap input, an air pinch and drag input, an air drag input, a drag input, a click and drag input, a gaze input, and / or other input). In particular, the gaze 708 is directed towards the second virtual object 704b. In some embodiments, while user 712 directs their gaze 708 towards the second virtual object 704b, user 712 performs an air gesture (e.g., an air pinch) with hand 720. In some embodiments, the input shown in Figure 7C corresponds to a request to interact with the second virtual object 704b (for example, a request to display the second virtual object 704b with the visual splendor of the first quantity and the first virtual object 704a with the visual splendor of the second quantity). For example, the input shown in Figure 7C corresponds to a request to make the second virtual object 704b an active virtual object.

[0217] Figure 7D shows a second virtual object 704b displayed with a first amount of visual saturation, and a first virtual object 704a displayed with a second amount of visual saturation, in response to the input provided by user 712 in Figure 7C. In some embodiments, the first virtual object 704a is displayed in Figure 7D with reduced amounts of brightness, hue, saturation, and / or opacity compared to those shown in Figures 7A-7C. In some embodiments, the computer system 101 stops displaying the portion of the first virtual object 704a that overlaps with the second virtual object 704b in the three-dimensional environment 702 (for example, the portion of the first virtual object 704a has the characteristics of one or more first portions of a distinct part of a distinct virtual object as described with reference to Method 800 and / or first portions of at least a part of a second virtual object as described with reference to Method 900). For example, the portion of the first virtual object 704a has a size in a three-dimensional environment that corresponds to the size of the portion of the second virtual object 704b that overlaps the first virtual object 704a with respect to the user 712's current viewpoint.

[0218] As shown in Figures 7A to 7D (for example, in the overhead view 710), the second virtual object 704b is displayed at a greater distance from the user 712 at the current viewpoint compared to the first virtual object 704a. In some embodiments, as the second virtual object 704b is displayed at a greater distance from the user 712's current viewpoint compared to the first virtual object 704a, a portion 718a of the first virtual object 704a is displayed with a greater amount of transparency compared to displaying a portion of the first virtual object 704a with a first amount of visual prominence (for example, a portion 718a of the first virtual object 704a has one or more characteristics of a second portion of a separate part of a separate virtual object as described with reference to Method 800, and / or a second portion of at least a part of the second virtual object as described with reference to Method 900). As shown in Figure 7D, portion 718a of the first virtual object 704a surrounds portion of the second virtual object 704b that overlaps with the first virtual object 704a with respect to the user 712's current viewpoint (for example, portion 718a of the first virtual object 704a surrounds portion of the first virtual object 704a that the computer system 101 stops displaying in the three-dimensional environment 702). In some embodiments, in Figure 7D, the second virtual object 704b is visible (e.g., not visually obscured by the first virtual object 704a) despite spatial competition (e.g., overlap) between the first virtual object 704a and the second virtual object 704b, and the first virtual object 704a is displayed at a closer distance to the user 712's current viewpoint (e.g., the computer system 101 stops displaying the portion of the first virtual object 704a that visually obscures the second virtual object 704b and displays the portion 718a of the first virtual object 704a that surrounds the second virtual object 704b with transparency).

[0219] In Figure 7D, user 712 directs an input (e.g., air pinch input, air tap input, pinch input, tap input, air pinch and drag input, air drag input, drag input, click and drag input, gaze input, and / or other inputs) to an empty space in the three-dimensional environment 702 (e.g., an area of ​​the three-dimensional environment that does not contain one or more virtual objects (e.g., a first virtual object 704a or a second virtual object 704b)). In some embodiments, the empty space in the three-dimensional environment 702 has one or more characteristics of an empty space in the three-dimensional environment, as described with reference to Method 800. As shown in Figure 7D, an input directed to an empty space in the three-dimensional environment 702 includes a gaze 708 directed to the empty space while user 712 is performing an air gesture (e.g., an air pinch) with hand 720. In some embodiments, the input shown in Figure 7D corresponds to a request to change which of the following virtual objects (e.g., the first virtual object 704a or the second virtual object 704b) is displayed with a first degree of visual prominence (e.g., which individual virtual objects are displayed as the active virtual object). For example, the input shown in Figure 7D corresponds to a request to display the individual virtual object displayed closest to the user 712's current viewpoint (e.g., the first virtual object 704a) with a first degree of visual prominence (e.g., one or more virtual objects displayed in the three-dimensional environment 702, different from the individual virtual object (e.g., the second virtual object 704b), with a second degree of visual prominence).

[0220] Figure 7E shows a first virtual object 704a displayed with the visual splendor of a first quantity and a second virtual object 704b displayed with the visual splendor of a second quantity, in response to the input provided by user 712 in Figure 7D. In some embodiments, displaying the first virtual object 704a with the visual splendor of a first quantity and the second virtual object 704b with the visual splendor of a second quantity includes one or more characteristics of displaying the first virtual object 704a with the visual splendor of a first quantity and the second virtual object 704b with the visual splendor of a second quantity, as illustrated and described with reference to Figure 7C.

[0221] In some embodiments, the computer system 101 modifies the visual prominence of the second virtual object 704b based on a change in the spatial location of the first virtual object 704a relative to the second virtual object 704b (for example, including one or more properties that modify the visual prominence of at least a portion of the second virtual object relative to the three-dimensional environment based on a change in the spatial location of the first virtual object relative to the second virtual object during the movement of the first virtual object in the three-dimensional environment, as described with reference to Method 900). In Figure 7E, the overhead view 710 includes schematic diagrams of spatial location thresholds 716a and 716b. In some embodiments, the spatial location thresholds 716a and 716b correspond to distance thresholds relative to the second virtual object 704b. For example, the distance threshold corresponds to the distance from the second virtual object 704b in a first dimension (e.g., in the direction of depth relative to the user 712's current viewpoint) in the three-dimensional environment 702. In some embodiments, spatial location thresholds 716a and 716b correspond to distance thresholds relative to the user 712's current viewpoint. For example, the distance threshold is associated with the distance of a second virtual object 704b from the user 712's current viewpoint and the distance in a first dimension from the user 712's current viewpoint in a different three-dimensional environment 702 beyond a threshold amount.

[0222] As shown in Figure 7E, inputs (e.g., air pinch input, air tap input, pinch input, tap input, air pinch and drag input, air drag input, drag input, click and drag input, gaze input, and / or other inputs) are directed to a first virtual object 704a. In some embodiments, the inputs correspond to a request to move the first virtual object 704a to a first dimension in the three-dimensional environment (e.g., in the depth direction relative to the user 712's current viewpoint). The inputs shown in Figure 7E include the user 712's attention (e.g., gaze 708) directed to the first virtual object 704a. In some embodiments, while the gaze is directed to the first virtual object 704a, the user 712 performs air gestures (e.g., air pinch) and / or hand movements relative to the three-dimensional environment 702 (e.g., hand movements are in the depth direction within the three-dimensional environment 702 relative to the user 712's current viewpoint).

[0223] Figure 7F shows the movement of the first virtual object 704a in the three-dimensional environment 702 in response to the input provided by user 712 in Figure 7E. Based on the input provided in Figure 7E, the first virtual object 704a is moved within the three-dimensional environment 702 to a greater distance (e.g., by a first dimension) relative to user 712's current viewpoint. As shown in the overhead view 710, the movement of the first virtual object 704a by a first dimension within the three-dimensional environment 702 places the first virtual object 704a in a spatial location relative to the second virtual object 704b, which is within the spatial location thresholds 716a and 716b. In some embodiments, due to the first virtual object 704a being in a spatial location relative to the second virtual object 704b, which is within the spatial location thresholds 716a and 716b, the computer system 101 changes the visual prominence of portion 718b of the second virtual object 704b. In some embodiments, changing the visual splendor of portion 718b of the second virtual object 704b includes one or more characteristics of changing the visual splendor of portion 718a of the first virtual object 704a, as described above. In some embodiments, changing the visual splendor of portion 718b of the second virtual object 704b includes one or more characteristics of changing the visual splendor of at least a portion of the second virtual object relative to the three-dimensional environment based on a change in the spatial location of the first virtual object relative to the second virtual object during the movement of the first virtual object in the three-dimensional environment, as described with reference to Method 900. For example, portion 718b of the second virtual object 704b is displayed with a greater amount of transparency compared to displaying portion 718b with a first amount of visual splendor. In some embodiments, based on the spatial location of the first virtual object 704a relative to the second virtual object 704b during the movement of the first virtual object 704a in the three-dimensional environment 702 (for example, according to the fact that the first virtual object 704a is within spatial location thresholds 716a and 716b), the computer system 101 reduces the visual prominence of the second virtual object 704b by a different magnitude.In some embodiments, reducing visual prominence by a different magnitude involves resizing portion 718b, which is displayed with a greater amount of transparency, based on the spatial location of the first virtual object 704a relative to the second virtual object 704b. For example, in Figure 7F, portion 718b of the second virtual object 704b is of a first size relative to the three-dimensional environment 702. In some embodiments, the size of portion 718b increases as the first virtual object 704a is moved closer to the second virtual object 704b in the three-dimensional environment 702 (e.g., relative to a first dimension) (for example, as the difference between the distance of the first virtual object 704a relative to the user 712's current viewpoint and the distance of the second virtual object 704b relative to the user 712's current viewpoint decreases, the size of portion 718b increases relative to the three-dimensional environment 702). In Figure 7F, when portion 718b of the second virtual object 704b is displayed with a greater amount of transparency, the portion of the second virtual object 704b that is different from portion 718b (e.g., the remainder of the second virtual object 704b outside portion 718b) continues to be displayed with a second amount of visual prominence (e.g., with the amount of visual prominence shown in Figure 7E). In Figure 7F, the portion of the second virtual object 704b that spatially competes with the first virtual object 704a with respect to the user 712's current viewpoint (e.g., is visually obscured) (e.g., the portion of the second virtual object overlaps with the first virtual object from the user's viewpoint, and optionally, the second virtual object is within a threshold distance of the first virtual object in depth dimensions) ceases to be displayed in the three-dimensional environment 702 (as illustrated and described with reference to Figure 7C, for example).

[0224] As shown in Figure 7F, inputs (e.g., air pinch input, air tap input, pinch input, tap input, air pinch and drag input, air drag input, drag input, click and drag input, gaze input, and / or other inputs) are directed to the first virtual object 704a in response to a request to move the first virtual object 704a within the three-dimensional environment 702 (for example, the inputs shown in Figure 7F have one or more characteristics of the inputs illustrated and described with reference to Figure 7E). In some embodiments, Figure 7F shows that the computer system 101 continues to receive inputs initiated by the user 712 in Figure 7E. For example, the inputs shown in Figure 7F are a continuation of the inputs shown in Figure 7E (for example, the user 712 continues to move the first virtual object 704a (e.g., in a first dimension) within the three-dimensional environment 702 by continuing to direct their gaze 708 towards the first virtual object 704a while performing the air gestures and / or hand movements initiated in Figure 7E).

[0225] Figure 7G shows the movement of the first virtual object 704a in the three-dimensional environment 702 in response to the input provided by user 712 in Figure 7F. As shown in the overhead view 710, the first virtual object 704a is spatially competitive with the second virtual object 704b with respect to the three-dimensional environment 702 (for example, a portion of the first virtual object 704a is in the same location as a portion of the second virtual object 704b in the three-dimensional environment 702) (for example, the first virtual object overlaps with the second virtual object from the user's viewpoint, and optionally, the first virtual object is within a threshold distance of the second virtual object in terms of depth dimension). In some embodiments, in Figure 7G, the first virtual object 704a is at the same distance from the user 712's current viewpoint as the second virtual object 704b in the three-dimensional environment 702.

[0226] As a result of a change in the spatial location of the first virtual object 704a relative to the second virtual object 704b (for example, the first virtual object 704a has moved closer to the second virtual object 704b in the three-dimensional environment 702 compared to what was previously shown and described in Figure 7F), the visual prominence of the second virtual object 704b is reduced to a greater extent in Figure 7G. For example, part 718b has a second size with respect to the three-dimensional environment 702 that is larger than the first size of part 718b (as illustrated and described with reference to Figure 7F). For example, part 718b is displayed with a greater amount of transparency compared to part 718b shown in Figure 7F. In some embodiments, the size of part 718b is the maximum size with respect to the three-dimensional environment 702 (for example, because the first virtual object 704a is located at the same distance from the user 712's current viewpoint as the second virtual object 704b in the three-dimensional environment 702). In some embodiments, portion 718b is displayed with the maximum amount of transparency (for example, because the first virtual object 704a is located at the same distance from the user 712's current viewpoint within the three-dimensional environment 702 as the second virtual object 704b). In Figure 7G, as portion 718b of the second virtual object 704b is displayed with a greater amount of transparency, the portion of the second virtual object 704b that is different from portion 718b (for example, the remainder of the second virtual object 704b outside portion 718b) continues to be displayed with a second amount of visual prominence. In Figure 7G, any portion of the second virtual object 704b that spatially competes with the first virtual object 704a with respect to the user 712's current viewpoint (for example, being visually obscured by it) is removed from display within the three-dimensional environment 702 (for example, as illustrated and described with reference to Figure 7C) (for example, any portion of the second virtual object overlaps with the first virtual object from the user's viewpoint, and optionally, the second virtual object is within a threshold distance of the first virtual object in terms of depth dimension).

[0227] As shown in Figure 7G, the input is directed to the first virtual object 704a in response to a request to move the first virtual object 704a within the three-dimensional environment 702 (for example, the input shown in Figure 7G has one or more characteristics of the input shown and described with reference to Figure 7E). In some embodiments, Figure 7G shows that the computer system 101 continues to receive the input initiated by the user 712 in Figure 7E. For example, the input shown in Figure 7G is a continuation of the inputs shown in Figures 7E to 7F (for example, the user 712 continues to move the first virtual object 704a within the three-dimensional environment 702 by continuing to direct their line of sight 708 towards the first virtual object 704a while simultaneously performing the air gesture and / or hand movement initiated in Figure 7E). In some embodiments, the input shown in Figure 7G corresponds to a request to move the first virtual object 704a in a second (e.g., and / or third) dimension different from the first dimension relative to the user 712's current viewpoint (for example, the input corresponds to a request to move the first virtual object 704a laterally and / or vertically (e.g., not in the depth direction)).

[0228] Figure 7H shows the movement of the first virtual object 704a in the three-dimensional environment 702 in response to the input provided by user 712 in Figure 7G. Specifically, the first virtual object 704a is moved vertically and horizontally within the three-dimensional environment 702 relative to user 712's current viewpoint. As a result of the movement of the first virtual object 704a in the three-dimensional environment 702 (e.g., relative to user 712's current viewpoint), the spatial competition (e.g., amount of overlap) between the first virtual object 704a and the second virtual object 704b changes (e.g., the first virtual object 704a overlaps the second virtual object 704b by a larger amount (e.g., a larger area of ​​the first virtual object 704a and the second virtual object 704b overlaps relative to user 712's current viewpoint)). In response to the movement of the first virtual object 704a, the computer system 101 changes the display of portion 718b of the second virtual object 704b which is displayed with a greater amount of transparency, and resizes the portion of the second virtual object 704b which is no longer displayed in the three-dimensional environment 702 (for example, changing the display of portion 718b of the second virtual object and resizing the portion of the second virtual object which is no longer displayed in the three-dimensional environment 702 includes one or more properties of redisplaying a first portion of at least a portion of the second virtual object in the three-dimensional environment and discontinuing the display of a third portion of at least a portion of the second virtual object in the three-dimensional environment which is different from the first portion, based on changes in the spatial competition of the second virtual object with respect to the first virtual object during the movement of the first virtual object in the three-dimensional environment, as described with reference to Method 900). As shown in Figure 7H, portion 718b of the second virtual object 704b corresponds to a different portion of the second virtual object 704b because, for example, the different portion of the second virtual object 704b is spatially competitive with the first virtual object 704a with respect to the user 712's current viewpoint (for example, the portion of the second virtual object overlaps with the first virtual object from the user's viewpoint, and optionally the second virtual object is within the threshold distance of the first virtual object in terms of depth dimension).In FIG. 7H, different portions of the second virtual object 704b (e.g., portions of a larger size compared to those shown in FIG. 7G) are prevented from being displayed in the three-dimensional environment 702 because (e.g., compared to what is shown in FIG. 7G, for the current viewpoint of the user 712, a larger portion of the first virtual object 704a spatially competes with the second virtual object 704b (e.g., the portion of the first virtual object overlaps the second virtual object from the user's viewpoint and optionally, the first virtual object is within a threshold distance of the second virtual object in the depth dimension)). In FIG. 7H, as the portion 718b of the second virtual object 704b is displayed with a greater amount of transparency, a portion of the second virtual object 704b that is different from the portion 718b (e.g., the remainder of the second virtual object 704b outside the portion 718b (e.g., optionally, due to a change in the spatial competition between the first virtual object 704a and the second virtual object 704b, a different size with respect to the three-dimensional environment 702 compared to what is shown in FIG. 7G)) continues to be displayed with a second amount of visual salience.

[0229] As shown in Figure 7H, inputs (e.g., air pinch input, air tap input, pinch input, tap input, air pinch and drag input, air drag input, drag input, click and drag input, gaze input, and / or other inputs) are directed to the first virtual object 704a in response to a request to move the first virtual object 704a within the three-dimensional environment 702 (for example, the input shown in Figure 7H has one or more characteristics of the inputs illustrated and described with reference to Figure 7E). In some embodiments, Figure 7F shows that the computer system 101 continues to receive inputs initiated by the user 712 in Figure 7E. For example, the inputs shown in Figure 7F are a continuation of the inputs shown in Figures 7E to 7G (for example, the user 712 continues to move the first virtual object 704a within the three-dimensional environment 702 by continuing to direct their gaze 708 towards the first virtual object 704a while simultaneously performing the air gestures and / or hand movements initiated in Figure 7E). In some embodiments, the input shown in Figure 7H corresponds to a request to move the first virtual object 704a in a first dimension (for example, in the depth direction) relative to the user 712's current viewpoint.

[0230] Figure 7I shows the movement of the first virtual object 704a in the three-dimensional environment 702 in response to the input provided by user 712 in Figure 7H. As shown in the overhead view 710, the first virtual object 704a is moved to a location in the three-dimensional environment 702 that is at a greater distance from user 712's current viewpoint compared to the distance of the second virtual object 704b to user 712's current viewpoint. Furthermore, as shown in the overhead view 710, the first virtual object 704a is displayed in a location within the three-dimensional environment 702 within the spatial location thresholds 716a and 716b. As a result of the movement of the first virtual object 704a in the three-dimensional environment 702 (for example, a change in the spatial position of the first virtual object 704a relative to the user 712's current viewpoint), the spatial location of the first virtual object 704a relative to the second virtual object 704b changes (for example, compared to what is shown in Figure 7H (for example, the first virtual object 704a is no longer located at the same distance from the user 712's current viewpoint as the second virtual object 704b in the three-dimensional environment 702)). Based on the change in the spatial location of the first virtual object 704a relative to the second virtual object 704b, the computer system 101 changes the visual prominence in which the second virtual object 704b is displayed. In some embodiments, the difference between the distance of the first virtual object 704a to the user 712's current viewpoint and the distance of the second virtual object 704b to the user 712's current viewpoint is larger than that shown in Figure 7H (for example, the first virtual object 704a is displayed within the spatial location thresholds 716a and 716b), so the computer system 101 displays the second virtual object 704b with a greater amount of visual prominence compared to that shown in Figure 7H. For example, as shown in Figure 7I, portion 718b is displayed at a reduced size relative to the three-dimensional environment 702 compared to that shown in Figure 7H. In some embodiments, portion 718b is displayed with a reduced amount of transparency compared to that shown in Figure 7H.In Figure 7I, when portion 718b of the second virtual object 704b is displayed with a greater amount of transparency, the portion of the second virtual object 704b that is different from portion 718b (for example, the remainder of the second virtual object 704b outside portion 718b (for example, optionally, due to a change in the size of portion 718b, it is of a different size relative to the three-dimensional environment 702 compared to that shown in Figure 7H)) continues to be displayed with a second amount of visual prominence. In Figure 7I, the portion of the second virtual object 704b that spatially competes with the first virtual object 704a with respect to the user 712's current viewpoint (for example, being visually obscured by it) ceases to be displayed within the three-dimensional environment 702 (for example, as illustrated and described with reference to Figure 7H) (for example, the portion of the second virtual object overlaps with the first virtual object from the user's viewpoint, and optionally, the second virtual object is within the threshold distance of the first virtual object in depth dimension).

[0231] As shown in Figure 7I, inputs (e.g., air pinch input, air tap input, pinch input, tap input, air pinch and drag input, air drag input, drag input, click and drag input, gaze input, and / or other inputs) are directed to the first virtual object 704a in response to a request to move the first virtual object 704a within the three-dimensional environment 702 (for example, the inputs shown in Figure 7I have one or more characteristics of the inputs illustrated and described with reference to Figure 7E). In some embodiments, Figure 7I shows that the computer system 101 continues to receive inputs initiated by the user 712 in Figure 7E. For example, the inputs shown in Figure 7I are a continuation of the inputs shown in Figures 7E to 7H (for example, the user 712 continues to move the first virtual object 704a within the three-dimensional environment 702 by continuing to direct their gaze 708 towards the first virtual object 704a while simultaneously performing the air gestures and / or hand movements initiated in Figure 7E). In some embodiments, the input shown in Figure 7I corresponds to a request to move the first virtual object 704a further by a first dimension (e.g., in the direction of depth) relative to the user 712's current viewpoint.

[0232] Figure 7J shows the movement of the first virtual object 704a in the three-dimensional environment 702 in response to the input provided by user 712 in Figure 7I. As shown in the overhead view 710, the first virtual object 704a is moved to a location in the three-dimensional environment 702 that is at a greater distance from user 712's current viewpoint compared to the distance of the first virtual object 704a to user 712's current viewpoint shown in Figure 7I. As a result of the movement of the first virtual object 704a, the first virtual object 704a is no longer visible in the spatial locations relative to the second virtual object 704b within the spatial location thresholds 716a and 716b. Due to the movement of the first virtual object 704a to a location in the three-dimensional environment 702 that is not within the spatial location thresholds 716a and 716b, the computer system 101 changes the amount of visual prominence in which the second virtual object 704b is displayed. Specifically, as shown in Figure 7J, the second virtual object 704b visually obscures the first virtual object 704a from the user 712's current viewpoint (for example, a larger portion of the first virtual object 704a is not visible from the user 712's current viewpoint compared to what is shown in Figure 7I). In some embodiments, the computer system 101 displays portions of the second virtual object 704b with transparency (for example, different from portion 718b) so that the first virtual object 704a is moved within the three-dimensional environment 702 at a greater distance from the user 712's current viewpoint (compared to, for example, the second virtual object 704b) and not within the spatial location thresholds 716b and 716b. For example, as shown in Figure 7J, portion 718c of the second virtual object 704b is displayed with a greater degree of transparency (for example, in some embodiments, the portion of the first virtual object 704a corresponding to the size of portion 718c is visible to the user 712's current viewpoint (for example, because portion 718c is displayed as transparent)).Optionally, the computer system 101 may discontinue displaying a portion 718c of the second virtual object 704b in the three-dimensional environment 702 (for example, portion 718c corresponds to a smaller size of the portion of the second virtual object 704b that the computer system 101 discontinues displaying while the first virtual object 704a is moved within spatial location thresholds 716a and 716b, for example, as shown in Figures 7F to 7I). In some embodiments, as the first virtual object 704a moves within the three-dimensional environment 702 to a location outside the spatial location thresholds 716b and 716a and at a greater distance from the user 712's current viewpoint than the second virtual object 704b, the second virtual object 704b visually obscures the entire portion of the first virtual object 704a that overlaps with the second virtual object 704b while the first virtual object 704a is moving within the three-dimensional environment 702 (for example, the second virtual object 704b is not displayed along with the transparent portion 718c, and the portion of the first virtual object 704a that overlaps with the second virtual object 704b is not visible to the user 712's current viewpoint).

[0233] As shown in Figure 7J, inputs (e.g., air pinch input, air tap input, pinch input, tap input, air pinch and drag input, air drag input, drag input, click and drag input, gaze input, and / or other inputs) are directed to the first virtual object 704a in response to a request to move the first virtual object 704a within the three-dimensional environment 702 (for example, the inputs shown in Figure 7J have one or more characteristics of the inputs illustrated and described with reference to Figure 7E). In some embodiments, Figure 7J shows that the computer system 101 continues to receive inputs initiated by the user 712 in Figure 7E. For example, the inputs shown in Figure 7I are a continuation of the inputs shown in Figures 7E-7I (for example, the user 712 continues to move the first virtual object 704a within the three-dimensional environment 702 by continuing to direct their gaze 708 towards the first virtual object 704a while simultaneously performing the air gestures and / or hand movements initiated in Figure 7E). In some embodiments, the input shown in Figure 7I corresponds to a request to move the first virtual object 704a further to a first dimension (e.g., in the depth direction) relative to the user 712's current viewpoint. In some embodiments, in response to the input shown in Figure 7J, as the first virtual object 704a moves further away from the user 712's current viewpoint in the three-dimensional environment 702, the computer system 101 continues to change the visual prominence of the second virtual object 704b. For example, the size of portion 718c relative to the three-dimensional environment 702 continues to change (e.g., as the first virtual object 704a is moved further away from the user 712's current viewpoint in the three-dimensional environment 702, the size of portion 718c (e.g., the amount of the first virtual object 704a visible from the user 712's current viewpoint) is reduced relative to the three-dimensional environment 702).In some embodiments, as the first virtual object 704a is moved to a location within the three-dimensional environment 702 within spatial location thresholds 716a and 716b, the computer system 101 changes the visual prominence of the second virtual object 704b so that the first virtual object 704a is fully visible from the user 712's current viewpoint (for example, so that the computer system 101 stops displaying the portion of the second virtual object 704b that is spatially competing with the first virtual object 704a and displays the portion 718b with a greater amount of transparency, as illustrated and described with reference to Figures 7F to 7I).

[0234] Figure 7K shows a second virtual object 704b displayed with the visual prominence of a second quantity and a first virtual object 704a displayed with the visual prominence of a first quantity (for example, the movement of a first virtual object 704a in a three-dimensional environment 702 follows an input corresponding to the continued movement of the first virtual object 704a provided by user 712 in Figures 7E to 7J), based on user 712 ceasing to provide one or more inputs illustrated and described with reference to Figures 7E to 7J (for example, the movement of a first virtual object 704a in a three-dimensional environment 702 follows an input corresponding to the continued movement of the first virtual object 704a provided by user 712 in Figures 7E to 7J). In some embodiments, user 712 ceasing to provide air gestures and / or hand movements relative to the three-dimensional environment 702 (for example, by a hand 720 as shown in Figures 7E to 7J). In some embodiments, displaying the second virtual object 704b with a second amount of visual splendor includes one or more characteristics of displaying the second virtual object 704b with a second amount of visual splendor, as illustrated with reference to Figure 7G (for example, the portion of the second virtual object 704b that overlaps with the first virtual object 704a is not displayed in the three-dimensional environment 702, and the portion 718b is displayed with a greater amount of transparency (compared to displaying the second virtual object 704b with a first amount of visual splendor)). In some embodiments, displaying a second virtual object 704b with a second amount of visual splendor and a first virtual object 704a with a first amount of visual splendor, based on the user 712 ceasing to provide one or more inputs illustrated and described with reference to Figures 7E to 7K, includes one or more properties that reduce the visual splendor of at least a portion of the second virtual object to a visual splendor less than a third visual splendor to a three-dimensional environment, in response to detecting the end of the first input, as described with reference to Method 900.In some embodiments, in Figure 7K, the first virtual object 704a is displayed with a first visual splendor because the user 712 has previously directed input to the first virtual object 704a (for example, has not directed input to the second virtual object since then (for example, the first virtual object 704a is the active virtual object)), and the second virtual object 704b is displayed with a second visual splendor. In some embodiments, displaying the first virtual object 704a with a first visual splendor and the second virtual object 704b with a second visual splendor in Figure 7K includes one or more characteristics of displaying the first virtual object with a first visual splendor, regardless of whether the first virtual object overlaps with other virtual objects, according to the determination that the first virtual object is the active virtual object, as described with reference to Method 800. In some embodiments, in response to input provided by user 712 directed towards a second virtual object 704b (for example, as illustrated and described with reference to Figure 7C) or optionally towards an empty space in the three-dimensional environment 702 (for example, as illustrated and described with reference to Figure 7D), the computer system 101 displays the second virtual object 704b with a first amount of visual prominence and the first virtual object 704a with a second amount of visual prominence (for example, the second virtual object is made an active virtual object in response to the input, and the first virtual object 704a is not displayed with a portion 718a that includes a greater amount of transparency because the first virtual object 704a is located in the three-dimensional environment 702 at a greater distance from the user 712's current viewpoint than the second virtual object 704b).

[0235] Figure 7L shows a first virtual object 704c and a second virtual object 704d displayed in the three-dimensional environment 702. In some embodiments, the first virtual object 704c has one or more characteristics of the first virtual object 704a, which is illustrated and described with reference to Figures 7A to 7K. In some embodiments, the second virtual object 704d has one or more characteristics of the second virtual object 704b, which is illustrated and described with reference to Figures 7A to 7K. As shown in the overhead view 710 of Figure 7L, the difference between the distance of the first virtual object 704c from the user 712's current viewpoint and the distance of the second virtual object 704d from the user 712's current viewpoint is greater than the difference between the distance of the first virtual object 704a from the user 712's current viewpoint and the distance of the second virtual object 704b from the user 712's current viewpoint, as shown in Figures 7A to 7E (for example, the distance of the first virtual object 704c to the second virtual object 704d in Figure 7L is greater than the distance of the first virtual object 704a to the second virtual object 704b shown in Figures 7A to 7E). As the difference between the distance of the first virtual object 704c from the user 712's current viewpoint in Figure 7L and the distance of the second virtual object 704d from the user 712's current viewpoint is different from the difference between the distance of the first virtual object 704a from the user 712's current viewpoint and the distance of the second virtual object 704b from the user 712's current viewpoint in Figures 7A to 7E, the threshold overlap amount between the first virtual object 704c and the second virtual object 704d shown in Figure 7L (for example, for displaying separate virtual objects with the visual prominence of the second quantity) is different from the threshold overlap amount between the first virtual object 704a and the second virtual object 704b shown in Figures 7B to 7D.

[0236] As shown in the overhead view 710 of Figure 7L, the overlapping area threshold 714a and the overlapping angle threshold 714b are reduced compared to those shown in Figures 7B to 7D (for example, because the difference between the distance of the first virtual object 704c from the user 712's current viewpoint and the distance of the second virtual object 704d from the user 712's current viewpoint is greater than the difference between the distance of the first virtual object 704a from the user 712's current viewpoint and the distance of the second virtual object 704b from the user 712's current viewpoint). In some embodiments, the threshold overlap amount (e.g., the overlapping area 714a and / or the overlapping angle threshold 714b) is increased as the difference between the distance of the first virtual object 704c from the user 712's current viewpoint and the distance of the second virtual object 704d from the user 712's current viewpoint is greater (e.g., compared to the first virtual object 704a and the second virtual object 704b). In some embodiments, modifying the threshold overlap amount based on the difference in distance between a first individual virtual object (e.g., first virtual object 704c) and a second individual virtual object (e.g., second virtual object 704d) from the user 712's current viewpoint includes one or more properties such that the threshold amount is a first threshold amount and / or a second threshold amount, depending on whether the difference in distance between the first virtual object and the user's current viewpoint and the difference in distance between the second virtual object and the user's current viewpoint are a first distance or a second distance, as described with reference to Method 800.

[0237] Figure 7M shows a second virtual object 704d displayed with a second quantity of visual prominence and a first virtual object 704c displayed with a first quantity of visual prominence after a change in the user 712's current viewpoint relative to the three-dimensional environment 702. As shown in the overhead view 710, the user 712's current viewpoint has changed its spatial arrangement (e.g., location and orientation) relative to the three-dimensional environment 702 (e.g., compared to those shown in Figures 7A to 7L). In some embodiments, the movement of the user 712's current viewpoint has one or more characteristics of the movement of the user's current viewpoint from a first viewpoint relative to the three-dimensional environment to a second viewpoint relative to the three-dimensional environment, as described with reference to Method 800. As shown in the overhead view 710, the movement of the user 712's current viewpoint causes the first virtual object 704c to overlap the second virtual object 704d beyond a threshold overlap amount (e.g., beyond a threshold overlap angle 714b relative to the user 712's current viewpoint). Based on the user 712's current viewpoint shift causing the first virtual object 704c to overlap the second virtual object 704d by a threshold amount, the computer system 101 changes the visual prominence of the second virtual object 704d (for example, because input was previously directed to the first virtual object 704c before or during the user 712's current viewpoint shift (for example, because the first virtual object 704c is the active virtual object)).In some embodiments, according to input previously directed to the second virtual object 704d before or during the movement of the user 712's current viewpoint (e.g., the second virtual object 704d is the active virtual object), the computer system 101 displays the first virtual object 704c and the second virtual object 704d with a second amount of visual prominence (e.g., the computer system 101 ceases to display the first portion of the first virtual object 704c that spatially competes with the second virtual object 704d with respect to the user 712's current viewpoint (e.g., the first virtual object overlaps with the second virtual object from the user's viewpoint, and optionally the first virtual object is within a threshold distance of the second virtual object in depth dimension), and displays the second portion of the first virtual object 704c (e.g., including one or more properties of portion 718a illustrated and described with reference to Figure 7D) that surrounds the first portion with a greater amount of transparency).

[0238] Figure 7N shows a first virtual object 704e displayed with the visual prominence of a first quantity, a second virtual object 704f displayed with the visual prominence of a second quantity, and a third virtual object 704g displayed with the visual prominence of a second quantity in a three-dimensional environment 702. In some embodiments, the first virtual object 704e, the second virtual object 704f, and the third virtual object 704g have one or more characteristics of the first virtual object 704a and / or the second virtual object 704b described above. As shown in the overhead view 710, the first virtual object 704e is displayed at a first distance from the user 712's current viewpoint, the second virtual object 704f is displayed at a second distance different from the first distance from the user 712's current viewpoint, and the third virtual object 704g is displayed at a third distance different from the first and second distances from the user 712's current viewpoint. As shown in the overhead view 710, based on the fact that the difference between the distance of the first virtual object 704e from the user 712's current viewpoint and the distance of the second virtual object 704f from the user 712's current viewpoint is the first distance, the threshold overlap amount between the first virtual object 704e and the second virtual object 704f corresponds to the overlap threshold amount 714a-1 of the first region and the overlap threshold amount 714b-1 of the first angle. As shown in the overhead view 710, based on the fact that the difference between the distance of the first virtual object 704e from the user 712's current viewpoint and the distance of the third virtual object 704g from the user 712's current viewpoint is a second distance different from the first distance, the threshold overlap amount between the first virtual object 704e and the third virtual object 704g corresponds to the overlap threshold amount 714a-2 of the second region, which is different from the overlap threshold amount 714a-1 of the first region, and the overlap threshold amount 714b-2 of the second angle, which is different from the overlap threshold amount 714b-1 of the first angle. In the overhead view 710, the overlap threshold amount 714a-1 of the first region is smaller than the overlap threshold amount 714a-2 of the second region. In some embodiments, the first overlap region threshold amount 714a-1 is larger than the second overlap region threshold amount 714a-2, as the first distance is smaller than the second distance.In the overhead view 710, the first overlap angle threshold amount 714b-1 is smaller than the second overlap angle threshold amount 714b-2. In some embodiments, the first overlap angle threshold amount 714b-1 is larger than the second overlap angle threshold amount 714b-2, as the first distance is smaller than the second distance. As shown in Figure 7N (for example, in the overhead view 710), the first virtual object 704e overlaps with the second virtual object 704f beyond the first threshold amount (e.g., the first overlap area threshold amount 714a-1 and / or the first overlap angle threshold amount 714b-1) (e.g., has spatial competition), and overlaps with the third virtual object 704g beyond the second threshold amount (e.g., the second overlap area threshold amount 714a-2 and / or the second overlap angle threshold amount 714b-2). As the first virtual object 704e overlaps with the second virtual object 704f and the third virtual object 704g beyond the overlap of their respective threshold amounts, the computer system 101 displays the second virtual object 704f and the third virtual object 704g with the visual prominence of the second amount (for example, because the user 712's attention is directed to the first virtual object 704e).

[0239] As shown in Figure 7N, the input is directed to a first virtual object 704e. In some embodiments, the input corresponds to a request to move the first virtual object 704a to a first dimension in a three-dimensional environment (for example, in the depth direction relative to the user 712's current viewpoint). In some embodiments, the input shown in Figure 7N has one or more characteristics of the input shown and described with reference to Figure 7E.

[0240] Figure 7O shows the movement of the first virtual object 704e in the three-dimensional environment 702 in response to the input provided by user 712 in Figure 7N. As shown in the overhead view 710, the first virtual object 704e is moved a greater distance relative to user 712's current viewpoint in the three-dimensional environment 702 compared to the second virtual object 704f and the third virtual object 704g. In some embodiments, the computer system 101 changes the visual prominence of the second virtual object 704f and the third virtual object 704g based on the spatial location of the first virtual object 704e relative to the second virtual object 704f and the third virtual object 704g during the movement of the first virtual object 704e relative to user 712's current viewpoint (e.g., a change in spatial arrangement). In some embodiments, the computer system 101 modifies the visual splendor of the second virtual object 704f independently of (e.g., without regard to) the spatial location of the first virtual object 704e relative to the third virtual object 704g. In some embodiments, the computer system 101 modifies the visual splendor of the third virtual object 704g independently of (e.g., without regard to) the spatial location of the first virtual object 704e relative to the second virtual object 704f. As shown in the overhead view 710, the first spatial location thresholds 716a-1 and 716b-1 are shown for the location of the second virtual object 704f in the three-dimensional environment 702, and the second spatial location thresholds 716a-2 and 716b-2 are shown for the location of the third virtual object 704g in the three-dimensional environment. In some embodiments, the spatial location thresholds 716a-1, 716a-2, 716b-1, and 716b-2 have one or more characteristics of the spatial location thresholds 716a and 716b, as illustrated and described with reference to Figures 7E to 7J.

[0241] In some embodiments, the computer system 101 reduces the visual prominence of the second virtual object 704f by a first amount based on the spatial location of the first virtual object 704e relative to the second virtual object 704f. For example, as shown in Figure 7O, reducing the visual prominence of the second virtual object 704f by a first amount includes ceasing to display the portion of the second virtual object 704f that spatially competes with the first virtual object 704e (for example, the portion of the second virtual object 704f has a size corresponding to the size of the portion of the first virtual object 704e that overlaps with the second virtual object 704f) (for example, the portion of the second virtual object overlaps with the first virtual object from the user's viewpoint, and optionally, the second virtual object is within a threshold distance of the first virtual object in depth dimension). For example, as shown in Figure 7O, reducing the visual prominence of the second virtual object 704f by a first amount includes displaying a portion 724a (e.g., including one or more properties of the above-mentioned portions 718a and / or 718b) that has a first size relative to the three-dimensional environment 702 with a greater amount of transparency compared to displaying portion 724a with the first amount of visual prominence. In some embodiments, the computer system 101 reduces the visual prominence of the third virtual object 704g by a second amount less than the first amount, based on the spatial location of the first virtual object 704e relative to the third virtual object 704g (for example, the second amount is less than the first amount because the difference in distance between the first virtual object 704e and the second virtual object 704f from the user 712's current viewpoint is smaller than the difference in distance between the first virtual object 704e and the third virtual object 704g from the user 712's current viewpoint).For example, as shown in Figure 7O, reducing the visual prominence of the third virtual object 704g by a second amount includes ceasing to display the portion of the third virtual object 704g that spatially competes with the first virtual object 704e (for example, the portion of the third virtual object 704g has a size corresponding to the size of the portion of the first virtual object 704e that overlaps with the second third virtual object 704g) (for example, the portion of the third virtual object overlaps with the first virtual object from the user's viewpoint, and optionally, the third virtual object is within the threshold distance of the first virtual object in terms of depth dimension). For example, as shown in Figure 7O, reducing the visual prominence of the third virtual object 704g by a second amount includes displaying a portion 718b (e.g., including one or more properties of the above portions 718a and / or 724b) that has a second size smaller than the first size to a three-dimensional environment 702 having a greater amount of transparency compared to displaying portion 724b with a first amount of visual prominence (for example, the second size is smaller than the first size because the difference in distance between the first virtual object 704e and the second virtual object 704f from the user 712's current viewpoint is smaller than the difference in distance between the first virtual object 704e and the third virtual object 704g from the user 712's current viewpoint).

[0242] As shown in Figure 70, the input is directed to the first virtual object 704e in response to a request to move the first virtual object 704e within the three-dimensional environment 702 (for example, the input shown in Figure 70 has one or more characteristics of the input shown and described with reference to Figure 7E). In some embodiments, as the first virtual object 704e moves to a different spatial location within the three-dimensional environment 702 relative to the second virtual object 704f and / or the third virtual object 704g, the computer system 101 changes the visual prominence of the second virtual object 704f and / or the third virtual object 704g during the movement of the first virtual object 704e. For example, following the movement of the first virtual object 704e, which includes displaying the first virtual object 704e in a location within the three-dimensional environment 702 that is within the first spatial location thresholds 716a-1 and 716b-1 but not within the second spatial location thresholds 716a-2 and 716b-2, the third virtual object 704g visually obscures the first virtual object 704e from the user 712's current viewpoint, and the second virtual object 704f from the user 712's current viewpoint. The first virtual object 704e is not visually obscured from the viewpoint (for example, the computer system 101 does not cease displaying the portion of the second virtual object 704f corresponding to the first portion of the first virtual object 704e that overlaps with the second virtual object 704f, nor does it cease displaying the portion of the third virtual object 704f corresponding to the second portion of the first virtual object 704e that overlaps with the second virtual object 704 from the user 712's current viewpoint).For example, as the first virtual object 704e moves, including displaying the first virtual object 704e at a location in the three-dimensional environment 702 within the second spatial location thresholds 716a-2 and 716b-2 rather than within the first spatial location thresholds 716a-1 and 716b-1, the second virtual object 704f is not displayed with its transparency portion 724a, and the third virtual object 704g is displayed with its transparency portion 724b, (for example, because the first virtual object 704e is displayed at a location in the three-dimensional environment corresponding to a closer distance from the user 712's current viewpoint compared to the second virtual object 704f, rather than within the spatial location thresholds 716a-1 and 716b-1)

[0243] Figure 7P shows that user 712 performs an input corresponding to attention directed towards the second virtual object 704f. As shown in Figure 7P, the input corresponds to a line of sight 708 (represented by the eye in Figure 7P) directed towards the virtual object 704f while user 712 simultaneously performs an air gesture (e.g., an air pinch as shown in Figure 7P) with hand 720 (e.g., for a threshold period (e.g., 0.1, 0.2, 0.5, 1, 2, 5, or 10 seconds)). In response to the input corresponding to attention directed towards the second virtual object 704f, the computer system 101 increases the visual splendor of the second virtual object 704f (e.g., compared to what is shown in Figure 7O (e.g., up to the visual splendor of the first quantity)) and decreases the visual splendor of the first virtual object 704e (e.g., compared to what is shown in Figure 7O (e.g., up to the visual splendor of the first quantity)). For example, in response to input corresponding to attention directed towards the second virtual object 704f, the computer system 101 increases the opacity, brightness, hue, saturation, and / or sharpness of the second virtual object 704f and decreases the opacity, brightness, hue, saturation, and / or sharpness of the first virtual object 704e. Furthermore, as shown in Figure 7P, in response to input corresponding to attention directed towards the virtual object 704f, the computer system 101 maintains the display of the third virtual object 704g with the same amount of visual saturation (e.g., a second amount and / or a reduced amount (e.g., compared to the amount of visual saturation at which the third virtual object 704g is displayed in Figure 7O)). In some embodiments, the computer system 101 maintains the display of the third virtual object 704g with the second amount of visual saturation as the first virtual object 704e continues to overlap the third virtual object 704g beyond a threshold amount.In Figure 7P, portion 724b of the third virtual object 704g is displayed with a greater degree of transparency compared to that shown in Figure 7O (for example, because user 712 terminates the input shown in Figure 7O corresponding to a request to move the virtual object 704e, thereby displaying the third virtual object 704g with a second amount of increased and / or maximum size of visual prominence) (for example, portion 724b is displayed with an increased amount of transparency and / or a larger size). In some embodiments, the computer system 101 does not display portion 724b with an increased amount of transparency in response to input corresponding to attention directed towards the second virtual object 704f (for example, to make at least a portion of the first virtual object 704e visually obscured by the third virtual object 704g from user 712's current viewpoint) (for example, the computer system 101 does not cease displaying portion 724b in the three-dimensional environment 702).

[0244] As shown in Figure 7P (for example, Figures 7Q to 7X), the first virtual object 704e, the second virtual object 704f, and the third virtual object 704g are displayed together with virtual elements 740a, 740b, and 740c, respectively. In some embodiments, virtual elements 740a to 740c are selectable by the user 712 to move the virtual objects 704e to 704g within the three-dimensional environment 702. For example, to move the virtual object 704f within the three-dimensional environment 702, the user 712 provides input corresponding to attention (e.g., gaze) directed towards the virtual element 704a, while simultaneously performing an air gesture (e.g., an air pinch as shown in Figure 7P) that includes moving the user 712's hand (e.g., hand 720) relative to the three-dimensional environment 702. As shown in Figure 7P, virtual elements 740a to 740c are displayed with virtual affordances (for example, to the right of each individual virtual element 740a to 740c). In some embodiments, these virtual affordances are selectable by the user 712 (for example, by input corresponding to attention directed towards virtual affordances while performing an air gesture) to discontinue the display of individual virtual objects in the three-dimensional environment 702. For example, in response to user input corresponding to the selection of a virtual element 740a associated with a virtual affordance, the computer system 101 discontinues the display of a first virtual object 704e in the three-dimensional environment.

[0245] Figure 7Q illustrates that user 712 performs an input corresponding to attention directed towards a third virtual object 704g. As shown in Figure 7Q, the input includes a gaze 708 directed towards the virtual object 704g while user 712 performs an air gesture (e.g., an air pinch as shown in Figure 7Q) with hand 720 (e.g., for a threshold period (e.g., 0.1, 0.2, 0.5, 1, 2, 5, or 10 seconds)). In response to detecting the input shown in Figure 7Q, the computer system 101 displays the third virtual object 704g with an increased amount of visual splendor (e.g., the first amount of visual splendor) compared to that shown in Figure 7P. For example, in Figure 7Q, the third virtual object 704g is displayed with greater amounts of opacity, brightness, hue, saturation, and / or sharpness compared to that shown in Figure 7P. Furthermore, in response to detecting the input shown in Figure 7Q, the computer system 101 maintains the display of the second virtual object 704f with the same amount of visual splendor as shown in Figure 7P (e.g., the visual splendor of the first amount). For example, the computer system 101 does not reduce the visual splendor of the second virtual object 704f in response to the input shown in Figure 7Q because the third virtual object 704g does not overlap with the second virtual object 704f by more than a threshold amount. As shown in Figure 7Q, in response to detecting the input shown in Figure 7Q, the computer system 101 maintains the display of the first virtual object 704e with the same amount of visual splendor as shown in Figure 7P (e.g., the visual splendor of the second amount). For example, the computer system 101 maintains the display of the first virtual object 704e with a reduced amount of visual splendor because the first virtual object 704e overlaps with the third virtual object 704g (e.g., displayed with increased visual splendor) by more than a threshold amount. Furthermore, for example, while the input shown in Figure 7Q is detected, the computer system 101 maintains the display of the first virtual object 704e with a reduced amount of visual splendor because the second virtual object 704f, which was previously displayed with an increased amount of visual splendor, continues to overlap with the first virtual object 704e beyond a threshold amount.

[0246] Figure 7R shows an alternative embodiment of Figure 7P, in which user 712 performs an input corresponding to attention directed towards the second virtual object 704f when the second virtual object 704f does not overlap the first virtual object 704e by a threshold amount. As shown in Figure 7R, in response to detecting an input corresponding to attention directed towards the second virtual object 704f, the computer system 101 displays the second virtual object 704f with an increased amount of visual splendor (e.g., the visual splendor of the first amount) relative to the three-dimensional environment 702. Furthermore, as shown in Figure 7R, in response to detecting an input corresponding to attention directed towards the second virtual object 704f, the computer system 101 maintains the display of the first virtual object 704e with the first amount of visual splendor and the third virtual object 704g with the second amount of visual splendor. In some embodiments, the computer system 101 maintains the visibility of the first virtual object 704e at a first visual splendor because the second virtual object 704f to which the input shown in Figure 7R is directed does not overlap the first virtual object 704e by more than a threshold amount. In some embodiments, the computer system 101 maintains the visibility of the third virtual object 704g at a second visual splendor because, while the input shown in Figure 7R is detected, the first virtual object 704e continues to overlap the third virtual object 704g by more than a threshold amount, and the first virtual object 704e is last displayed at a first visual splendor when the input shown in Figure 7R is detected (for example, the first virtual object 704e is displayed at a first visual splendor, and there is an overlap between the first virtual object 704e and the third virtual object 704g that exceeds a threshold amount, so the computer system 101 displays the virtual object 704g at a second visual splendor).In some embodiments, portion 724b is displayed with increased and / or maximum size of increased transparency (corresponding to an increased amount of transparency and / or increased size relative to the three-dimensional environment 702) because the input corresponding to the request to move the first virtual object 704e in the three-dimensional environment 702 as shown in Figure 70 is terminated (compared to the decreased and / or minimum size of increased transparency of portion 724b shown in Figure 70) during the movement of the first virtual object 704e relative to a third virtual object 704g in the three-dimensional environment 702.

[0247] Figure 7S shows a number of virtual elements displayed within the second virtual object 704f. In particular, virtual elements 730a to 730d are contained within the second virtual object 704f in the three-dimensional environment 702. In some embodiments, virtual elements 730a to 730d have one or more characteristics of a virtual element that is moved in the three-dimensional environment in response to the detection of a second input, as described with reference to Method 800. For example, virtual elements 730a to 730d are content such as images, files, documents, and / or text. In some embodiments, virtual elements 730a to 730d are content associated with a separate application associated with the second virtual object 704f (e.g., a file (e.g., image) storage application). In some embodiments, virtual elements 730a to 730d are displayed in one or more locations in the three-dimensional environment 702 that are not associated with a separate virtual object (e.g., virtual elements 730a to 730d are not contained within virtual objects 704e to 704g in the three-dimensional environment 702). It should be understood that while four virtual elements are displayed within the second virtual object 704f, more or fewer virtual elements may also be displayed. In some embodiments, the second virtual object 704f includes a user interface that can be scrolled by the user 712 (e.g., via user input) to display one or more additional virtual elements that were not previously displayed within the second virtual object 704f.

[0248] As shown in Figure 7S, user 712 performs an input directed towards the virtual element 730a. The input includes a gaze 708 directed towards the virtual element 730a while an air gesture (e.g., an air pinch) is performed with hand 720 (e.g., the air gesture is performed for a threshold period (e.g., 0.1, 0.2, 0.5, 1, 2, 5, or 10 seconds)). In some embodiments, the input shown in Figure 7S corresponds to the selection of the virtual element 730a. In some embodiments, upon selection of the virtual element 730a, user 712 can move the virtual element 730a relative to the three-dimensional environment 702 by maintaining an air gesture (e.g., an air pinch as shown in Figure 7S) and performing a movement with hand 720 relative to the three-dimensional environment 702.

[0249] Figure 7T shows a user 712 performing inputs corresponding to a request to move a virtual element 730a in a three-dimensional environment 702 toward a third virtual object 704g. In some embodiments, the inputs shown in Figure 7T are a continuation of the inputs started in Figure 7S (for example, the user 712 maintains an air gesture performed by the hand 720 while moving the hand 720 toward the three-dimensional environment 702). In some embodiments, the movement of the virtual element 730a-2 in the three-dimensional environment 702 corresponds to the movement of the hand 720 toward the three-dimensional environment 702 (for example, the user 712 moves the hand 720 toward a location in the three-dimensional environment 702 corresponding to the third virtual object 704g). As shown in Figure 7T, when the computer system 101 detects an input corresponding to a request to move a virtual element 730a in the three-dimensional environment 702 toward a third virtual object 704g, the computer system 101 maintains the visibility of the first virtual object 704e with an increased amount of visual splendor (e.g., the visual splendor of the first amount), the second virtual object 704f with an increased amount of visual splendor, and the third virtual object 704g with a reduced amount of visual splendor (e.g., the visual splendor of the second amount).

[0250] In some embodiments, while moving a virtual element 730a within a three-dimensional environment 702 according to the input shown in Figure 7T, the computer system 101 changes the visual appearance of the virtual element 730a. In some embodiments, in Figure 7S, the virtual element 730a is displayed with a first visual appearance (for example, the first visual appearance of the virtual element 730a is referred to as 730a-1 in Figure 7S). For example, the virtual element 730a-1 shown in Figure 7S includes a first size, shape, and / or amounts of opacity, brightness, color, saturation, and / or sharpness. In some embodiments, in Figure 7T, the virtual element 730a is displayed with a second visual appearance different from the first visual appearance (for example, the second visual appearance of the virtual element 730a is referred to as 730a-2 in Figure 7T). For example, the virtual element 730a-2 shown in Figure 7T includes a second size, shape, and / or amounts of opacity, brightness, color, saturation, and / or sharpness (for example, the virtual element 730a-2 shown in Figure 7T is represented with a smaller size, a different shape, and / or more or less opacity, brightness, color, saturation, and / or sharpness compared to the virtual element 730a-1 shown in Figure 7S).

[0251] Figure 7U illustrates the movement of a virtual element 730a to a third virtual object 704g within a three-dimensional environment 702. As shown in Figure 7U, user 712 continues to provide inputs corresponding to requests to move the virtual element 730a toward the third virtual object 704g, as shown in Figure 7T (or, for example, starting in Figure 7S). In some embodiments, during the movement of the virtual element 730a within the three-dimensional environment 702, the computer system 101 moves the virtual element 730a toward the third virtual object 704g (as described, for example, with reference to Method 800) according to the fact that the virtual element 730a is within a threshold distance (e.g., 0.01, 0.05, 0.1, 0.2, 0.5, or 1 m) of the third virtual object 704g. As shown in Figure 7U, the virtual element 730a appears in the location within the three-dimensional environment 702 corresponding to the third virtual object 704g. For example, the computer system 101 moves the virtual element 730a to a location in the three-dimensional environment 702 corresponding to the third virtual object 704g, according to the fact that the virtual element 730a is within a threshold distance of the third virtual object 704g during the movement of the virtual element 730a in the three-dimensional environment 702. As shown in Figure 7U, as the computer system 101 moves the virtual element 730a to a location in the three-dimensional environment 702 corresponding to the third virtual object 704g, the computer system 101 maintains the visibility of the third virtual object 704g with a reduced amount of visual splendor. Furthermore, as shown in Figure 7U, the computer system 101 maintains the visibility of the first virtual object 704e and the second virtual object 704f with an increased amount of visual splendor.

[0252] As shown in Figure 7U, the virtual element 730a is displayed together with a visual item 732. In some embodiments, the visual item 732 corresponds to visual feedback displayed in the three-dimensional environment 702 as the virtual element 730a is moved to a location in the three-dimensional environment 702 corresponding to a third virtual object 704g. In some embodiments, as the visual item 732 is displayed in the three-dimensional environment 702, the computer system 101 adds the virtual element 730a to the third virtual object 704g (as described, for example, with reference to Figure 7V) as the user 712 completes an input corresponding to a request to move the virtual element 730a toward the third virtual object 704g. Displaying the visual item 732 within the three-dimensional environment 702 means that if user 712 ceases providing the input shown in Figure 7U (for example, user 712 ceases performing an air pinch with hand 720), the computer system 101 notifies user 712 that it will add the virtual element 730a to the third virtual object 704g (for example, giving user 712 the opportunity to move the virtual element 730a to a different location within the three-dimensional environment 702 that is outside a threshold distance from the third virtual object 704g before terminating the input).

[0253] Figure 7V shows the virtual element 730a added to the third virtual object 704g after the user 712 has completed input corresponding to a request to move the virtual element 730a toward the third virtual object 704g. In some embodiments, adding the virtual element 730a to the third virtual object 704g includes one or more characteristics of adding a virtual element to a separate virtual object in a three-dimensional environment, as described with reference to Method 800. For example, as shown in Figure 7V, the virtual element 730a is displayed within the third virtual object 704g. Furthermore, in Figure 7V, the computer system 101 maintains the display of the third virtual object 704g with the second amount of visual prominence when the virtual element 730a is added to the third virtual object 704g. In addition, as shown in Figure 7V, the computer system 101 maintains the display of the first virtual object 704e and the second virtual object 704f with the increased amount of visual prominence. In some embodiments, after adding the virtual element 730a to the third virtual object 704g, the computer system 101 displays the third virtual object 704g with an increased amount of visual splendor (e.g., a first amount of visual splendor, or a third amount of visual splendor greater than the second amount, as described with reference to Method 800). For example, the computer system 101 does not display the third virtual object 704g with an increased amount of visual splendor before or while the virtual element 730a is added to the third virtual object 704g (e.g., the computer system 101 maintains the display of the third virtual object 704g with a second amount of visual splendor). In some embodiments, as the third virtual object 704g is displayed with an increased amount of visual splendor, the computer system 101 displays the first virtual object 704e with a reduced amount of visual splendor (e.g., a second amount of visual splendor).

[0254] In some embodiments, adding a virtual element 730a to a third virtual object 704g includes changing the visual appearance of the virtual element 730a. For example, the virtual element 730a is displayed with a third visual appearance (for example, the third visual appearance of the virtual element 730a is referred to as 730-3 in Figure 7V). Displaying the virtual element 730a with a third visual appearance is optionally different from displaying the virtual element 730a with a first visual appearance and / or a second visual appearance. In some embodiments, the third visual appearance of the virtual element 730a includes displaying the virtual element 730a with lower opacity, color, brightness, saturation, and / or sharpness compared to displaying the virtual element 730a in the first visual appearance (for example, in Figure 7V, the virtual element 730a is contained within a separate virtual object that is displayed with lower opacity, color, brightness, saturation, and / or sharpness compared to the separate virtual object that contained the virtual element 730a when the virtual element 730a was displayed in the first visual appearance). In some embodiments, the virtual element 730a-3 includes a different size and / or shape compared to the virtual element 730-2 (for example, shown in Figures 7T to 7U).

[0255] Figure 7W shows an alternative embodiment from Figure 7U, which includes a computer system 101 that displays a third virtual object 704g with an increased amount of visual splendor (e.g., a first amount of visual splendor, or a third amount greater than a second amount of visual splendor, as described with reference to Method 800) according to one or more criteria that are met while a virtual element 730a is moving within a three-dimensional environment 702. In some embodiments, one or more criteria have one or more characteristics of one or more first criteria described with reference to Method 800. In some embodiments, the computer system 101 displays the third virtual object 704g with an increased amount of visual splendor according to the fact that the virtual element 730a is within a threshold distance of the third virtual object 704g (e.g., a threshold period (e.g., 0.1, 0.2, 0.5, 1, 2, 5, or 10 seconds)) while the virtual element 730a is moving within the three-dimensional environment 702. In some embodiments, the computer system 101 displays a third virtual object 704g with increased visual prominence as the movement of the virtual element 730a is less than a threshold amount of movement (for example, less than 0.01, 0.05, 0.1, 0.2, 0.5, or 1 m relative to the three-dimensional environment 702 over 0.1, 0.2, 0.5, or 10 seconds, or less than an average speed of 0.01, 0.02, 0.05, 0.1, 0.2, 0.5, or 1 m / s over 0.1, 0.2, 0.5, or 10 seconds). For example, while an input corresponding to a request to move virtual element 730a toward virtual object 704g is being executed, virtual element 730a appears in the location in the three-dimensional environment 702 corresponding to the third virtual object 704g beyond a threshold period (e.g., 0.1, 0.2, 0.5, 1, 2, 5, or 10 seconds). As virtual element 730a appears in the location in the three-dimensional environment 702 corresponding to the third virtual object 704g beyond the threshold period, computer system 101 displays the third virtual object 704g with an increased amount of visual prominence.In some embodiments, the computer system 101 displays the third virtual object 704g with an increased amount of visual splendor according to a threshold amount of the third virtual object 704g being visible in the three-dimensional environment 702 (as described, for example, by reference to one or more first criteria, including criteria that are satisfied according to the first portion of an individual virtual object being visible in the three-dimensional environment, as described in Method 800). As shown in Figure 7W, as the computer system 101 displays the third virtual object 704g with an increased amount of visual splendor, the computer system 101 displays the first virtual object 704e (e.g., still overlapping the third virtual object 704g above the threshold amount) with a reduced amount of visual splendor (e.g., the visual splendor of a second amount). Furthermore, as shown in Figure 7W, the computer system 101 maintains the display of the second virtual object 704f with an increased amount of visual saturation (for example, because the second virtual object 704f is displayed with an increased amount of visual saturation before the change in visual saturation of the first virtual object 704e and the third virtual object 704g, and the second virtual object 704f does not overlap with the first virtual object 704e or the third virtual object 704g beyond a threshold amount).

[0256] Figure 7X shows that user 712 performs inputs corresponding to a request to move a virtual element 730a in the three-dimensional environment 702 away from the third virtual object 704g. In some embodiments, the inputs shown in Figure 7X are a continuation of the inputs shown in Figures 7T and 7W, which were initiated in Figure 7S (for example, user 712 maintains an air gesture (e.g., an air pinch) and performs a move with hand 720 relative to the three-dimensional environment 702). As shown in Figure 7X, the virtual element 730a is moved to a location in the three-dimensional environment 702 that does not correspond to the third virtual object 704g (for example, user 712 moves the virtual element 730a away from the third virtual object 704g after the computer system 101 has moved the virtual element 730a to the third virtual object 704g, in accordance with the fact that the virtual element 730a is within a threshold distance of the third virtual object 704g). In some embodiments, user 712 increases the visual prominence of the third virtual object 704g by moving the virtual element 730a away from the third virtual object 704g after one or more criteria are met (as described with reference to, for example, Figure 7W). As the virtual element 730a is moved away from the location in the three-dimensional environment 702 corresponding to the third virtual object 704g, as shown in Figure 7X, the computer system 101 maintains the visibility of the third virtual object 704g with an increased amount of visual prominence. In some embodiments, as the computer system 101 detects the end of the input corresponding to the request to move the virtual element 730a in the three-dimensional environment 702 while the virtual element 730a is visible at a location away from the third virtual object 704g, the computer system 101 maintains the visibility of the third virtual object 704g (e.g., the first virtual object 704e with a reduced amount of visual prominence and the second virtual object 704f with an increased amount of visual prominence).In some embodiments, the computer system 101 detects the end of an input corresponding to a request to move the virtual element 730a in the three-dimensional environment 702 while the virtual element 730a is displayed in a location away from the third virtual object 704g. The computer system 101 then stops adding the virtual element 730a to the third virtual object 704g (for example, because the virtual element 730a is not within a threshold distance of the third virtual object 704g and / or is not displayed in a location corresponding to the third virtual object 704g in the three-dimensional environment 702). For example, after detecting the end of an input, the computer system 101 maintains the display of the virtual element 730a in a location away from the third virtual object 704g. For example, after detecting the end of an input, the computer system 101 adds (for example, returns) the virtual element 730a to the second virtual object 704f.

[0257] Figure 7Y shows a first virtual object and a second virtual object displayed within a three-dimensional environment 702 having an input interface. In some embodiments, the first virtual object 704h and the second virtu...

Claims

1. In a computer system that communicates with one or more input devices and display generation components, Displaying a plurality of virtual objects, including a first virtual object and a second virtual object, in a first spatial relationship within a three-dimensional environment with respect to the current viewpoint of the user of the computer system via the display generation component, includes displaying the first virtual object and the second virtual object without overlap with respect to the user's current viewpoint, the first virtual object and the second virtual object being displayed with a first visual prominence in the three-dimensional environment, and displaying the first virtual object and the second virtual object in the first spatial relationship. To detect a first input via one or more input devices that corresponds to a request to change the spatial relationship between the first virtual object and the second virtual object from the first spatial relationship to a second spatial relationship different from the first spatial relationship, with respect to the user's current viewpoint, In response to detecting the first input, In accordance with the determination that at least a portion of the first virtual object overlaps the second virtual object by a threshold amount from the user's current viewpoint, the display generation component displays individual portions of individual virtual objects among the plurality of virtual objects with a second visual splendor that is smaller than the first visual splendor in the three-dimensional environment, A method comprising: displaying the individual portions of the individual virtual objects with first visual prominence in the three-dimensional environment via the display generation component, in accordance with the determination that the first virtual object does not overlap the second virtual object by a threshold amount from the user's current viewpoint.

2. In accordance with the determination that the first input includes attention directed to the first virtual object, the individual virtual object among the plurality of virtual objects is the second virtual object, and the method After detecting the first input, a second input corresponding to attention directed towards the second virtual object is detected, In response to detecting the second input, and in accordance with the determination that at least a portion of the first virtual object overlaps the second virtual object by a threshold amount from the user's current viewpoint, Displaying the individual parts of the second virtual object with the first visual prominence in the three-dimensional environment, The method according to claim 1, further comprising displaying individual parts of the first virtual object with the second visual prominence in relation to the three-dimensional environment.

3. After detecting the first input, while displaying the first virtual object with the first visual prominence, a second input corresponding to attention directed towards the second virtual object is detected. In response to detecting the second input, and in accordance with the determination that at least a portion of the first virtual object overlaps the second virtual object by a threshold amount from the user's current viewpoint, Displaying individual parts of the second virtual object with the first visual prominence in the three-dimensional environment, The method according to claim 1 or 2, further comprising displaying individual parts of the first virtual object with the second visual prominence in relation to the three-dimensional environment.

4. After detecting the second input, while displaying the individual parts of the second virtual object with the first visual prominence, a third input corresponding to attention directed towards a third virtual object among the plurality of virtual objects in the three-dimensional environment is detected, In response to detecting the third input, and in accordance with the determination that at least a portion of the third virtual object overlaps the second virtual object by a threshold amount from the user's current viewpoint, Displaying the individual parts of the second virtual object with the second visual prominence in the three-dimensional environment, The method according to claim 3, further comprising maintaining the display of the individual parts of the first virtual object with the second visual prominence in the three-dimensional environment.

5. In response to detecting the third input, and in accordance with the determination that the third virtual object does not overlap the second virtual object by more than the threshold amount from the user's current viewpoint, Maintaining the display of the individual parts of the second virtual object with the first visual prominence in the three-dimensional environment, The method according to claim 4, further comprising maintaining the display of the individual parts of the first virtual object with the second visual prominence in the three-dimensional environment.

6. In response to detecting the second input, and in accordance with the determination that at least a portion of the first virtual object overlaps the second virtual object by a threshold amount from the user's current viewpoint, and at least a portion of the second virtual object overlaps the third virtual object among the plurality of virtual objects in the three-dimensional environment by a threshold amount from the user's current viewpoint, Displaying the individual parts of the second virtual object with the first visual prominence in the three-dimensional environment, Displaying the individual parts of the first virtual object with the second visual prominence in the three-dimensional environment, The method according to claim 3, further comprising displaying individual parts of the third virtual object with the second visual prominence relative to the three-dimensional environment.

7. While the plurality of virtual objects are displayed in the three-dimensional environment, input elements associated with each individual virtual object are displayed in the three-dimensional environment. In response to detecting the first input, In accordance with the determination that at least a portion of the first virtual object overlaps the second virtual object by a threshold amount from the user's current viewpoint, the input element is displayed with a third visual splendor that is smaller than the first visual splendor in the three-dimensional environment, The method according to any one of claims 1 to 6, further comprising displaying the input element with a fourth visual splendor greater than the second visual splendor to the three-dimensional environment, in accordance with the determination that the first virtual object does not overlap the second virtual object by a threshold amount from the user's current viewpoint.

8. After detecting the first input, a second input is detected that corresponds to a request to display an input element associated with a third virtual object among the plurality of virtual objects in the three-dimensional environment, In response to detecting the second input, To discontinue displaying the input elements within the three-dimensional environment associated with the individual virtual objects, The method according to claim 7, further comprising displaying the input elements within the three-dimensional environment associated with the third virtual object.

9. The individual part of the individual virtual object among the plurality of virtual objects is an individual part of the second virtual object, and the method is After detecting the first input, a second input is detected that corresponds to attention directed towards a location in the three-dimensional environment that corresponds to an empty space in the three-dimensional environment, In response to detecting the second input, and in accordance with the determination that at least a portion of the first virtual object overlaps the second virtual object by a threshold amount from the user's current viewpoint, Displaying the individual parts of the second virtual object with the first visual prominence in the three-dimensional environment, The method according to any one of claims 1 to 8, further comprising displaying individual parts of the first virtual object with the second visual prominence in relation to the three-dimensional environment.

10. The method according to any one of claims 1 to 9, further comprising moving the individual virtual object from a first location in the three-dimensional environment to a second location in the three-dimensional environment in response to detecting the first input, wherein the movement of the individual virtual object causes at least the portion of the first virtual object to overlap with the second virtual object.

11. The method according to any one of claims 1 to 9, wherein detecting the first input includes detecting a movement of the user's current viewpoint from a first viewpoint to the three-dimensional environment to a second viewpoint to the three-dimensional environment, the movement of the user's current viewpoint to the three-dimensional environment causes at least a portion of the first virtual object to overlap with the second virtual object from the user's current viewpoint.

12. According to the determination that the difference between the distance between the first virtual object and the user's current viewpoint and the distance between the second virtual object and the user's current viewpoint is the first distance, the threshold amount is the first threshold amount. The method according to any one of claims 1 to 11, wherein the threshold amount is a second threshold amount different from the first threshold amount, according to the determination that the difference between the first virtual object and the user's current viewpoint, and between the second virtual object and the user's current viewpoint, is a second distance different from the first distance.

13. As the first distance is greater than the second distance, the first threshold amount is greater than the second threshold amount. The method according to claim 12, wherein the second threshold amount is greater than the first threshold amount as the second distance is greater than the first distance.

14. Displaying the individual portion of the individual virtual object among the plurality of virtual objects with the first visual prominence in the three-dimensional environment includes displaying the individual portion of the individual virtual object with a first value of the first visual characteristic, The method according to any one of claims 1 to 13, wherein displaying the individual portion of the individual virtual object among the plurality of virtual objects with respect to the three-dimensional environment with respect to the second visual prominence includes displaying the individual portion of the individual virtual object with respect to the first visual characteristic with respect to a second value smaller than the first value.

15. Displaying the individual portion of the individual virtual object with the second visual prominence to the three-dimensional environment includes discontinuing the display of the first portion of the individual portion of the individual virtual object in the three-dimensional environment, wherein the first portion of the individual portion of the individual virtual object has a relative size corresponding to the relative size of at least the portion of the first virtual object that overlaps the second virtual object, according to any one of claims 1 to 14.

16. The method according to claim 15, wherein displaying the individual portion of the individual virtual object with the second visual prominence to the three-dimensional environment includes displaying the second portion of the individual portion of the individual virtual object having a greater amount of transparency compared to displaying the second portion of the individual portion of the individual virtual object with the first visual prominence, the second portion of the individual portion of the individual virtual object surrounding the first portion of the individual portion of the individual virtual object.

17. Displaying the individual parts of the individual virtual objects with the second visual prominence in the three-dimensional environment is, while the first virtual object is an active virtual object that overlaps with the second virtual object, In accordance with the determination that the first virtual object is further from the user's viewpoint than the second virtual object, the display of individual parts of the second virtual object in the three-dimensional environment is discontinued. The method according to any one of claims 1 to 15, comprising maintaining the display of the individual parts of the second virtual object in the three-dimensional environment in accordance with the determination that the first virtual object is closer to the user's viewpoint than the second virtual object.

18. In response to the detection of the first input, the system determines that a first portion of the third virtual object among the plurality of virtual objects overlaps the first virtual object by a threshold amount from the user's current viewpoint, and a second portion of the third virtual object overlaps the second virtual object by a threshold amount from the user's current viewpoint, Displaying a first individual part of a first individual virtual object among the plurality of virtual objects with the second visual prominence, The method according to any one of claims 1 to 17, further comprising displaying a second individual portion of a second individual virtual object among the plurality of virtual objects with the second visual prominence described above.

19. Displaying the aforementioned multiple virtual objects means In accordance with the determination that the first virtual object is an active virtual object, the first virtual object is displayed with the first visual prominence, regardless of whether the first virtual object overlaps with other virtual objects. The method according to any one of claims 1 to 18, wherein, in accordance with the determination that the second virtual object is an active virtual object, the second virtual object is displayed with the first visual prominence, regardless of whether the first virtual object overlaps with other virtual objects.

20. While the individual virtual objects are displayed with the second visual prominence, a second input is detected that corresponds to a request to move a virtual element in the three-dimensional environment toward a location associated with the individual virtual object in the three-dimensional environment. The method according to any one of claims 1 to 19, further comprising: detecting the second input, moving the virtual element in the three-dimensional environment in accordance with the movement associated with the second input while the individual virtual object is displayed with the second visual prominence;

21. After moving the virtual element to the location associated with the individual virtual object, the end of the second input is detected via one or more input devices. The method according to claim 20, further comprising: in response to detecting the termination of the second input, adding the virtual element to the individual virtual object in the three-dimensional environment while maintaining the display of the individual part of the individual virtual object with the second visual prominence.

22. While detecting the second input, In accordance with the determination that the movement of the virtual element in the three-dimensional environment satisfies one or more first criteria, the individual parts of the individual virtual object are displayed with a third visual splendor greater than the second visual splendor, The method according to claim 20, further comprising: maintaining the display of the individual parts of the individual virtual objects with a second visual prominence in accordance with the determination that the movement of the virtual element in the three-dimensional environment does not satisfy one or more first criteria.

23. The method according to claim 22, wherein the one or more first criteria include criteria that are satisfied when the virtual element is within a threshold distance of the individual virtual objects.

24. The method according to claim 22 or 23, wherein the one or more first criteria include criteria that are satisfied when the movement of the virtual element is less than a threshold amount of movement.

25. The method according to any one of claims 22 to 24, wherein the one or more first criteria include a criterion that is satisfied when the virtual element is within the threshold distance of the individual virtual objects beyond a threshold period.

26. The method according to any one of claims 22 to 25, wherein the one or more first criteria include a criterion that is satisfied when a first portion of the individual virtual object is visible in the three-dimensional environment from the user's current viewpoint.

27. While detecting the second input, move the virtual element within a threshold distance of the individual virtual object according to the movement associated with the second input, The method according to any one of claims 22 to 26, further comprising moving the virtual element to the individual virtual object in the three-dimensional environment before displaying the individual portion of the individual virtual object with the third visual prominence, in accordance with the determination that the movement of the virtual element in the three-dimensional environment satisfies one or more first criteria.

28. In accordance with the determination that the movement of the virtual element in the three-dimensional environment satisfies one or more first criteria, the termination of the second input is detected via one or more input devices while the individual parts of the individual virtual objects are displayed with the third visual prominence, The method according to any one of claims 22 to 27, further comprising: detecting the termination of the second input, maintaining the display of the individual part of the individual virtual object with a third visual prominence, according to the fact that the virtual element is located in a location in the three-dimensional environment away from the individual virtual object.

29. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and The system comprises one or more programs, wherein the one or more programs are stored in the memory and are configured to be executed by the one or more processors, and the one or more programs are Displaying a plurality of virtual objects, including a first virtual object and a second virtual object, in a first spatial relationship within a three-dimensional environment with respect to the current viewpoint of the user of the computer system via the display generation component, includes displaying the first virtual object and the second virtual object without overlap with respect to the user's current viewpoint, the first virtual object and the second virtual object being displayed with a first visual prominence in the three-dimensional environment, and displaying the first virtual object and the second virtual object in the first spatial relationship. A first input is detected via one or more input devices that corresponds to a request to change the spatial relationship between the first virtual object and the second virtual object from the first spatial relationship to a second spatial relationship different from the first spatial relationship, with respect to the user's current viewpoint. In response to detecting the first input, In accordance with the determination that at least a portion of the first virtual object overlaps the second virtual object by a threshold amount from the user's current viewpoint, the display generation component displays individual portions of the individual virtual objects among the plurality of virtual objects with a second visual splendor that is smaller than the first visual splendor to the three-dimensional environment. A computer system including instructions to display the individual parts of the individual virtual objects with the first visual prominence in the three-dimensional environment via the display generation component, in accordance with the determination that the first virtual object does not overlap the second virtual object by a threshold amount from the user's current viewpoint.

30. A non-temporary computer-readable storage medium for storing one or more programs, wherein the one or more programs include instructions, and when the instructions are executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, the computer system Displaying a plurality of virtual objects, including a first virtual object and a second virtual object, in a first spatial relationship within a three-dimensional environment with respect to the current viewpoint of the user of the computer system via the display generation component, includes displaying the first virtual object and the second virtual object without overlap with respect to the user's current viewpoint, the first virtual object and the second virtual object being displayed with a first visual prominence in the three-dimensional environment, and displaying the first virtual object and the second virtual object in the first spatial relationship. To detect a first input via one or more input devices that corresponds to a request to change the spatial relationship between the first virtual object and the second virtual object from the first spatial relationship to a second spatial relationship different from the first spatial relationship, with respect to the user's current viewpoint, In response to detecting the first input, In accordance with the determination that at least a portion of the first virtual object overlaps the second virtual object by a threshold amount from the user's current viewpoint, the display generation component displays individual portions of individual virtual objects among the plurality of virtual objects with a second visual splendor that is smaller than the first visual splendor in the three-dimensional environment, A non-temporary computer-readable storage medium that causes a method to be performed which includes, in accordance with the determination that the first virtual object does not overlap the second virtual object by a threshold amount from the user's current viewpoint, the display generation component displays the individual parts of the individual virtual objects with the first visual prominence to the three-dimensional environment.

31. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and Displaying a plurality of virtual objects, including a first virtual object and a second virtual object, in a first spatial relationship within a three-dimensional environment with respect to the current viewpoint of the user of the computer system via the display generation component, includes displaying the first virtual object and the second virtual object without overlap with respect to the user's current viewpoint, wherein the first virtual object and the second virtual object are displayed with a first visual prominence in the three-dimensional environment, and includes means for displaying the first virtual object and the second virtual object in the first spatial relationship. Means for detecting a first input via one or more input devices that corresponds to a request to change the spatial relationship between the first virtual object and the second virtual object from the first spatial relationship to a second spatial relationship different from the first spatial relationship, with respect to the user's current viewpoint. In response to detecting the first input, In accordance with the determination that at least a portion of the first virtual object overlaps the second virtual object by a threshold amount from the user's current viewpoint, the display generation component displays individual portions of the individual virtual objects among the plurality of virtual objects with a second visual splendor that is smaller than the first visual splendor to the three-dimensional environment. A computer system comprising: means for displaying the individual parts of the individual virtual objects with a first visual prominence to the three-dimensional environment via the display generation component, in accordance with the determination that the first virtual object does not overlap the second virtual object by a threshold amount from the user's current viewpoint.

32. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and A computer system comprising one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, and the one or more programs include instructions for performing the method according to any one of claims 1 to 28.

33. A non-temporary computer-readable storage medium for storing one or more programs, wherein the one or more programs, when executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, include instructions causing the computer system to perform the method according to any one of claims 1 to 28.

34. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and A computer system comprising means for carrying out the method described in any one of claims 1 to 28.

35. In a computer system that communicates with one or more input devices and display generation components, The first virtual object and the second virtual object are to be displayed within a three-dimensional environment, where the three-dimensional environment is visible from the current viewpoint of the user of the computer system, the second virtual object has a first visual prominence in relation to the three-dimensional environment, and the second virtual object does not spatially conflict with the first virtual object, via the aforementioned display generation component. While the first virtual object and the second virtual object are displayed in the three-dimensional environment, a first input is detected via one or more input devices that corresponds to a request to change the location of the first virtual object in the three-dimensional environment from a first location to a second location. A method comprising, in response to receiving the first input, moving the first virtual object in the three-dimensional environment from the first location to the second location, wherein moving the first virtual object from the first location to the second location is While the second virtual object is spatially competing with at least a portion of the first virtual object with respect to the user's current viewpoint, The visual prominence of at least a portion of the second virtual object is reduced from the first visual prominence to a second visual prominence that is less than the first visual prominence in relation to the three-dimensional environment. A method comprising changing the visual prominence of at least a portion of the second virtual object in the three-dimensional environment based on a change in the spatial location of the first virtual object relative to the second virtual object during the movement of the first virtual object in the three-dimensional environment.

36. The method according to claim 35, wherein changing the visual prominence of at least a portion of the second virtual object based on the spatial location of the first virtual object relative to the second virtual object includes changing the visual prominence of at least a portion of the second virtual object based on a change in the depth of the first virtual object relative to the user's current viewpoint.

37. The method according to claim 35 or 36, wherein changing the visual prominence of at least a portion of the second virtual object includes changing the magnitude of the second visual prominence of at least a portion of the second virtual object based on the change in the spatial location of the first virtual object relative to the second virtual object during the movement of the first virtual object in the three-dimensional environment.

38. The method according to any one of claims 35 to 37, wherein changing the visual prominence of at least a portion of the second virtual object includes changing the size of at least a portion of the second virtual object as it is displayed with reduced visual prominence in the three-dimensional environment.

39. The termination of the first input is detected while the second virtual object is being displayed with a third visual splendor that is less than the first visual splendor to the three-dimensional environment while the first input is being received, The method according to any one of claims 35 to 38, further comprising: detecting the termination of the first input, reducing the visual prominence of at least a portion of the second virtual object to a visual prominence less than the third visual prominence in the three-dimensional environment.

40. The method according to any one of claims 35 to 39, wherein changing the visual prominence of at least a portion of the second virtual object includes reducing the visual prominence of at least a portion of the second virtual object as the distance between the first virtual object and the user's current viewpoint in the three-dimensional environment increases during the movement of the first virtual object.

41. The method according to any one of claims 35 to 40, wherein changing the visual prominence of at least a portion of the second virtual object includes increasing the visual prominence of at least a portion of the second virtual object as the distance between the first virtual object and the user's current viewpoint in the three-dimensional environment increases during the movement of the first virtual object.

42. Changing the visual prominence of at least a portion of the second virtual object is: During the first portion of the movement of the first virtual object, the visual prominence of at least the portion of the second virtual object is reduced as the distance between the first virtual object and the user's current viewpoint in the three-dimensional environment increases, The method according to any one of claims 35 to 41, comprising: increasing the visual prominence of at least the portion of the second virtual object as the distance between the first virtual object and the user's current viewpoint increases in the three-dimensional environment, after the first portion of the movement of the first virtual object and after the visual prominence of at least the portion of the second virtual object has decreased during the second portion of the movement of the first virtual object.

43. While the first virtual object and the second virtual object are displayed in the three-dimensional environment, a third virtual object is displayed in the three-dimensional environment, wherein the third virtual object does not spatially conflict with the first virtual object and the second virtual object. While the first virtual object, the second virtual object, and the third virtual object are displayed in the three-dimensional environment, a second input corresponding to a request to change the location of the first virtual object in the three-dimensional environment from the second location to the third location is detected. In response to receiving the second input, the second virtual object spatially competes with at least a first portion of the first virtual object with respect to the user's current viewpoint, while the third virtual object spatially competes with at least a second portion of the first virtual object, The visual prominence of at least a portion of the second virtual object is reduced from the first visual prominence to a third visual prominence in the three-dimensional environment that is lower than the first visual prominence. The visual prominence of at least a portion of the third virtual object is reduced from the first visual prominence to a fourth visual prominence in the three-dimensional environment that is lower than the first visual prominence. Based on the change in the spatial location of the first virtual object relative to the second virtual object during the movement of the first virtual object in the three-dimensional environment, the visual prominence of at least a portion of the second virtual object in the three-dimensional environment is changed. The method according to any one of claims 35 to 42, further comprising changing the visual prominence of at least a portion of the third virtual object in the three-dimensional environment based on a change in the spatial location of the first virtual object relative to the third virtual object during the movement of the first virtual object in the three-dimensional environment.

44. Reducing the visual prominence of at least a portion of the second virtual object to the second visual prominence in the three-dimensional environment is, To discontinue displaying the first portion of at least the first part of the second virtual object in the three-dimensional environment, wherein the first portion of at least the first part of the second virtual object has a first size corresponding to the relative size of at least the first part of the first virtual object, The method according to any one of claims 35 to 43, comprising displaying the second portion of the second virtual object, at least the portion thereof, with greater transparency than displaying the second portion of the second virtual object, at least the portion thereof, with the first visual prominence to the three-dimensional environment, wherein the second portion of the second virtual object at least partially surrounds the outer periphery of the first portion of the second virtual object.

45. Changing the visual prominence of at least a portion of the second virtual object in the three-dimensional environment based on the change in the spatial location of the first virtual object relative to the second virtual object is: Based on the change in the spatial competition between the first virtual object and the second virtual object during the movement of the first virtual object in the three-dimensional environment, the first portion of the second virtual object in the three-dimensional environment is redisplayed, and the display of the third portion of the second virtual object in the three-dimensional environment that is different from the first portion is discontinued. The method of claim 44, comprising displaying a fourth portion of at least the portion of the second virtual object, distinct from the third portion, with a greater amount of transparency compared to displaying the fourth portion of at least the portion of the second virtual object with the first visual prominence to the three-dimensional environment, wherein the fourth portion of at least the portion of the second virtual object at least partially surrounds the outer periphery of the third portion of at least the portion of the second virtual object.

46. The method according to any one of claims 35 to 45, wherein at least a portion of the second virtual object at least partially surrounds the outer perimeter of at least a portion of the first virtual object with respect to the user's current viewpoint.

47. The method according to any one of claims 35 to 46, further comprising displaying the first virtual object at a first distance in the three-dimensional environment from the user's current viewpoint while reducing the visual prominence of at least a portion of the second virtual object, and displaying the second virtual object at a second distance in the three-dimensional environment greater than the first distance from the user's current viewpoint.

48. After receiving the first input, a second input directed to the second virtual object is detected, In response to detecting the second input, Displaying at least a portion of the second virtual object with the first visual prominence in the three-dimensional environment, The method according to any one of claim 3547, further comprising displaying at least a portion of the first virtual object with a third visual prominence less than the first visual prominence relative to the three-dimensional environment.

49. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and A system comprising one or more programs, wherein the one or more programs are stored in the memory and are configured to be executed by the one or more processors, and the one or more programs are Through the display generation component, the first virtual object and the second virtual object are displayed in a three-dimensional environment, the three-dimensional environment being visible from the current viewpoint of the user of the computer system, the second virtual object having a first visual presence in the three-dimensional environment, and the second virtual object not spatially competing with the first virtual object. While the first virtual object and the second virtual object are displayed in the three-dimensional environment, a first input is detected via one or more input devices that corresponds to a request to change the location of the first virtual object in the three-dimensional environment from a first location to a second location. A computer system that includes an instruction to move the first virtual object from the first location to the second location in the three-dimensional environment in response to receiving the first input, wherein moving the first virtual object from the first location to the second location is While the second virtual object is spatially competing with at least a portion of the first virtual object with respect to the user's current viewpoint, The visual prominence of at least a portion of the second virtual object is reduced from the first visual prominence to a second visual prominence that is less than the first visual prominence in relation to the three-dimensional environment. A computer system comprising: changing the visual prominence of at least a portion of the second virtual object in the three-dimensional environment based on a change in the spatial location of the first virtual object relative to the second virtual object during the movement of the first virtual object in the three-dimensional environment.

50. A non-temporary computer-readable storage medium for storing one or more programs, wherein the one or more programs include instructions, and when the instructions are executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, the computer system The first virtual object and the second virtual object are to be displayed within a three-dimensional environment, where the three-dimensional environment is visible from the current viewpoint of the user of the computer system, the second virtual object has a first visual prominence in relation to the three-dimensional environment, and the second virtual object does not spatially conflict with the first virtual object, via the aforementioned display generation component. While the first virtual object and the second virtual object are displayed in the three-dimensional environment, a first input is detected via one or more input devices that corresponds to a request to change the location of the first virtual object in the three-dimensional environment from a first location to a second location. A non-temporary computer-readable storage medium that causes a method to be performed including, in response to receiving the first input, moving the first virtual object in the three-dimensional environment from the first location to the second location, While the second virtual object is spatially competing with at least a portion of the first virtual object with respect to the user's current viewpoint, The visual prominence of at least a portion of the second virtual object is reduced from the first visual prominence to a second visual prominence that is less than the first visual prominence in relation to the three-dimensional environment. A non-temporary computer-readable storage medium, which includes changing the visual prominence of at least a portion of the second virtual object in the three-dimensional environment based on a change in the spatial location of the first virtual object relative to the second virtual object during the movement of the first virtual object in the three-dimensional environment.

51. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and The means for displaying the first virtual object and the second virtual object within a three-dimensional environment via the display generation component, wherein the three-dimensional environment is visible from the current viewpoint of the user of the computer system, the second virtual object has a first visual prominence in relation to the three-dimensional environment, and the second virtual object does not spatially compete with the first virtual object. While the first virtual object and the second virtual object are displayed in the three-dimensional environment, means for detecting a first input via one or more input devices that corresponds to a request to change the location of the first virtual object in the three-dimensional environment from a first location to a second location, A computer system comprising means for moving the first virtual object from a first location to a second location in the three-dimensional environment in response to receiving the first input, wherein moving the first virtual object from the first location to the second location is While the second virtual object is spatially competing with at least a portion of the first virtual object with respect to the user's current viewpoint, The visual prominence of at least a portion of the second virtual object is reduced from the first visual prominence to a second visual prominence that is less than the first visual prominence in relation to the three-dimensional environment. A computer system comprising: changing the visual prominence of at least a portion of the second virtual object in the three-dimensional environment based on a change in the spatial location of the first virtual object relative to the second virtual object during the movement of the first virtual object in the three-dimensional environment.

52. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and A computer system comprising one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, and the one or more programs include instructions for performing the method according to any one of claims 35 to 48.

53. A non-temporary computer-readable storage medium for storing one or more programs, wherein the one or more programs, when executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, include instructions causing the computer system to perform the method according to any one of claims 35 to 48.

54. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and A computer system comprising means for carrying out the method described in any one of claims 35 to 48.

55. In a computer system that communicates with one or more input devices and display generation components, The display generation component detects pass-through visibility events via one or more input devices while displaying virtual content, wherein at least a portion of the virtual content obscures the visibility of at least a portion of the physical environment of the user of the computer system. A method comprising, in response to detecting the pass-through visibility event, replacing the display of at least a portion of the virtual content with a presentation of a representation of a real-world object in the user's physical environment via the display generation component, wherein the presentation of the real-world object is In accordance with the determination that the state of the virtual content is a first state, the representation of the real-world object is presented with a first visual effect applied to the representation of the real-world object, A method comprising: presenting the representation of the real-world object without applying the first visual effect to the representation of the real-world object, in accordance with the determination that the state of the virtual content is not the first state.

56. The method of claim 55, wherein detecting the pass-through visibility event includes detecting that a portion of the user has moved into at least the portion of the physical environment via the one or more input devices, and presenting the representation of the real-world object includes presenting a representation of the portion of the user.

57. The method of claim 55, wherein detecting the pass-through visibility event includes detecting, via one or more input devices, that at least the portion of the virtual content has spatial competition with at least the portion of the real-world object, and presenting the representation of the real-world object includes presenting at least the portion of the real-world object.

58. The method according to claim 55, wherein detecting the pass-through visibility event includes detecting, via one or more input devices, that the real-world object has moved within a threshold distance of the user's location in the physical environment.

59. The method of claim 55, wherein detecting the pass-through visibility event includes detecting, via one or more input devices, that the user's viewpoint is directed toward the boundary of the virtual content, the real-world object is overlaid by at least the portion of the virtual content, and at least the portion of the virtual content is adjacent to the boundary of the virtual content.

60. The method according to claim 55, wherein detecting the pass-through visibility event includes detecting, via one or more input devices, that the user's viewpoint has moved beyond a threshold distance from the location of the user's viewpoint when the virtual content was first displayed.

61. The method according to claim 55, wherein detecting the pass-through visibility event includes detecting user input via one or more input devices that corresponds to a request to stop displaying the application associated with the virtual content.

62. The method according to any one of claims 55 to 61, wherein, in response to the detection of the pass-through visibility event, and in accordance with the determination that the state of the virtual content is a second state, and in the second state the virtual content includes an application window, the representation of the real-world object is presented without any visual effects applied to the representation of the real-world object based on the state of the virtual content being a second state.

63. The method according to any one of claims 55 to 61, wherein the virtual content includes a user interface for inputting information associated with an application, the virtual content is in a second state, the user interface is displayed simultaneously with an application window associated with the application, and in response to the detection of the pass-through visibility event and in accordance with the determination that the virtual content is in the second state, the representation of the physical object is presented with a second visual effect different from the first visual effect.

64. The method according to any one of claims 55 to 61, wherein the virtual content is in the first state, at least in part, based on the determination that the user's attention is directed to the virtual content.

65. The method according to any one of claims 55 to 61 and 64, wherein applying the first visual effect includes reducing the visual prominence of the representation of the real-world object.

66. The method according to any one of claims 55 to 61, wherein the first visual effect includes a color effect applied to the representation of the real-world object.

67. The method according to claim 66, wherein the virtual content includes virtual media content, and the color effect is associated with one or more colors contained within the virtual media content.

68. The method according to claim 66 or 67, wherein the virtual content is associated with an application, and the color effect is selected based on the application associated with the virtual content.

69. The method according to any one of claims 55 to 68, wherein the first visual effect includes a change in the saturation of the representation of the real-world object.

70. The method according to any one of claims 55 to 69, wherein the virtual content includes an application window and a virtual environment, and the first visual effect is at least partially based on the application window and the virtual environment.

71. The virtual content includes a virtual environment and presents the representation of the real-world object with the first visual effect applied to the representation of the real-world object, In accordance with the determination that the virtual environment is the first virtual environment, the representation of the real-world object is presented with the first visual effect, which includes the first color effect associated with the first virtual environment. The method according to any one of claims 55 to 70, comprising: determining that the virtual environment is a second virtual environment different from the first virtual environment, presenting the representation of the real-world object with the first visual effect including a second color effect associated with the second virtual environment, wherein the second color effect is different from the first color effect.

72. Before presenting the representation of the real-world object to which the first visual effect is applied, present the representation of the real-world object without applying the first visual effect to the representation of the real-world object. While the first visual effect is being applied to the representation of the real-world object and the representation of the real-world object is being presented, a request to display the virtual environment is detected. The method according to claim 71, further comprising: detecting the request for displaying the virtual environment, the display of the virtual environment, wherein the representation of the real-world object is presented with the first visual effect applied to the representation of the real-world object based on the display of the virtual environment.

73. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and A system comprising one or more programs, wherein the one or more programs are stored in the memory and are configured to be executed by the one or more processors, and the one or more programs are The display generation component detects pass-through visibility events via one or more input devices while displaying virtual content, wherein at least a portion of the virtual content obscures the visibility of at least a portion of the physical environment of the user of the computer system. A computer system that includes instructions to replace, via the display generation component, the display of at least a portion of the virtual content with a presentation of a representation of a real-world object in the user's physical environment, in response to detecting the pass-through visibility event, wherein the presentation of the representation of the real-world object is In accordance with the determination that the state of the virtual content is a first state, the representation of the real-world object is presented with a first visual effect applied to the representation of the real-world object, A computer system comprising: presenting a representation of a real-world object without applying the first visual effect to the representation of the real-world object, in accordance with a determination that the state of the virtual content is not the first state.

74. A non-temporary computer-readable storage medium for storing one or more programs, wherein the one or more programs include instructions, and when the instructions are executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, the computer system The display generation component detects pass-through visibility events via one or more input devices while displaying virtual content, wherein at least a portion of the virtual content obscures the visibility of at least a portion of the physical environment of the user of the computer system. A non-temporary computer-readable storage medium that, upon detecting the pass-through visibility event, causes the display generation component to perform a method including replacing the display of at least a portion of the virtual content with a presentation of a representation of a real-world object in the user's physical environment, wherein the presentation of the representation of the real-world object is In accordance with the determination that the state of the virtual content is a first state, the representation of the real-world object is presented with a first visual effect applied to the representation of the real-world object, A non-temporary computer-readable storage medium, which includes presenting the representation of the real-world object without applying the first visual effect to the representation of the real-world object, in accordance with the determination that the state of the virtual content is not the first state.

75. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and The display generation component provides means for detecting pass-through visibility events via one or more input devices while displaying virtual content, wherein at least a portion of the virtual content obscures the visibility of at least a portion of the physical environment of the user of the computer system. A computer system comprising, in response to detecting the pass-through visibility event, means for replacing the display of at least a portion of the virtual content with a presentation of a representation of a real-world object in the user's physical environment via the display generation component, wherein the presentation of the representation of the real-world object is In accordance with the determination that the state of the virtual content is a first state, the representation of the real-world object is presented with a first visual effect applied to the representation of the real-world object, A computer system comprising: presenting a representation of a real-world object without applying the first visual effect to the representation of the real-world object, in accordance with a determination that the state of the virtual content is not the first state.

76. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and A computer system comprising one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, and the one or more programs include instructions for performing the method according to any one of claims 55 to 72.

77. A non-temporary computer-readable storage medium for storing one or more programs, wherein the one or more programs, when executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, include instructions causing the computer system to perform the method according to any one of claims 55 to 72.

78. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and A computer system comprising means for performing the method described in any one of claims 55 to 72.

79. In a computer system that communicates with display generation components, While the background is visible in the second part of the three-dimensional environment behind the virtual content, the virtual content is displayed in the first part of the three-dimensional environment via the display generation component, To detect events corresponding to the aforementioned virtual content, In response to detecting the event corresponding to the virtual content, In accordance with the determination that the state of the background is a first state, the background is presented with a first visual effect applied to the background. A method comprising presenting the background without the first visual effect, in accordance with the determination that the state of the background is not the first state.

80. The method according to claim 79, wherein the background includes a representation of the physical environment of the user of the computer system. The aforementioned background includes representations of virtual environments.

81. The aforementioned background is the method according to claim 79 or 80, including a virtual environment.

82. The method according to any one of claims 79 to 81, wherein the virtual content includes visual media content, and detecting the event includes detecting that the state of the visual media content is a first state.

83. The method according to any one of claims 79 to 81, wherein detecting the event includes detecting that the user's attention is directed to the virtual content.

84. The method according to any one of claims 79 to 83, wherein the background includes a virtual environment, the first state of the background corresponds to a first time setting of the virtual environment, and the second state of the virtual environment corresponds to a second time setting different from the first time setting.

85. The method according to any one of claims 79 to 84, wherein the first state corresponds to a bright time setting, the second state corresponds to a dark time setting, the background is in the second state, and presenting the background without the first visual effect according to the determination that the state is not the first state includes presenting the background without any visual effect based on the background being in the second state.

86. The method according to claim 85, wherein detecting the event includes detecting that the state of the background has changed to the first state while the virtual content is being displayed.

87. The method according to claim 84 or 85, wherein detecting the event includes detecting that the state of the background has changed to the second state while the virtual content is being displayed, and presenting the background without the first visual effect includes presenting the background without the visual effect corresponding to the second state, regardless of whether the virtual content is associated with the first visual effect.

88. The virtual content includes media content, the background is in the first state, and the method is While the media content is displayed in the three-dimensional environment including the background, and while the media content is not being played, a first input corresponding to a request to play the media content is detected via one or more input devices. In response to detecting the first input, the media content is played in the three-dimensional environment including the background, While the media content is being played in the three-dimensional environment including the background and the media content is being displayed, a second input is detected via one or more input devices that corresponds to a request to display the media content at a specific position of the media content within the background. The method according to any one of claims 79 to 87, further comprising: displaying the media content at the individual positions of the media content within the background in response to the detection of the second input; and changing the state of the background to the second state.

89. The method according to claim 88, wherein detecting the event includes detecting the first input.

90. Presenting the background using the first visual effect is, In accordance with the determination that the background includes a first virtual environment, a first individual visual effect corresponding to the first virtual environment is presented to the background. The method according to any one of claims 79 to 89, comprising: determining that the background includes a second virtual environment different from the first virtual environment, and presenting the background with a second individual visual effect different from the first individual visual effect, which corresponds to the second virtual environment.

91. The method according to claim 90, wherein presenting the background without the first visual effect, in accordance with the determination that the background is not in the first state, includes presenting the background with a third separate visual effect different from the first and second visual effects, which is independent of whether the background includes a first or second virtual environment.

92. The method according to any one of claims 79 to 91, wherein presenting the background with the first visual effect includes dimming the background.

93. The method according to any one of claims 79 to 92, wherein presenting the background with the first visual effect includes applying a color to the background.

94. The aforementioned background includes a representation of the physical environment of the user of the computer system, and the method is The method according to any one of claims 79 to 93, further comprising displaying a second virtual content within the three-dimensional environment, and presenting the background with the first visual effect, which includes presenting the representation of the physical environment having a combination of the first visual effect and the second visual effect.

95. The method according to claim 94, wherein the background includes a first virtual environment, and presenting the background with a first visual effect includes presenting the first virtual environment having the combination of the first visual effect and the second visual effect.

96. Presenting the background using the first visual effect is, In accordance with the determination that the state of the virtual content is the first state of the virtual content, the background is presented with a first individual visual effect, The method according to claim 94 or 95, further comprising: discontinuing the presentation of the background with the first individual visual effect in accordance with the determination that the state of the virtual content is a second state of the virtual content.

97. The method according to any one of claims 79 to 96, wherein the background includes a first virtual environment, and presenting the background with the first visual effect includes presenting the background with a first amount of the first visual effect applied to the background, regardless of the immersion level of the first virtual environment.

98. The aforementioned background includes a virtual environment, and the aforementioned method is While the virtual content is being displayed and the background is being presented with the first visual effect, the system detects that the user's viewpoint of the computer system has changed orientation from a first orientation to the virtual environment to a second orientation to the virtual environment. The method according to any one of claims 79 to 97, further comprising: reducing the first visual effect applied to the background in response to detection that the user's viewpoint has changed orientation relative to the virtual environment, and in accordance with the determination that the second orientation is greater than a threshold orientation that moves away from the virtual environment.

99. In accordance with the determination that the immersion level of the virtual environment is the first immersion level, the threshold orientation is the first threshold orientation. The method according to claim 98, wherein, in accordance with the determination that the immersion level of the virtual environment is a second immersion level higher than the first immersion level, the threshold orientation is a second threshold orientation higher than the first threshold orientation.

100. The method according to any one of claims 79 to 99, wherein the background includes a virtual environment and a representation of the physical environment of a user of the computer system, and presenting the background with the first visual effect includes presenting the portion of the three-dimensional environment, including a transition region between the virtual environment and the representation of the physical environment, with the first visual effect.

101. While the background is presented with the first virtual effect in accordance with the determination that the background is in the first state, a pass-through visibility event associated with a real-world object in the physical environment of the computer system is detected. The method according to any one of claims 79 to 100, further comprising: in response to detecting the pass-through visibility event, presenting a representation of the real-world object with the first visual effect applied to the representation of the real-world object.

102. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and A system comprising one or more programs, wherein the one or more programs are stored in the memory and are configured to be executed by the one or more processors, and the one or more programs are While the background is visible in the second part of the three-dimensional environment behind the virtual content, the virtual content is displayed in the first part of the three-dimensional environment via the display generation component, The system detects events corresponding to the virtual content, In response to detecting the event corresponding to the virtual content, In accordance with the determination that the state of the background is a first state, the background is presented with a first visual effect applied to the background. A computer system including an instruction to present the background without a first visual effect, in accordance with the determination that the state of the background is not a first state.

103. A non-temporary computer-readable storage medium for storing one or more programs, wherein the one or more programs include instructions, and when the instructions are executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, the computer system While the background is visible in the second part of the three-dimensional environment behind the virtual content, the virtual content is displayed in the first part of the three-dimensional environment via the display generation component, To detect events corresponding to the aforementioned virtual content, In response to detecting the event corresponding to the virtual content, In accordance with the determination that the state of the background is a first state, the background is presented with a first visual effect applied to the background, A non-temporary computer-readable storage medium that causes a method to be performed which includes presenting the background without the first visual effect, in accordance with the determination that the state of the background is not the first state.

104. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and Means for displaying the virtual content in the first part of the three-dimensional environment via the display generation component while the background is visible in the second part of the three-dimensional environment behind the virtual content, means for detecting events corresponding to the virtual content, In response to detecting the event corresponding to the virtual content, In accordance with the determination that the state of the background is a first state, the background is presented with a first visual effect applied to the background. A computer system comprising: means for presenting the background without the first visual effect, in accordance with the determination that the state of the background is not the first state.

105. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and A computer system comprising one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, and the one or more programs include instructions for performing the method according to any one of claims 79 to 101.

106. A non-temporary computer-readable storage medium for storing one or more programs, wherein the one or more programs, when executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, include instructions causing the computer system to perform the method according to any one of claims 79 to 101.

107. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and A computer system comprising means for performing the method described in any one of claims 79 to 101.

108. A computer system that communicates with one or more input devices and display generation components, wherein the computer system is associated with a user, While displaying multiple virtual objects in a three-dimensional environment via the display generation component, the system detects, via one or more input devices, a shift in the user's attention to a first virtual object among the multiple virtual objects, the first virtual object being associated with a first visual effect, In response to detecting the shift of the user's attention to the first virtual object, Displaying the first visual effect applied to the three-dimensional environment in accordance with the determination that the first virtual object is in an active state and that one or more first criteria are met, A method comprising: discontinuing the display of the first visual effect applied to the three-dimensional environment in accordance with the determination that the first virtual object is not in the active state.

109. The method according to claim 108, further comprising presenting the three-dimensional environment without any visual effects applied to the three-dimensional environment before detecting the shift of the user's attention to the first virtual object.

110. The method according to claim 108 or 109, further comprising displaying a second visual effect applied to the three-dimensional environment in accordance with a determination that a second criterion is met before detecting the shift of the user's attention to the first virtual object via one or more input devices, wherein the second visual effect is different from the first visual effect.

111. The method according to claim 110, wherein the second visual effect is a visual effect selected based on the application that was active before detecting the shift of the user's attention to the first virtual object.

112. The method according to claim 110, wherein the second visual effect is a visual effect selected based on a system visual effect which is part of an extended three-dimensional environment in which the first virtual object is displayed.

113. The first virtual object is not in the active state before detecting the shift of the user's attention to the first virtual object, and the method After detecting the shift of the user's attention to the first virtual object, and while the user's attention is directed to the first virtual object, detecting user input via one or more input devices, The further includes, in response to detecting user input while the user's attention is directed towards the first virtual object, changing the state of the first virtual object to the active state, The method according to any one of claims 108 to 112, wherein the display of the first visual effect applied to the three-dimensional environment is based on the state of the first virtual object being in the active state.

114. The method according to claim 113, wherein, before detecting the user input, the first virtual object is at least partially displayed behind the second virtual object with respect to the user's current viewpoint and obscured by the second virtual object.

115. The method according to claim 113, wherein the first virtual object is not in the active state after detecting the shift of the user's attention to the first virtual object and before detecting the user input.

116. Displaying the first virtual object means In accordance with the determination that the first virtual object is in the active state, the first virtual object is displayed with a first visual appearance, The method according to claim 115, further comprising: displaying the first virtual object with a second visual appearance different from the first visual appearance, in accordance with the determination that the first virtual object is not in the active state.

117. The method according to claim 113, further comprising displaying a second virtual object among the plurality of virtual objects while the first virtual object is being displayed and while the first virtual object is in the active state, wherein the second virtual object is in the active state.

118. While the first virtual object is displaying the first visual effect applied to the three-dimensional environment in accordance with the determination that the first virtual object is in the active state, an event corresponding to ceasing the display of the first virtual object is detected via one or more input devices, The method according to any one of claims 108 to 117, further comprising: discontinuing to display the first virtual object and discontinuing to display the first visual effect applied to the three-dimensional environment in response to detecting the event.

119. The method according to any one of claims 108 to 118, wherein displaying the first visual effect applied to the three-dimensional environment comprises gradually changing the visual splendor of the first visual effect to a final visual splendor through a plurality of intermediate states over a period of time.

120. The method according to claim 119, wherein the visual prominence of the first visual effect is modified over the period to emulate a critically damped spring.

121. The method according to claim 119 or 120, wherein the duration for which the visual prominence of the first visual effect is changed occurs after a time delay following the detection of the shift of the user's attention to the first virtual object and the determination that the first virtual object is in the active state.

122. Over the duration, changing the visual prominence of the first visual effect to the final visual prominence is: In accordance with the determination that the shift of the user's attention originates from a portion of the three-dimensional environment associated with a second visual effect distinct from the first visual effect, the visual prominence of the first visual effect is changed to the final visual prominence over a first duration. The method according to any one of claims 119 to 121, comprising changing the visual prominence of the first visual effect to the final visual prominence over a second duration different from the first duration, in accordance with the determination that the shift of the user's attention is from a portion of the three-dimensional environment not associated with the visual effect.

123. After detecting the shift of the user's attention to the first virtual object, the system detects the shift of the user's attention to a second virtual object among the plurality of virtual objects, In response to detecting the shift of the user's attention to the second virtual object, In accordance with the determination that the second virtual object is associated with the second visual effect, the second visual effect applied to the three-dimensional environment is displayed, The method according to any one of claims 108 to 122, further comprising: discontinuing the display of the second visual effect applied to the three-dimensional environment in accordance with the determination that the second virtual object is not associated with the second visual effect.

124. The method according to any one of claims 108 to 123, wherein the first visual effect is displayed in accordance with the determination that the first virtual object is in the active state, regardless of whether the three-dimensional environment is associated with a second visual effect different from the first visual effect.

125. While displaying the first visual effect applied to the three-dimensional environment, the system detects a shift in the user's attention away from the first virtual object. The method according to claim 124, further comprising: detecting the shift of the user's attention away from the first virtual object; and displaying the second visual effect applied to the three-dimensional environment in response to the detection of the shift of the user's attention away from the first virtual object.

126. The first criterion is satisfied when the three-dimensional environment does not include a virtual environment associated with a second visual effect different from the first visual effect, and the method is The method according to any one of claims 108 to 125, further comprising displaying the second visual effect applied to the three-dimensional environment, regardless of whether the state of the first virtual object is active, in response to detecting the shift of the user's attention to the first virtual object and in accordance with the determination that the first criterion is not met because the three-dimensional environment includes the virtual environment associated with the second visual effect.

127. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and A system comprising one or more programs, wherein the one or more programs are stored in the memory and are configured to be executed by the one or more processors, and the one or more programs are While displaying a plurality of virtual objects in a three-dimensional environment via the display generation component, the system detects, via one or more input devices, a shift in the user's attention to a first virtual object among the plurality of virtual objects, the first virtual object being associated with a first visual effect, In response to detecting the shift of the user's attention to the first virtual object, In accordance with the determination that the first virtual object is in an active state and that one or more first criteria are met, the first visual effect applied to the three-dimensional environment is displayed. A computer system including an instruction to stop displaying the first visual effect applied to the three-dimensional environment in accordance with the determination that the first virtual object is not in the active state.

128. A non-temporary computer-readable storage medium for storing one or more programs, wherein the one or more programs include instructions, and when the instructions are executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, the computer system While displaying multiple virtual objects in a three-dimensional environment via the display generation component, the system detects, via one or more input devices, a shift in the user's attention to a first virtual object among the multiple virtual objects, the first virtual object being associated with a first visual effect, In response to detecting the shift of the user's attention to the first virtual object, Displaying the first visual effect applied to the three-dimensional environment in accordance with the determination that the first virtual object is in an active state and that one or more first criteria are met, A non-temporary computer-readable storage medium that causes the medium to perform a method including, in accordance with the determination that the first virtual object is not in the active state, ceasing to display the first visual effect applied to the three-dimensional environment.

129. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and While displaying a plurality of virtual objects in a three-dimensional environment via the display generation component, means for detecting a shift of the user's attention to a first virtual object among the plurality of virtual objects, the first virtual object being associated with a first visual effect, via one or more input devices, In response to detecting the shift of the user's attention to the first virtual object, In accordance with the determination that the first virtual object is in an active state and that one or more first criteria are met, the first visual effect applied to the three-dimensional environment is displayed. A computer system comprising: means for discontinuing the display of the first visual effect applied to the three-dimensional environment in accordance with the determination that the first virtual object is not in the active state.

130. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and A computer system comprising one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, and the one or more programs include instructions for performing the method according to any one of claims 108 to 126.

131. A non-temporary computer-readable storage medium for storing one or more programs, wherein the one or more programs, when executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, include instructions causing the computer system to perform the method according to any one of claims 108 to 126.

132. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and A computer system comprising means for carrying out the method described in any one of claims 108 to 126.

133. In a computer system that communicates with a display generation component and one or more input devices, While a first user interface element is displayed in the environment from the current viewpoint of the user of the computer system via the display generation component, the occurrence of a first event is detected via one or more input devices. A method comprising: detecting that the first event has occurred, displaying a second user interface element different from the first user interface element in the environment; The second user interface element overlaps at least partially with the first user interface element from the current viewpoint of the user of the computer system. In accordance with the determination that the second user interface element is a first type of user interface element that overlaps with the first user interface element, the first user interface element is visually de-highlighted in relation to the environment in a first manner. A method wherein, upon determination that the second user interface element is a second type of user interface element different from the first type of user interface element that overlaps with the first user interface element, the first user interface element is not visually de-highlighted in relation to the environment in the first manner.

134. The first user interface element includes first content, The method according to claim 133, wherein visually de-emphasizing the first user interface element with respect to the environment in the first manner includes visually dimming the first content of the first user interface element with respect to the environment.

135. The method according to claim 133 or 134, wherein visually de-emphasizing the first user interface element with respect to the environment in the first manner includes increasing the semi-transparency of the first user interface element with respect to the environment such that the first portion of the environment obscured by the first user interface is visible to the user's viewpoint.

136. The method according to any one of claims 133 to 135, wherein, in accordance with the determination that the second user interface element is a second type of user interface element that overlaps with the first user interface element, the first user interface element is visually de-highlighted to the environment in a second manner different from the first manner.

137. The method according to any one of claims 133 to 136, wherein visually de-emphasizing the first user interface element with respect to the environment in the first manner includes visually de-emphasizing the first user interface element with respect to a three-dimensional environment in which the first user interface element is displayed via the display generation component.

138. The method according to any one of claims 133 to 137, wherein, in response to the detection of the occurrence of the first event, the first user interface element is visually de-highlighted in relation to the environment in a third manner different from the first manner, according to the determination that the second user interface element is a third type of user interface element different from the first type of user interface element and the second type of user interface element, and overlaps with the first user interface element.

139. While the first user interface element is displayed in the environment, it is detected that a second event has occurred via one or more input devices. The system further includes, upon detection that the second event has occurred, displaying a third user interface element, different from the first and second user interface elements, within the environment; The method according to any one of claims 133 to 138, wherein, upon determination that the third user interface element is a third type of user interface element distinct from the first type of user interface element and the second type of user interface element, the first user interface element is visually de-highlighted in relation to the environment in a third manner, regardless of whether the third user interface element overlaps with the first user interface element.

140. The method according to claim 139, wherein, upon detection of the occurrence of the second event, the second user interface element is visually de-highlighted in relation to the environment in the third manner.

141. The method according to claim 139 or 140, wherein, in response to the detection of the occurrence of the second event, the first user interface element is visually de-highlighted in relation to the environment in a fourth manner different from the third manner, regardless of whether the third user interface element overlaps with the first user interface element, according to the determination that the third user interface element is a fourth type of user interface element different from the first type of user interface element, the second type of user interface element, and the third type of user interface element.

142. The method according to any one of claims 133 to 141, wherein, in response to the detection of the occurrence of the first event, the first user interface element is not visually de-highlighted in relation to the environment, according to the determination that the second user interface element is a fourth type of user interface element different from the first type of user interface element and the second type of user interface element, which overlaps with the first user interface element.

143. The method according to claim 142, wherein the fourth type of user interface includes a virtual keyboard.

144. In accordance with the determination that the second user interface element is a fourth type of user interface element, while the second user interface element is displayed to the environment without visually de-highlighting the first user interface element, it is detected that a second event has occurred via one or more input devices. The system further includes, upon detection that the second event has occurred, displaying a third user interface element, different from the first and second user interface elements, within the environment; The third user interface element overlaps at least partially with the first user interface element from the current viewpoint of the user of the computer system. In accordance with the determination that the third user interface element is a first type of user interface element that overlaps with the first user interface element, the first user interface element and the second user interface element are visually de-highlighted in relation to the environment in the first manner. The method according to claim 143, wherein, according to the determination that the third user interface element is a second type of user interface element that overlaps with the first user interface element, the first user interface element and the second user interface element are not visually de-highlighted in relation to the environment in the first manner.

145. The method according to any one of claims 133 to 144, wherein, in response to the detection of the occurrence of the first event, the first user interface element is not visually de-highlighted against the environment, according to the determination that when the second user interface element is displayed, the second user interface element does not at least partially overlap the first user interface element from the user's current viewpoint.

146. Visually de-emphasizing the first user interface element in relation to the environment using the first method is: The method according to any one of claims 133 to 145, comprising visually de-highlighting the first portion of the first user interface element to the environment without visually de-highlighting the second portion of the first user interface element that is not overlapped by the second user interface element and is different from the first portion to the environment, in accordance with the determination that the second user interface element overlaps the first portion of the first user interface element.

147. Visually de-emphasizing the first user interface element in relation to the environment using the first method is: The method according to any one of claims 133 to 146, comprising visually de-highlighting the first portion of the first user interface element to the environment in accordance with the determination that the second user interface element overlaps with the first portion of the first user interface element, and visually de-highlighting a second portion of the first user interface element that does not overlap with the environment, which is different from the first portion.

148. The method according to any one of claims 133 to 147, wherein detecting that the first event has occurred includes detecting a first alert event in the computer system.

149. The method according to any one of claims 133 to 148, wherein detecting that the first event has occurred includes detecting a first input via one or more input devices that corresponds to a request to display the second user interface element in the environment.

150. The method according to claim 149, wherein detecting the first input includes detecting the user's gaze directed towards a predetermined portion of the display generation component.

151. While the second user interface element is displayed in the environment in response to the detection of the first input, a second input directed to the second user interface element is detected via one or more input devices, In response to detecting the second input, The display generation component is used to stop the display of the second user interface element, The method according to claim 150, further comprising displaying a third user interface element, different from the first user interface element and the second user interface element, in the environment via the display generation component, wherein the third user interface element is associated with the second user interface element.

152. The method according to any one of claims 149 to 151, wherein detecting the first input includes detecting the selection of a hardware button of the computer system via one or more input devices.

153. The method according to any one of claims 133 to 152, wherein the first user interface element corresponds to a virtual application window associated with an individual application running on the computer system.

154. The method according to any one of claims 133 to 153, wherein the first user interface element corresponds to an immersive virtual object.

155. While the second user interface element is displayed in the environment in response to the detection of the occurrence of the first event, individual inputs directed to the first user interface element in the environment are detected via one or more input devices, In response to detecting the individual inputs, The method according to claim 154, further comprising: discontinuing to perform an action associated with the individual input directed to the first user interface element.

156. Displaying the first user interface element within the environment includes applying a visual effect to the first part of the user that causes the first part of the user to be displayed as a separate virtual representation within the environment relative to the user's viewpoint, in accordance with the determination that the first part of the user is positioned within the environment relative to the user's viewpoint, and the method is as follows: In response to detecting that the first event has occurred, The method according to claim 154 or 155, further comprising, when it is detected that the first event has occurred, ceasing to apply the visual effect to the first part of the user such that the individual virtual representation is no longer displayed in the environment with respect to the user's viewpoint, in accordance with the determination that the first part of the user is positioned in the environment with respect to the user's viewpoint.

157. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and A system comprising one or more programs, wherein the one or more programs are stored in the memory and are configured to be executed by the one or more processors, and the one or more programs are While the first user interface element is displayed in the environment from the current viewpoint of the user of the computer system via the display generation component, the occurrence of a first event is detected via one or more input devices. A computer system including an instruction to display a second user interface element, different from the first user interface element, in the environment in response to the detection of the occurrence of the first event, The second user interface element overlaps at least partially with the first user interface element from the current viewpoint of the user of the computer system. In accordance with the determination that the second user interface element is a first type of user interface element that overlaps with the first user interface element, the first user interface element is visually de-highlighted in relation to the environment in a first manner. A computer system in which, upon determination that the second user interface element is a second type of user interface element different from the first type of user interface element that overlaps with the first user interface element, the first user interface element is not visually de-highlighted in relation to the environment in the first manner.

158. A non-temporary computer-readable storage medium for storing one or more programs, wherein the one or more programs include instructions, and when the instructions are executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, the computer system While a first user interface element is displayed in the environment from the current viewpoint of the user of the computer system via the display generation component, the occurrence of a first event is detected via one or more input devices. A non-temporary computer-readable storage medium that causes a method to be executed that includes, in response to detecting that the first event has occurred, displays a second user interface element different from the first user interface element in the environment, The second user interface element overlaps at least partially with the first user interface element from the current viewpoint of the user of the computer system. In accordance with the determination that the second user interface element is a first type of user interface element that overlaps with the first user interface element, the first user interface element is visually de-highlighted in relation to the environment in a first manner. A non-temporary computer-readable storage medium in which the first user interface element is not visually de-highlighted to the environment in the first manner, according to the determination that the second user interface element is a second type of user interface element different from the first type of user interface element that overlaps with the first user interface element.

159. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and Means for detecting that a first event has occurred via one or more input devices while a first user interface element is being displayed in the environment from the current viewpoint of the user of the computer system via the display generation component, A computer system comprising: means for displaying a second user interface element different from the first user interface element in the environment in response to detecting that the first event has occurred, The second user interface element overlaps at least partially with the first user interface element from the current viewpoint of the user of the computer system. In accordance with the determination that the second user interface element is a first type of user interface element that overlaps with the first user interface element, the first user interface element is visually de-highlighted in relation to the environment in a first manner. A computer system in which, upon determination that the second user interface element is a second type of user interface element different from the first type of user interface element that overlaps with the first user interface element, the first user interface element is not visually de-highlighted in relation to the environment in the first manner.

160. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and A computer system comprising one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, and the one or more programs include instructions to perform the method according to any one of claims 133 to 156.

161. A non-temporary computer-readable storage medium for storing one or more programs, wherein the one or more programs, when executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, include instructions causing the computer system to perform the method according to any one of claims 133 to 156.

162. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and A computer system comprising means for performing the method described in any one of claims 133 to 156.

163. In a computer system that communicates with one or more input devices and display generation components, To simultaneously display a first virtual object and a second virtual object in a three-dimensional environment that is visible through the display generation component, While the first virtual object and the second virtual object are simultaneously displayed via the display generation component, a first input is detected via one or more input devices, which includes a request to move the first virtual object relative to the second virtual object. In response to detecting the first input, In accordance with the first input, the first virtual object is moved relative to the second virtual object. A method comprising: reducing the opacity of individual parts of the second virtual object, in accordance with the determination that moving the first virtual object while the first virtual object is further away from the user's viewpoint than the second virtual object causes the current location of the first virtual object to overlap with the current location of the second virtual object with respect to the viewpoint of the user of the computer system.

164. In response to detecting the first input, The method according to claim 163, further comprising: stopping the reduction of the opacity of the individual portion of the second virtual object in accordance with the determination that moving the first virtual object does not cause the current location of the first virtual object to overlap with the current location of the second virtual object with respect to the user's viewpoint.

165. In response to detecting the first input, The method according to claim 163, further comprising, while the first virtual object is closer to the user's viewpoint than the second virtual object, stopping the reduction of the opacity of the individual portion of the second virtual object in accordance with the determination that moving the first virtual object causes the current location of the first virtual object to overlap with the current location of the second virtual object with respect to the user's viewpoint.

166. The overlap between the first virtual object and the second virtual object while the first virtual object is further away from the user's viewpoint than the second virtual object includes a first degree of overlap with respect to the user's viewpoint, and the method is While the current location of the first virtual object overlaps with the current location of the second virtual object with respect to the user's viewpoint, the first virtual object is further away from the user's viewpoint than the second virtual object, and the opacity of the individual parts of the second virtual object is reduced, To detect a second input via one or more input devices that moves the first virtual object relative to the second virtual object, In response to detecting the second input, Moving the first virtual object according to the second input, The method according to any one of claims 163 to 165, further comprising: reducing the opacity of an additional portion of the second virtual object that is different from the individual portions of the second virtual object while the first virtual object is further from the user's viewpoint than the second virtual object, in accordance with a determination that the movement of the first virtual object causes the current location of the first virtual object to overlap with the current location of the second virtual object with respect to the user's viewpoint, including a second degree of overlap with respect to the user's viewpoint.

167. In response to detecting the first input, while the first virtual object is further away from the user's viewpoint than the second virtual object, moving the first virtual object causes the current location of the first virtual object to overlap with the current location of the second virtual object with respect to the user's viewpoint, according to the determination. In accordance with the determination that the distance between the first virtual object and the second virtual object with respect to the user's viewpoint is a first distance, the individual parts of the second virtual object have a first size with respect to the three-dimensional environment. The method according to any one of claims 163 to 166, wherein, in accordance with the determination that the distance between the first virtual object and the second virtual object with respect to the user's viewpoint is a second distance different from the first distance, the individual parts of the second virtual object have a second size different from the first size with respect to the three-dimensional environment.

168. The individual parts of the second virtual object include a first part and a second part that is different from the first part. The first portion corresponds to the area of ​​visual overlap between the first virtual object and the second virtual object with respect to the user's viewpoint, The method according to claim 163, wherein the second portion corresponds to a region surrounding the first portion of the second virtual object with respect to the user's viewpoint.

169. When the first virtual object overlaps with the current location of the second virtual object with respect to the user's viewpoint, according to the determination that the first virtual object is at a first distance from the second virtual object, the second portion of the second virtual object extends beyond the boundary of the first virtual object by a first amount. The method according to claim 168, wherein when the first virtual object overlaps with the current location of the second virtual object with respect to the user's viewpoint, the second portion of the second virtual object extends beyond the boundary of the first virtual object by a second amount different from the first amount, according to the determination that the first virtual object is at a second distance from the second virtual object that is different from the first distance.

170. While the first input is in progress, the termination of the first input is detected, In response to detecting the end of the first input, The method according to any one of claims 163 to 169, further comprising adding the first virtual object to the second virtual object in accordance with the determination that the current location of the first virtual object is within a threshold distance of the current location of the second virtual object when the first input is terminated.

171. The method according to claim 170, further comprising detecting the termination of the first input, and determining that when the first input terminates, the current location of the first virtual object is not within the threshold distance of the current location of the second virtual object, and the current location of the first virtual object is closer to the user's viewpoint than the current location of the second virtual object, thereby ceasing to add the first virtual object to the second virtual object.

172. The method according to claim 170 or 171, further comprising, in response to detecting the termination of the first input, ceasing to add the first virtual object to the second virtual object according to the determination that the current location of the first virtual object is further from the user's viewpoint than the current location of the second virtual object.

173. While the first virtual object and the second virtual object are displayed simultaneously, the first portion of the first virtual object is displayed with a first level of visual prominence relative to the three-dimensional environment, and the second portion of the second virtual object, distinct from the individual portions of the second virtual object, is displayed with a second level of visual prominence relative to the three-dimensional environment, and the method is as follows: While the first portion of the first virtual object and the second portion of the second virtual object are simultaneously displayed with the second level of visual prominence, and while the first input is detected, and while the movement of the first virtual object satisfies one or more criteria, In accordance with the determination that the current location of the first virtual object is within the threshold distance of the second virtual object, and that the current location of the first virtual object is closer to the user's viewpoint than the current location of the second virtual object, the second portion of the second virtual object is displayed with a third level of visual splendor that is greater than the second level of visual splendor. The method according to any one of claims 163 to 172, further comprising: determining that the current location of the first virtual object is further from the user's viewpoint than the current location of the second virtual object; and discontinuing the display of the second portion of the second virtual object having a third level of visual prominence.

174. In response to the detection of the first input, the end of the first input is detected while the opacity of the individual parts of the second virtual object is reduced, in accordance with the determination that the current location of the first virtual object is further from the user's viewpoint than the current location of the second virtual object. The method according to any one of claims 163 to 173, further comprising: detecting the termination of the first input, determining that the current location of the first virtual object is further from the user's viewpoint than the current location of the second virtual object, and increasing the opacity of the individual portion of the second virtual object in accordance with the determination that the current location of the first virtual object causes the first virtual object to overlap with the current location of the second virtual object with respect to the user's viewpoint.

175. In response to detecting the first input, while the first virtual object is being moved relative to the second virtual object according to the first input, In accordance with the determination that the requested movement of the first virtual object includes a request to move the current location of the first virtual object by a first magnitude through the second virtual object, from a location in front of the second virtual object from the user's perspective to a location behind the second virtual object from the user's perspective, the first virtual object is moved by a second magnitude. The method according to any one of claims 163 to 174, further comprising moving the first virtual object by a third size smaller than the second size, in accordance with the determination that the requested movement of the first virtual object includes a request to move the current location of the first virtual object by a first size through the second virtual object from a location behind the second virtual object from the user's viewpoint to a location in front of the second virtual object from the user's viewpoint.

176. The method according to claim 175, wherein the first virtual object is prevented from being moved through the second virtual object in the direction from in front of the second virtual object to behind the second virtual object, from the user's viewpoint.

177. Moving the first virtual object from a location in front of the second virtual object to a location behind the second virtual object with respect to the user's viewpoint is: In accordance with the determination that the requested movement of the first virtual object corresponds to a movement speed of the first virtual object greater than the threshold speed, when the first virtual object is within the threshold distance of the second virtual object, the first virtual object is moved through the second virtual object without snapping the first virtual object to the second virtual object. The method according to claim 175 or 176, comprising: snapping the first virtual object to the second virtual object when the first virtual object is within the threshold distance of the second virtual object while the first virtual object is moving through the second virtual object in accordance with the determination that the requested movement of the first virtual object corresponds to a speed of movement of the first virtual object that is less than the threshold speed.

178. The method according to claim 177, wherein moving the first virtual object from the location behind the second virtual object to the location in front of the second virtual object includes snapping the first virtual object to the second virtual object when the first virtual object is within the threshold distance of the second virtual object.

179. The method according to claim 177 or 178, wherein the speed of the movement of the first virtual object is the average speed of the movement of the first virtual object.

180. While the first virtual object is being moved relative to the second virtual object according to the first input, In accordance with the determination that the current location of the first virtual object is within a threshold distance of the second portion of the second virtual object, which is displayed at a visual splendor level greater than the visual splendor threshold level for the three-dimensional environment, the first virtual object is snapped to the second portion of the second virtual object in the three-dimensional environment. The method according to any one of claims 163 to 179, further comprising: determining that the current location of the first virtual object is within the threshold distance of the location corresponding to the second portion of the second virtual object, but that the second portion of the second virtual object is not displayed at a level of visual prominence greater than the visual prominence of the threshold level for the three-dimensional environment; and then ceasing to snap the first virtual object to the second portion of the second virtual object.

181. While the second virtual object described above is being displayed, In accordance with the determination that a first portion of an individual virtual object has a location corresponding to the same portion of the three-dimensional environment as the second portion of the second virtual object, the second portion of the second virtual object is displayed with a first level of visual splendor that is below the visual splendor threshold level. The method according to claim 180, further comprising: displaying the second portion of the second virtual object with a second level of visual splendor greater than the visual splendor threshold level, in accordance with the determination that there is no object having the same location as the portion of the three-dimensional environment as the second portion of the second virtual object.

182. While the second virtual object described above is being displayed, In accordance with the determination that the field of view between the user's viewpoint and the individual field of view of the second virtual object is greater than a threshold angle, the second portion of the second virtual object having a first level of visual strife that is less than the threshold level of visual strife for the three-dimensional environment is displayed. The method according to claim 180 or 181, further comprising: displaying the second portion of the second virtual object with a second level of visual prominence greater than the threshold level of visual prominence for the three-dimensional environment, in accordance with the determination that the field of view between the user's viewpoint and the individual field of view of the second virtual object is less than or equal to the threshold angle.

183. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and A system comprising one or more programs, wherein the one or more programs are stored in the memory and are configured to be executed by the one or more processors, and the one or more programs are The first virtual object and the second virtual object are simultaneously displayed in a three-dimensional environment that is visible through the display generation component, While the first virtual object and the second virtual object are being displayed simultaneously via the display generation component, a first input is detected via one or more input devices, which includes a request to move the first virtual object relative to the second virtual object. In response to detecting the first input, In accordance with the first input, the first virtual object is moved relative to the second virtual object. A computer system including an instruction to reduce the opacity of individual parts of the second virtual object, in accordance with a determination that moving the first virtual object while the first virtual object is further away from the user's viewpoint than the second virtual object would cause the current location of the first virtual object to overlap with the current location of the second virtual object with respect to the viewpoint of the user of the computer system.

184. A non-temporary computer-readable storage medium for storing one or more programs, wherein the one or more programs include instructions, and when the instructions are executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, the computer system To simultaneously display a first virtual object and a second virtual object in a three-dimensional environment that is visible through the display generation component, While the first virtual object and the second virtual object are simultaneously displayed via the display generation component, a first input is detected via one or more input devices, which includes a request to move the first virtual object relative to the second virtual object. In response to detecting the first input, The first virtual object is moved relative to the second virtual object according to the first input, A non-temporary computer-readable storage medium that performs a method including: reducing the opacity of individual parts of the second virtual object, in accordance with the determination that moving the first virtual object while the first virtual object is further away from the user's viewpoint than the second virtual object causes the current location of the first virtual object to overlap with the current location of the second virtual object with respect to the viewpoint of the user of the computer system.

185. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and Means for simultaneously displaying a first virtual object and a second virtual object in a three-dimensional environment that is visible through the display generation component, Means for detecting a first input via one or more input devices, which includes a request to move the first virtual object relative to the second virtual object, while the first virtual object and the second virtual object are simultaneously displayed via the display generation component, In response to detecting the first input, In accordance with the first input, the first virtual object is moved relative to the second virtual object. A computer system comprising: means for reducing the opacity of individual parts of the second virtual object, according to a determination that moving the first virtual object while the first virtual object is further away from the user's viewpoint than the second virtual object causes the current location of the first virtual object to overlap with the current location of the second virtual object with respect to the viewpoint of the user of the computer system.

186. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and A computer system comprising one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, and the one or more programs include instructions for performing the method according to any one of claims 163 to 182.

187. A non-temporary computer-readable storage medium for storing one or more programs, wherein the one or more programs, when executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, include instructions causing the computer system to perform the method according to any one of claims 163 to 182.

188. A computer system that communicates with a display generation component and one or more input devices, wherein the computer system is One or more processors, Memory and A computer system comprising means for carrying out the method described in any one of claims 163 to 182.