Devices, methods and graphical user interfaces for preview of computer-generated virtual objects for extended reality applications
Provided herein are systems and methods for implementing visual content previews for content items associated with a software application. The content preview includes a visual preview of a content item that is updated based on modifications to the application source code. The content preview includes a plurality of viewports, with each viewport being independently controllable. Each viewport of the content preview can be “paused” to prevent the viewport from updating in response to modifications of the source code, while the content previews associated with other viewports are modified with modification to the source code. In this way, a developer can visually compare different versions of a content item when developing content in the preview application. The device displays a bounding volume concurrently with the content preview to visually depict a relationship between the size of content item and the three-dimensional size of a three-dimensional environment associated with the software application.
1 . A method comprising:
at an electronic device in communication with a display and one or more input devices:
obtaining three-dimensional size information associated with a first software application for a three-dimensional environment, including three-dimensional size information of a bounding volume of the three-dimensional environment, wherein the first software application is a content application associated with a virtual object being previewed;
obtaining three-dimensional size and location information associated with the virtual object for the first software application that is to be placed within the three-dimensional environment when displayed by the first software application;
displaying via the display, in a second software application different from the first software application, and in accordance with the three-dimensional size and location information associated with the virtual object, a representation of the virtual object, wherein the second software application is a preview application that the virtual object is previewed within;
determining the bounding volume of the first software application based on the three-dimensional size information associated the first software application;
determining that one or more portions of the representation of the virtual object are outside of the determined bounding volume of the first software application; and
in accordance with the determination that one or more portions of the representation of the virtual object are outside of the determined bounding volume of the first software application, displaying, in the second software application, one or more visual attributes at the one or more portions of the representation of the virtual object that are outside of the determined bounding volume.
2 . The method of claim 1 , wherein the one or more visual attributes displaying a color at the one or more portions that are outside of the determined bounding volume, wherein the displayed color is visually distinct from a color of one or more portions of the representation of the virtual object that are inside of the determined bounding volume.
3 . The method of claim 1 , wherein the method further comprises displaying via the display, in the second software application, and in accordance with the three-dimensional size information associated with the first software application, a representation of the bounding volume for the first software application, a representation of the bounding volume for the first software application concurrently with the representation of the virtual object.
4 . The method of claim 3 , wherein the method further comprises:
determining, based on the obtained three-dimensional size and location information associated with the virtual object and based on the three-dimensional size information associated with the first software application that a portion of the virtual object is outside of the bounding volume; and
in accordance with the determination that at least a portion of the virtual object is outside of the bounding volume, displaying the representation of the virtual object with the displayed bounding volume such that the portion of the representation of the virtual object is outside of the bounding volume.
5 . The method of claim 3 , wherein the method further comprises:
determining, based on the three-dimensional size and location information associated with the virtual object and based on the three-dimensional size information associated with the first software application that the virtual object fits within the bounding volume; and
in accordance with the determination that the virtual object fits within bounding volume, displaying the representation of the virtual object within the displayed bounding volume.
6 . The method of claim 3 , wherein the method further comprises:
while displaying the representation of the virtual object, and while displaying the bounding volume, receiving, via the one or more input devices, an input corresponding to a selection to remove the bounding volume from being displayed; and
in response to receiving the input, ceasing display of the bounding volume.
7 . The method of claim 3 , wherein displaying the bounding volume concurrently with the representation of the virtual object includes displaying a first representation of the bounding volume concurrently with a first representation of the virtual object from a first viewpoint and displaying a second representation of the bounding volume concurrently with a second representation of the virtual object from a second viewpoint, different from the first viewpoint.
8 . An electronic device that is in communication with a display and one or more input devices, the electronic device comprising:
one or more processors;
memory; and
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, the one or more programs including instructions for:
obtaining three-dimensional size information associated with a first software application for a three-dimensional environment, including three-dimensional size information of a bounding volume of the three-dimensional environment, wherein the first software application is a content application associated with a virtual object being previewed;
obtaining three-dimensional size and location information associated with the virtual object for the first software application that is to be placed within the three-dimensional environment when displayed by the first software application;
displaying via the display, in a second software application different from the first software application, and in accordance with the three-dimensional size and location information associated with the virtual object, a representation of the virtual object, wherein the second software application is a preview application that the virtual object is previewed within;
determining the bounding volume of the first software application based on the three-dimensional size information associated the first software application;
determining that one or more portions of the representation of the virtual object are outside of the determined bounding volume of the first software application; and
in accordance with the determination that one or more portions of the representation of the virtual object are outside of the determined bounding volume of the first software application, displaying, in the second software application, one or more visual attributes at the one or more portions of the representation of the virtual object that are outside of the determined bounding volume.
9 . The electronic device of claim 8 , wherein the one or more visual attributes displaying a color at the one or more portions that are outside of the determined bounding volume, wherein the displayed color is visually distinct from a color of one or more portions of the representation of the virtual object that are inside of the determined bounding volume.
10 . The electronic device of claim 8 , wherein the one or more programs further include instructions for displaying via the display, and in accordance with the three-dimensional size information associated with the first software application, a representation of the bounding volume for the first software application, a representation of the bounding volume for the first software application concurrently with the representation of the virtual object.
11 . The electronic device of claim 10 , wherein the one or more programs further include instructions for:
determining, based on the obtained three-dimensional size and location information associated with the virtual object and based on the three-dimensional size information associated with the first software application that a portion of the virtual object is outside of the bounding volume; and
in accordance with the determination that at least a portion of the virtual object is outside of the bounding volume, displaying the representation of the virtual object with the displayed bounding volume such that the portion of the representation of the virtual object is outside of the bounding volume.
12 . The electronic device of claim 10 , wherein the one or more programs further include instructions for:
determining, based on the three-dimensional size and location information associated with the virtual object and based on the three-dimensional size information associated with the first software application that the virtual object fits within the bounding volume; and
in accordance with the determination that the virtual object fits within bounding volume, displaying the representation of the virtual object within the displayed bounding volume.
13 . The electronic device of claim 10 , wherein the one or more programs further include instructions for:
while displaying the representation of the virtual object, and while displaying the bounding volume, receiving, via the one or more input devices, an input corresponding to a selection to remove the bounding volume from being displayed; and
in response to receiving the input, ceasing display of the bounding volume.
14 . The electronic device of claim 10 , wherein displaying the bounding volume concurrently with the representation of the virtual object includes displaying a first representation of the bounding volume concurrently with a first representation of the virtual object from a first viewpoint and displaying a second representation of the bounding volume concurrently with a second representation of the virtual object from a second viewpoint, different from the first viewpoint.
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:
obtain three-dimensional size information associated with a first software application for a three-dimensional environment, including three-dimensional size information of a bounding volume of the three-dimensional environment, wherein the first software application is a content application associated with a virtual object being previewed;
obtain three-dimensional size and location information associated with the virtual object for the first software application that is to be placed within the three-dimensional environment when displayed by the first software application;
display via a display, in a second software application different from the first software application, and in accordance with the three-dimensional size and location information associated with the virtual object, a representation of the virtual object, wherein the second software application is a preview application that the virtual object is previewed within;
determine the bounding volume of the first software application based on the three-dimensional size information associated the first software application;
determine that one or more portions of the representation of the virtual object are outside of the determined bounding volume of the first software application; and
in accordance with the determination that one or more portions of the representation of the virtual object are outside of the determined bounding volume of the first software application, display, in the second software application, one or more visual attributes at the one or more portions of the representation of the virtual object that are outside of the determined bounding volume.
16 . The non-transitory computer readable storage medium of claim 15 , wherein the one or more visual attributes includes displaying a color at the one or more portions that are outside of the determined bounding volume, wherein the displayed color is visually distinct from a color of one or more portions of the representation of the virtual object that are inside of the determined bounding volume.
17 . The non-transitory computer readable storage medium of claim 15 , wherein the instructions further cause the electronic device to displaying via the display, and in accordance with the three-dimensional size information associated with the first software application, a representation of the bounding volume for the first software application, a representation of the bounding volume for the first software application concurrently with the representation of the virtual object.
18 . The non-transitory computer readable storage medium of claim 17 , wherein the instructions further cause the electronic device to:
determining, based on the obtained three-dimensional size and location information associated with the virtual object and based on the three-dimensional size information associated with the first software application that a portion of the virtual object is outside of the bounding volume; and
in accordance with the determination that at least a portion of the virtual object is outside of the bounding volume, displaying the representation of the virtual object with the displayed bounding volume such that the portion of the representation of the virtual object is outside of the bounding volume.
19 . The non-transitory computer readable storage medium of claim 17 , wherein the instructions further cause the electronic device to:
determining, based on the three-dimensional size and location information associated with the virtual object and based on the three-dimensional size information associated with the first software application that the virtual object fits within the bounding volume; and
in accordance with the determination that the virtual object fits within bounding volume, displaying the representation of the virtual object within the displayed bounding volume.
20 . The non-transitory computer readable storage medium of claim 17 , wherein the instructions further cause the electronic device to:
while displaying the representation of the virtual object, and while displaying the bounding volume, receiving, via one or more input devices, an input corresponding to a selection to remove the bounding volume from being displayed; and
in response to receiving the input, ceasing display of the bounding volume.