Systems and methods of transitioning display of a three-dimensional object based on tilt
Some examples of the disclosure are directed to systems and methods for transitioning an object between orientations in a three-dimensional environment. In some examples, an electronic device presents a three-dimensional environment including a virtual object that is displayed in a first orientation in the three-dimensional environment. While displaying the three-dimensional environment, the electronic device detects movement of a viewpoint of a user of the electronic device. In response to detecting the movement of the viewpoint, the electronic device moves the virtual object based on the movement of the viewpoint. In accordance with a determination that the movement of the viewpoint exceeds a threshold movement, the electronic device displays the virtual object in a second orientation in the three-dimensional environment. In accordance with a determination that the movement of the viewpoint does not exceed the threshold movement, the electronic device maintains display of the virtual object in the first orientation.
1 . A method comprising:
at an electronic device in communication with a display and one or more input devices:
presenting, via the display, a three-dimensional environment including a first object, wherein the first object is displayed in a first manner in the three-dimensional environment relative to a viewpoint of a user of the electronic device, wherein displaying the first object in the first manner in the three-dimensional environment includes displaying the first object in a tilt locked orientation in the three-dimensional environment;
while presenting the three-dimensional environment including the first object that is displayed in the first manner, detecting, via the one or more input devices, a first input that includes movement of the viewpoint of the user; and
in response to detecting the first input:
moving the first object in the three-dimensional environment as the movement of the viewpoint of the user is detected, including:
in accordance with a determination that the movement of the viewpoint of the user exceeds a threshold movement, displaying, via the display, the first object in a second manner, different from the first manner, in the three-dimensional environment relative to the viewpoint of the user, wherein displaying the first object in the second manner in the three-dimensional environment includes displaying the first object in a head locked orientation in the three-dimensional environment; and
in accordance with a determination that the movement of the viewpoint of the user does not exceed the threshold movement, maintaining display of the first object in the first manner in the three-dimensional environment relative to the viewpoint of the user.
2 . The method of claim 1 , wherein the determination that the movement of the viewpoint of the user exceeds the threshold movement is in accordance with a determination that a vertical component of the movement of the viewpoint of the user exceeds a threshold angle relative to a ray intersecting a horizon of a field of view of the user and normal to a force of gravity.
3 . The method of claim 1 , wherein, before detecting the first input, the three-dimensional environment further includes one or more user interface elements that are displayed concurrently with the first object, the method further comprising:
in response to detecting the first input:
moving the one or more user interface elements with the first object in the three-dimensional environment based on the movement of the viewpoint of the user.
4 . The method of claim 3 , further comprising:
in response to detecting the first input:
in accordance with the determination that the movement of the viewpoint of the user does not exceed the threshold movement, displaying, via the display, the one or more user interface elements in a tilt locked orientation in the three-dimensional environment; and
in accordance with the determination that the movement of the viewpoint of the user exceeds the threshold movement, displaying the one or more user interface elements in a head locked orientation in the three-dimensional environment.
5 . The method of claim 1 , further comprising:
while displaying the first object in the second manner in the three-dimensional environment in accordance with the determination that the movement of the viewpoint exceeds the threshold movement in response to detecting the first input, detecting, via the one or more input devices, a second input that includes a second movement of the viewpoint of the user; and
in response to detecting the second input:
in accordance with a determination that the second movement of the viewpoint of the user exceeds a second threshold movement, redisplaying, via the display, the first object in the first manner in the three-dimensional environment relative to the viewpoint of the user; and
in accordance with a determination that the second movement of the viewpoint of the user does not exceed the second threshold movement, maintaining display of the first object in the second manner in the three-dimensional environment relative to the viewpoint of the user.
6 . The method of claim 1 , further comprising:
while detecting the first input that includes the movement of the viewpoint of the user:
in accordance with a determination that the movement of the viewpoint of the user exceeds the threshold movement, transitioning from displaying, via the display, the first object in the first manner to displaying the first object in the second manner in the three-dimensional environment relative to the viewpoint of the user.
7 . The method of claim 1 , wherein, before detecting the first input, the three-dimensional environment further includes a second object that is displayed in a third manner, different from the first manner and the second manner, in the three-dimensional environment relative to the viewpoint of the user, the method further comprising:
in response to detecting the first input:
forgoing moving the second object in the three-dimensional environment based on the movement of the viewpoint of the user; and
maintaining display, via the display, of the second object in the third manner in the three-dimensional environment relative to the viewpoint of the user.
8 . An electronic device comprising:
one or more processors;
memory; and
one or more programs stored in the memory and configured to be executed by the one or more processors, the one or more programs including instructions for performing a method comprising:
presenting, via a display, a three-dimensional environment including a first object, wherein the first object is displayed in a first manner in the three-dimensional environment relative to a viewpoint of a user of the electronic device, wherein displaying the first object in the first manner in the three-dimensional environment includes displaying the first object in a tilt locked orientation in the three-dimensional environment;
while presenting the three-dimensional environment including the first object that is displayed in the first manner, detecting, via one or more input devices, a first input that includes movement of the viewpoint of the user; and
in response to detecting the first input:
moving the first object in the three-dimensional environment as the movement of the viewpoint of the user is detected, including:
in accordance with a determination that the movement of the viewpoint of the user exceeds a threshold movement, displaying, via the display, the first object in a second manner, different from the first manner, in the three-dimensional environment relative to the viewpoint of the user, wherein displaying the first object in the second manner in the three-dimensional environment includes displaying the first object in a head locked orientation in the three-dimensional environment; and
in accordance with a determination that the movement of the viewpoint of the user does not exceed the threshold movement, maintaining display of the first object in the first manner in the three-dimensional environment relative to the viewpoint of the user.
9 . The electronic device of claim 8 , wherein the determination that the movement of the viewpoint of the user exceeds the threshold movement is in accordance with a determination that a vertical component of the movement of the viewpoint of the user exceeds a threshold angle relative to a ray intersecting a horizon of a field of view of the user and normal to a force of gravity.
10 . The electronic device of claim 8 , wherein, before detecting the first input, the three-dimensional environment further includes one or more user interface elements that are displayed concurrently with the first object, and the method further comprises:
in response to detecting the first input:
moving the one or more user interface elements with the first object in the three-dimensional environment based on the movement of the viewpoint of the user.
11 . The electronic device of claim 10 , wherein the method further comprises:
in response to detecting the first input:
in accordance with the determination that the movement of the viewpoint of the user does not exceed the threshold movement, displaying, via the display, the one or more user interface elements in a tilt locked orientation in the three-dimensional environment; and
in accordance with the determination that the movement of the viewpoint of the user exceeds the threshold movement, displaying the one or more user interface elements in a head locked orientation in the three-dimensional environment.
12 . The electronic device of claim 8 , wherein the method further comprises:
while displaying the first object in the second manner in the three-dimensional environment in accordance with the determination that the movement of the viewpoint exceeds the threshold movement in response to detecting the first input, detecting, via the one or more input devices, a second input that includes a second movement of the viewpoint of the user; and
in response to detecting the second input:
in accordance with a determination that the second movement of the viewpoint of the user exceeds a second threshold movement, redisplaying, via the display, the first object in the first manner in the three-dimensional environment relative to the viewpoint of the user; and
in accordance with a determination that the second movement of the viewpoint of the user does not exceed the second threshold movement, maintaining display of the first object in the second manner in the three-dimensional environment relative to the viewpoint of the user.
13 . The electronic device of claim 8 , wherein the method further comprises:
while detecting the first input that includes the movement of the viewpoint of the user:
in accordance with a determination that the movement of the viewpoint of the user exceeds the threshold movement, transitioning from displaying, via the display, the first object in the first manner to displaying the first object in the second manner in the three-dimensional environment relative to the viewpoint of the user.
14 . The electronic device of claim 8 , wherein, before detecting the first input, the three-dimensional environment further includes a second object that is displayed in a third manner, different from the first manner and the second manner, in the three-dimensional environment relative to the viewpoint of the user, and the method further comprises:
in response to detecting the first input:
forgoing moving the second object in the three-dimensional environment based on the movement of the viewpoint of the user; and
maintaining display, via the display, of the second object in the third manner in the three-dimensional environment relative to the viewpoint of the user.
15 . A non-transitory computer readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by one or more processors of an electronic device, cause the electronic device to perform a method comprising:
presenting, via a display, a three-dimensional environment including a first object, wherein the first object is displayed in a first manner in the three-dimensional environment relative to a viewpoint of a user of the electronic device, wherein displaying the first object in the first manner in the three-dimensional environment includes displaying the first object in a tilt locked orientation in the three-dimensional environment;
while presenting the three-dimensional environment including the first object that is displayed in the first manner, detecting, via one or more input devices, a first input that includes movement of the viewpoint of the user; and
in response to detecting the first input:
moving the first object in the three-dimensional environment as the movement of the viewpoint of the user is detected, including:
in accordance with a determination that the movement of the viewpoint of the user exceeds a threshold movement, displaying, via the display, the first object in a second manner, different from the first manner, in the three-dimensional environment relative to the viewpoint of the user, wherein displaying the first object in the second manner in the three-dimensional environment includes displaying the first object in a head-locked orientation in the three-dimensional environment; and
in accordance with a determination that the movement of the viewpoint of the user does not exceed the threshold movement, maintaining display of the first object in the first manner in the three-dimensional environment relative to the viewpoint of the user.
16 . The non-transitory computer readable storage medium of claim 15 , wherein the determination that the movement of the viewpoint of the user exceeds the threshold movement is in accordance with a determination that a vertical component of the movement of the viewpoint of the user exceeds a threshold angle relative to a ray intersecting a horizon of a field of view of the user and normal to a force of gravity.
17 . The non-transitory computer readable storage medium of claim 15 , wherein, before detecting the first input, the three-dimensional environment further includes one or more user interface elements that are displayed concurrently with the first object, and the method further comprises:
in response to detecting the first input:
moving the one or more user interface elements with the first object in the three-dimensional environment based on the movement of the viewpoint of the user.
18 . The non-transitory computer readable storage medium of claim 17 , wherein the method further comprises:
in response to detecting the first input:
in accordance with the determination that the movement of the viewpoint of the user does not exceed the threshold movement, displaying, via the display, the one or more user interface elements in a tilt locked orientation in the three-dimensional environment; and
in accordance with the determination that the movement of the viewpoint of the user exceeds the threshold movement, displaying the one or more user interface elements in a head locked orientation in the three-dimensional environment.
19 . The non-transitory computer readable storage medium of claim 15 , wherein the method further comprises:
while displaying the first object in the second manner in the three-dimensional environment in accordance with the determination that the movement of the viewpoint exceeds the threshold movement in response to detecting the first input, detecting, via the one or more input devices, a second input that includes a second movement of the viewpoint of the user; and
in response to detecting the second input:
in accordance with a determination that the second movement of the viewpoint of the user exceeds a second threshold movement, redisplaying, via the display, the first object in the first manner in the three-dimensional environment relative to the viewpoint of the user; and
in accordance with a determination that the second movement of the viewpoint of the user does not exceed the second threshold movement, maintaining display of the first object in the second manner in the three-dimensional environment relative to the viewpoint of the user.
20 . The non-transitory computer readable storage medium of claim 15 , wherein the method further comprises:
while detecting the first input that includes the movement of the viewpoint of the user:
in accordance with a determination that the movement of the viewpoint of the user exceeds the threshold movement, transitioning from displaying, via the display, the first object in the first manner to displaying the first object in the second manner in the three-dimensional environment relative to the viewpoint of the user.
21 . The non-transitory computer readable storage medium of claim 15 , wherein, before detecting the first input, the three-dimensional environment further includes a second object that is displayed in a third manner, different from the first manner and the second manner, in the three-dimensional environment relative to the viewpoint of the user, and the method further comprises:
in response to detecting the first input:
forgoing moving the second object in the three-dimensional environment based on the movement of the viewpoint of the user; and
maintaining display, via the display, of the second object in the third manner in the three-dimensional environment relative to the viewpoint of the user.
22 . The method of claim 2 , wherein the vertical component of the movement of the viewpoint of the user corresponds to a radial upward or downward tilt of the viewpoint along a pitch direction relative to the ray.
23 . The electronic device of claim 9 , wherein the vertical component of the movement of the viewpoint of the user corresponds to a radial upward or downward tilt of the viewpoint along a pitch direction relative to the ray.
24 . The non-transitory computer readable storage medium of claim 16 , wherein the vertical component of the movement of the viewpoint of the user corresponds to a radial upward or downward tilt of the viewpoint along a pitch direction relative to the ray.