Microsoft Patent | Efficiency enhancements to construction of virtual reality environments
Patent: Efficiency enhancements to construction of virtual reality environments
Drawings: Click to check drawins
Publication Number: 20210183156
Publication Date: 20210617
Applicant: Microsoft
Abstract
The construction of virtual reality environments can be made more efficient with enhancements directed to the sizing of objects to be utilized in the construction of virtual reality environments, enhancements directed to the simultaneous display of multiple thumbnails, or other like indicators, of virtual reality environments being constructed, enhancements directed to controlling the positioning of a view of a virtual reality environment, enhancements directed to conceptualizing the virtual reality environment as perceived through different types of three-dimensional presentational hardware, and enhancements directed to the exchange of objects between multiple virtual reality environments being constructed.
Claims
-
One or more computer-readable storage media comprising computer-executable instructions, which, when executed by one or more processing units of one or more computing devices, cause the one or more computing devices to: render, as an image onto a two-dimensional surface represented by an inside of a sphere, a three-dimensional environment as perceived by a viewer at a center of the sphere, wherein the rendering comprises generating both texture information and depth information for the image, the depth information being based on a location of a viewer as compared with location of objects in the three-dimensional environment; apply a stencil buffer to the rendered two-dimensional image, leaving only a first portion of the rendered two-dimensional image; generate, for display through a virtual-reality display device, a simulated three-dimensional thumbnail image that is representative of the three-dimensional environment by parallax shading the first portion of the rendered two-dimensional image based on the depth information and a location of a right eye of a viewer and separately parallax shading the first portion of the rendered two-dimensional image based on the depth information and a location of a left eye of the viewer; and regenerating, for display through the virtual-reality display device, the simulated three-dimensional thumbnail image by again parallax shading the first portion of the rendered two-dimensional image based on the depth information and a new location of the right eye of the viewer and separately again parallax shading the first portion of the rendered two-dimensional image based on the depth information and a new location of the left eye of the viewer, wherein the new location of the right eye and the new location of the left eye are because the viewer moved their head, the regenerating in response to the viewer moving their head causing the simulated three-dimensional thumbnail image to appear, to the viewer, through the virtual-reality display device, to behave as a three-dimensional object.
-
The computer-readable storage media of claim 1, further comprising computer-executable instructions which, when executed by the one or more processing units of the one or more computing devices, cause the one or more computing devices to further: re-execute the computer-executable instructions of claim 1 for multiple other three-dimensional environments to generate, and then regenerate in response to the user moving their head, multiple other simulated three-dimensional thumbnail images on a same interface.
-
The computer-readable storage media of claim 1, further comprising computer-executable instructions which, when executed by the one or more processing units of the one or more computing devices, cause the one or more computing devices to further: store the first portion of the rendered two-dimensional image in a thumbnail file.
-
The computer-readable storage media of claim 1, further comprising computer-executable instructions which, when executed by the one or more processing units of the one or more computing devices, cause the one or more computing devices to further: generate, for display through the virtual-reality display device, a ghost user, the ghost user being a representation of a user at a different point in a virtual reality environment, the ghost user comprising an indication of both a position and an orientation of the ghost user; and generate, for display through the virtual-reality display device, a preview window comprising a generated view of the virtual reality environment as it would be seen by a user positioned at the indicated position of the ghost user and oriented as the indicated orientation of the ghost user.
-
The computer-readable storage media of claim 4, wherein the ghost user comprises an indication of a scale of the ghost user as compared with the virtual reality environment.
-
The computer-readable storage media of claim 4, further comprising computer-executable instructions which, when executed by the one or more processing units of the one or more computing devices, cause the one or more computing devices to further: regenerate, for display through the virtual-reality display device, the ghost user in response to user action directed towards the ghost user, the user action repositioning or reorienting the ghost user; and generate, for display through the virtual-reality display device, the preview window in accordance with the repositioning or reorienting of the ghost user.
-
The computer-readable storage media of claim 4, further comprising computer-executable instructions which, when executed by the one or more processing units of the one or more computing devices, cause the one or more computing devices to further: regenerate, for display through the virtual-reality display device, in response to user action directed to a viewpoint switch visual element that is visually displayed proximate to the ghost user, the virtual reality environment as if the user was positioned at the indicated position of the ghost user and oriented as the indicated orientation of the ghost user.
-
The computer-readable storage media of claim 7, further comprising computer-executable instructions which, when executed by the one or more processing units of the one or more computing devices, cause the one or more computing devices to further: regenerate, for display through the virtual-reality display device, in response to a second user action, the virtual reality environment as if the user was again positioned at a same position as when the user directed the user action to the viewpoint switch visual element.
-
The computer-readable storage media of claim 8, wherein the position and orientation of the ghost user after the second user action is based on a last position and orientation of the user prior to the second user action.
-
The computer-readable storage media of claim 1, further comprising computer-executable instructions which, when executed by the one or more processing units of the one or more computing devices, cause the one or more computing devices to further: generate, for display through the virtual-reality display device, a shelf within a virtual reality environment; generate, for display through the virtual-reality display device, in response to a user dragging an object from another part of the virtual reality environment onto the shelf, a visually smaller version of the object visually displayed on the shelf; and write, in response to the user dragging the object from the other part of the virtual reality environment onto the shelf, three-dimensional object data, defining the object, into a clipboard data storage.
-
The computer-readable storage media of claim 1, further comprising computer-executable instructions which, when executed by the one or more processing units of the one or more computing devices, cause the one or more computing devices to further: generate, for display through the virtual-reality display device, a shelf within a virtual reality environment, the shelf having visually displayed on it a visually smaller version of an object; generate, for display through the virtual-reality display device, the object in another part of the virtual reality environment, in response to a user dragging the visually smaller version of the object from the shelf the other part of the virtual reality environment; and obtain, in response to the user dragging the visually smaller version of the object from the shelf the other part of the virtual reality environment, three-dimensional object data, defining the object, from a clipboard data storage.
-
The computer-readable storage media of claim 1, further comprising computer-executable instructions which, when executed by the one or more processing units of the one or more computing devices, cause the one or more computing devices to further: generate, for display through the virtual-reality display device, an object within a virtual reality environment; detect a first user action directed to a first part of the object, the first user action being performed with a first arm of the user; detect a second user action directed to a second part of the object, the second user action being performed with a second arm of the user; detect a third user action comprising at least one of: moving the first arm of the user away from the second arm of the user, moving the second arm of the user away from the first arm of the user, or moving both arms of the user away from each other; generate, for display through the virtual-reality display device, in response to the detecting the third user action, a non-uniformly resized version of the object, the non-uniformly resized version of the object differing in size from the object along an axis defined by the first part of the object and the second part of the object, the difference in size corresponding to a ratio between a current distance between the arms of the user and a distance between the arms of the user prior to the third user action.
-
The computer-readable storage media of claim 12, further comprising computer-executable instructions which, when executed by the one or more processing units of the one or more computing devices, cause the one or more computing devices to further: detect a user input prior to the second user action; and generate, in response to the detected user input, a uniformly resized version of the object, the uniformly resized version of the object differing in size from the object based on a magnitude of the detected user input.
-
The computer-readable storage media of claim 12, further comprising computer-executable instructions which, when executed by the one or more processing units of the one or more computing devices, cause the one or more computing devices to further: generate, for display through the virtual-reality display device, in response to detecting an initiation of the second user action, anchor points visually displayed on one or more locations of the object, the one or more locations comprising the second part of the object.
-
One or more computer-readable storage media comprising computer-executable instructions, which, when executed by one or more processing units of one or more computing devices, cause the one or more computing devices to: generate, for display through a virtual-reality display device, a ghost user, the ghost user being a representation of a user at a different point in a virtual reality environment, the ghost user comprising an indication of both a position and an orientation of the ghost user; and generate, for display through the virtual-reality display device, a preview window comprising a generated view of the virtual reality environment as it would be seen by a user positioned at the indicated position of the ghost user and oriented as the indicated orientation of the ghost user.
-
The computer-readable storage media of claim 15, further comprising computer-executable instructions which, when executed by the one or more processing units of the one or more computing devices, cause the one or more computing devices to further: regenerate, for display through the virtual-reality display device, the ghost user in response to user action directed towards the ghost user, the user action repositioning or reorienting the ghost user; and generate, for display through the virtual-reality display device, the preview window in accordance with the repositioning or reorienting of the ghost user.
-
The computer-readable storage media of claim 15, further comprising computer-executable instructions which, when executed by the one or more processing units of the one or more computing devices, cause the one or more computing devices to further: regenerate, for display through the virtual-reality display device, in response to user action directed to a viewpoint switch visual element that is visually displayed proximate to the ghost user, the virtual reality environment as if the user was positioned at the indicated position of the ghost user and oriented as the indicated orientation of the ghost user; and regenerate, for display through the virtual-reality display device, in response to a second user action, the virtual reality environment as if the user was again positioned at a same position as when the user directed the user action to the viewpoint switch visual element.
-
The computer-readable storage media of claim 15, further comprising computer-executable instructions which, when executed by the one or more processing units of the one or more computing devices, cause the one or more computing devices to further: generate, for display through the virtual-reality display device, an object within a virtual reality environment; detect a first user action directed to a first part of the object, the first user action being performed with a first arm of the user; detect a second user action directed to a second part of the object, the second user action being performed with a second arm of the user; detect a third user action comprising at least one of: moving the first arm of the user away from the second arm of the user, moving the second arm of the user away from the first arm of the user, or moving both arms of the user away from each other; generate, for display through the virtual-reality display device, in response to the detecting the third user action, a non-uniformly resized version of the object, the non-uniformly resized version of the object differing in size from the object along an axis defined by the first part of the object and the second part of the object, the difference in size corresponding to a ratio between a current distance between the arms of the user and a distance between the arms of the user prior to the third user action.
-
One or more computer-readable storage media comprising computer-executable instructions, which, when executed by one or more processing units of one or more computing devices, cause the one or more computing devices to: generate, for display through a virtual-reality display device, an object within a virtual reality environment; detect a first user action directed to a first part of the object, the first user action being performed with a first arm of the user; detect a second user action directed to a second part of the object, the second user action being performed with a second arm of the user; detect a third user action comprising at least one of: moving the first arm of the user away from the second arm of the user, moving the second arm of the user away from the first arm of the user, or moving both arms of the user away from each other; generate, for display through the virtual-reality display device, in response to the detecting the third user action, a non-uniformly resized version of the object, the non-uniformly resized version of the object differing in size from the object along an axis defined by the first part of the object and the second part of the object, the difference in size corresponding to a ratio between a current distance between the arms of the user and a distance between the arms of the user prior to the third user action.
-
The computer-readable storage media of claim 19, further comprising computer-executable instructions which, when executed by the one or more processing units of the one or more computing devices, cause the one or more computing devices to further: generate, for display through the virtual-reality display device, a shelf within a virtual reality environment; generate, for display through the virtual-reality display device, in response to a user dragging an object from another part of the virtual reality environment onto the shelf, a visually smaller version of the object visually displayed on the shelf; and write, in response to the user dragging the object from the other part of the virtual reality environment onto the shelf, three-dimensional object data, defining the object, into a clipboard data storage.
Description
CROSS-REFERENCE TO RELATED APPLICATION
[0001] This application is a divisional of, and claims priority to, U.S. patent application Ser. No. 16/168,800, filed on Oct. 23.sup.rd, 2018 and entitled “EFFICIENCY ENHANCEMENTS TO CONSTRUCTION OF VIRTUAL REALITY ENVIRONMENTS”, the entire specification of which is hereby incorporated by reference.
BACKGROUND
[0002] Because of the ubiquity of the hardware for generating them, two-dimensional graphical user interfaces for computing devices are commonplace. By contrast, three-dimensional graphical user interfaces, such as virtual reality, augmented reality, or mixed reality interfaces are more specialized because they were developed within specific contexts where the expense of the hardware, necessary for generating such three-dimensional graphical user interfaces, was justified or invested. Accordingly, mechanisms for constructing virtual reality computer graphical environments are typically specialized to a particular application or context, and often lack functionality that can facilitate more efficient construction of virtual reality environments. Additionally, the fundamental differences between the display of two-dimensional graphical user interfaces, such as on traditional, standalone computer monitors, and the display of three-dimensional graphical user interfaces, such as through virtual reality headsets, as well as the fundamental differences between the interaction with two-dimensional graphical user interfaces and three-dimensional graphical user interfaces, render the construction of three-dimensional virtual reality environments unable to benefit, in the same manner, from tools and techniques applicable only to two-dimensional interfaces.
SUMMARY
[0003] The construction of virtual reality environments can be made more efficient with enhancements directed to the sizing of objects to be utilized in the construction of virtual reality environments, enhancements directed to the simultaneous display of multiple thumbnails, or other like indicators, of virtual reality environments being constructed, enhancements directed to controlling the positioning of a view of a virtual reality environment, enhancements directed to conceptualizing the virtual reality environment as perceived through different types of three-dimensional presentational hardware, and enhancements directed to the exchange of objects between multiple virtual reality environments being constructed.
[0004] This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
[0005] Additional features and advantages will be made apparent from the following detailed description that proceeds with reference to the accompanying drawings.
DESCRIPTION OF THE DRAWINGS
[0006] The following detailed description may be best understood when taken in conjunction with the accompanying drawings, of which:
[0007] FIG. 1 is a system diagram of an exemplary enhancement directed to the simultaneous display of multiple thumbnails of virtual reality environments;
[0008] FIG. 2 is a flow diagram of an exemplary enhancement directed to the simultaneous display of multiple thumbnails of virtual reality environments;
[0009] FIG. 3 is a system diagram of an exemplary enhancement directed to the controlling of the positioning of a view of a virtual reality environment;
[0010] FIG. 4 is a system diagram of an exemplary enhancement directed to the exchange of objects between multiple virtual reality environments;
[0011] FIG. 5 is a system diagram of an exemplary enhancement directed to the conceptualization of the virtual reality environment as perceived through different types of three-dimensional presentational hardware;
[0012] FIGS. 6a and 6b are system diagrams of an exemplary enhancement directed to the sizing of objects in virtual reality environments; and
[0013] FIG. 7 is a block diagram of an exemplary computing device.
DETAILED DESCRIPTION
[0014] The following description relates to enhancements, presented within a virtual-reality, three-dimensional computer-generated context, that render the construction of, and interaction with, virtual reality environments more efficient. Such enhancements include enhancements directed to the sizing of objects to be utilized in the construction of virtual reality environments, enhancements directed to the simultaneous display of multiple thumbnails, or other like indicators, of virtual reality environments being constructed, enhancements directed to controlling the positioning of a view of a virtual reality environment, enhancements directed to conceptualizing the virtual reality environment as perceived through different types of three-dimensional presentational hardware, and enhancements directed to the exchange of objects between multiple virtual reality environments being constructed.
[0015] Although not required, the description below will be in the general context of computer-executable instructions, such as program modules, being executed by a computing device. More specifically, the description will reference acts and symbolic representations of operations that are performed by one or more computing devices or peripherals, unless indicated otherwise. As such, it will be understood that such acts and operations, which are at times referred to as being computer-executed, include the manipulation by a processing unit of electrical signals representing data in a structured form. This manipulation transforms the data or maintains it at locations in memory, which reconfigures or otherwise alters the operation of the computing device or peripherals in a manner well understood by those skilled in the art. The data structures where data is maintained are physical locations that have particular properties defined by the format of the data.
[0016] Generally, program modules include routines, programs, objects, components, data structures, and the like that perform particular tasks or implement particular abstract data types. Moreover, those skilled in the art will appreciate that the computing devices need not be limited to conventional personal computers, and include other computing configurations, including servers, hand-held devices, multi-processor systems, microprocessor based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, and the like. Similarly, the computing devices need not be limited to stand-alone computing devices, as the mechanisms may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
[0017] With reference to FIG. 1, an exemplary system 100 is illustrated, comprising a virtual reality interface 130, such as could be displayed to a user 110 on a virtual reality display device, such as the exemplary virtual-reality headset 121. The user 110 can then interact with the virtual reality interface 130 through one or more controllers, such as an exemplary hand-operated controller 122. As utilized herein, the term “virtual reality” includes “mixed reality” and “augmented reality” to the extent that the differences between “virtual reality”, “mixed reality” and “augmented reality” are orthogonal, or non-impactful, to the mechanisms described herein. Thus, while the exemplary interface 130 is referred to as a “virtual reality” interface, it can equally be a “mixed reality” or “augmented reality” interface in that none of the mechanisms described require the absence of, or inability to see, the physical world. Similarly, while the display device 121 is referred to as a “virtual reality headset”, it can equally be a “mixed reality” or “augmented reality” headset in that none of the mechanisms described require any hardware elements that are strictly unique to “virtual reality” headsets, as opposed to “mixed reality” or “augmented reality” headsets. Additionally, references below to “virtual reality environments” or “three-dimensional environments” or “worlds” are meant to include “mixed reality environments” and “augmented reality environments”. For simplicity of presentation, however, the term “virtual reality” will be utilized to cover all such “virtual reality”, “mixed reality”, “augmented reality” or other like partially or wholly computer-generated realities.
[0018] The exemplary virtual-reality interface 130 can comprise thumbnails of three-dimensional virtual reality worlds or environments, such as the exemplary thumbnails 140. To provide a convenient mechanism by which the user 110 can identify which virtual reality environments the thumbnails 140 correspond to, each thumbnail, such as the exemplary thumbnail 141, can comprise a visual representation of the three-dimensional environment to which it corresponds. User action directed to such a thumbnail, such as the exemplary thumbnail 141, can result in the virtual reality interface 130 changing to present, to the user 110, the three-dimensional environment corresponding to the selected thumbnail.
[0019] As will be recognized by those skilled in the art, the rendering of a three-dimensional environment, such as to be displayed via the exemplary virtual-reality headset 121, can require substantial computational processing by one or more computing devices that are communicationally coupled to the virtual reality headset 121. In a similar manner, rendering a portion of a three-dimensional environment into a thumbnail, such as the exemplary thumbnail 141 can also require meaningful computational processing. Such processing can then be increased by six-fold merely in order to render portions of three-dimensional environments for each of the exemplary six multiple thumbnails 140. Because the presentation of the thumbnails 140 is meant to be an initiating interface, for which a user, such as the exemplary user 110, merely selects an environment with which the user will interact for a much more extended period of time, the consumption of massive amounts of computational processing in order to generate what is merely an initiating interface can be inefficient and can result in user frustration. However, without a visually indicative, and engaging, interface, users may seek to utilize alternative mechanisms.
[0020] Accordingly, according to one aspect, the thumbnails 140 can mimic a three-dimensional presentation of a portion of the three-dimensional environments represented by each individual one of such thumbnails utilizing only a two-dimensional graphic. For example, the two-dimensional graphic can be of a fixed size, such as a fixed pixel quantity and a fixed number of bits utilized to represent visual aspects of each pixel. Accordingly, the memory requirements for each individual thumbnail can be known in advance, in such thumbnails can be preloaded, or the memory for such thumbnails can be reserved in advance, further increasing rendering performance beyond that of the mechanisms described below.
[0021] Turning to FIG. 2, the exemplary flow diagram 200 shown therein illustrates an exemplary series of steps by which thumbnails of three-dimensional environments can be represented in a visually engaging manner, by simulating a three-dimensional view of a portion of such three-dimensional environments, while utilizing only two-dimensional graphics. Initially, at step 210, three-dimensional data of a three-dimensional environment can be received as input to generate a thumbnail. According to one aspect, such thumbnail generation can be performed in advance of the presentation of such thumbnails to a user, such as in the manner illustrated in FIG. 1. Accordingly, a trigger for the pre-generation of such thumbnails can be the modification of a three-dimensional environment. Another trigger for the pre-generation of such thumbnails can be the saving of a three-dimensional environment, such as to a non-volatile storage medium.
[0022] The generation of the thumbnails can commence, at step 220, with the rendering of the three-dimensional environment onto a two-dimensional surface as a two-dimensional object, with each pixel on the surface having texture information and depth information, with the latter derived from the spatial location, within the three-dimensional environment, of the objects in that environment as compared with the location of the observer for purposes of the rendering. More specifically, the three-dimensional environment can be rendered onto the two-dimensional surface of the inside of a sphere, with such rendering occurring as if the observer was positioned at the center of the sphere. The depth information applied to each pixel of such a two-dimensional projection can be calculated, in a known manner, based on the position of the observer and the position of objects within the three-dimensional environment. Such depth information is sometimes stored, or referred to, as a “z-buffer”.
[0023] Subsequently, at step 230, a stencil buffer, or other like filtering, can be applied to reduce the spherical two-dimensional rendering to a portion utilizable as a thumbnail. For example, a rectangular stencil buffer can be applied to a predetermined portion of the sphere, such as a portion representative of the observer looking “straight ahead”, level to the ground of the three-dimensional environment. As another example, a representative portion of the spherical two-dimensional rendering can be selected based on a quantity of objects rendered into the representative portion. In such an example, the stencil buffer, or other like filtering, can seek to filter out portions of the spherical two-dimensional rendering that have no objects, or very few objects, rendered onto them. Is yet another example, a representative portion of the spherical two-dimensional rendering can be selected based on heuristic analysis. For example, interactions of the user with the three-dimensional environment can be monitored, and the stencil buffer can be applied so as to filter out portions of the three-dimensional environment, as rendered onto the spherical two-dimensional surface, that the user interacts with least frequently, or for a least aggregate quantity of time.
[0024] After application of the stencil buffer, or other like filtering, at step 230, the resulting two-dimensional image, having both texture and depth information for each pixel, can be stored in a file at step 240. Exemplary flow diagram 200, shown in FIG. 2, illustrates step 240 via dashed lines to indicate that it is an optional step. Such a two-dimensional image can also be retained in memory, can be stored with the data of the three-dimensional environment, or can otherwise be retained, or simply regenerated when needed.
[0025] According to one aspect, each thumbnail can be a specific size, such as a specific quantity of pixels in width, height and texture and depth information. For example, each thumbnail can be 1024-by-768 pixels, with each pixel having eight bits of information to represent texture and another eight bits of information to represent depth. According to another aspect, each thumbnail can be one of the predefined size template, such as, for example, a 1024-by-768 pixel template, a 1600-by-1200 pixel template, and so on. Utilizing such fixed sizing and quantity of bits per pixel, the two-dimensional graphical image size of each thumbnail can be bounded. Accordingly, a quantity of memory can be reserved, or otherwise set aside, and the relevant thumbnails can be preloaded to achieve greater efficiencies in their display to the user within a three-dimensional virtual reality environment, such as that illustrated in FIG. 1.
[0026] Continuing with the flow diagram 200 of FIG. 2, the display of individual thumbnails to a user within a three-dimensional virtual reality environment can commence with step 250, where a parallax shader can be utilized to render each pixel of the two dimensional thumbnail in the three-dimensional virtual reality environment such that the positioning and color texture applied to such a pixel can be based on the depth information of that pixel and the position of the user in the three-dimensional virtual reality environment. As will be understood by those skilled in the art, parallax shading accounts for angular differences between how a two-dimensional surface, having a certain texture, would be perceived by a user and how a three-dimensional surface, with the same texture, would be perceived by the user if that three-dimensional surface had a depth corresponding to the depth information retained with the two-dimensional surface. Accordingly, parallax shading applies colorimetric variations, positional variations, or combinations thereof, to individual pixels to simulate the perception of depth without utilizing three-dimensional information, and, instead, limited only to the two-dimensional information having depth information associated with it.
[0027] Within the context of a three-dimensional virtual reality environment, such an environment can be graphically presented to the user through virtual-reality headsets, such as the exemplary virtual-reality headset 121, shown in FIG. 1. As will be recognized by those skilled in the art, such virtual reality headsets typically comprise two independent displays, with each eye of the user viewing only one of those displays. Slight differences in the graphics presented by those two independent displays enable the user’s brain to perceive a three-dimensional virtual reality environment. Accordingly, at step 250, the utilization of the parallax shader can be performed independently, or otherwise separately, for each eye, with the positional differences between the user’s eyes resulting in slight differences in how the parallax shader adjusts the textures, colors, positions and other like graphical aspects of the individual pixels of a two-dimensional thumbnail image.
[0028] As the user moves the virtual reality headset, the positioning of the user’s eyes, as compared with the displayed position of each individual thumbnail, can change. Accordingly, at step 260, the parallax shader can be utilized to re-render, again, separately for the left and right eyes, the two-dimensional thumbnail image. The resulting effect is that the user perceives a thumbnail image in a three-dimensional manner, because different portions of the thumbnail image respond differently, in a graphical, or visual, sense, to the user’s head movement, with such differences resulting in the user’s brain applying a three-dimensional interpretation to the thumbnail image. In such a manner, multiple thumbnail images of three-dimensional environments can be presented to the user without incurring the computational cost of rendering multiple three-dimensional environments. Instead, as demonstrated, such thumbnail images can be visually engaging and evocative of three-dimensional images while comprising the reduced memory and processor requirements of only two-dimensional images.
[0029] Turning to FIG. 3, the exemplary system 300 shown therein illustrates an exemplary virtual reality interface 130 comprising enhancements for facilitating the positioning of views within the three-dimensional environment. More specifically, in some instances it may be desirable to allow users to jump to specific points or locations within the three-dimensional environment. For example, if the three-dimensional environment is being utilized to train individuals regarding a particular piece of equipment, it may be desirable to allow individuals to jump from one point in the three-dimensional environment to another so that the view of the piece of equipment that is the focus of the training is consistent, thereby facilitating the conveyance of training information.
[0030] As will be recognized by those skilled in the art, however, jumping to points within a three-dimensional environment can be disorienting, and can require time while the user swivels their head, or otherwise attempts to obtain contextual information to understand their new position and orientation. Such time can be magnified if the computing hardware being utilized is underpowered, or is otherwise taxed to regenerate portions of the three-dimensional environment while the user swivels their head to obtain their bearings at the new position.
[0031] According to one aspect, therefore, a ghost user, such as the exemplary ghost user 310 can be generated within the virtual reality interface 130, enabling a user to contextually, within the three-dimensional environment, understand their position and orientation once they jump to that new location. Such a visual representation of a user’s position and orientation can be facilitated by the display of a representation of the user, or other like visual indicator of the user’s position and orientation. The exemplary ghost user 310 comprises a visual representation of a user, except visually detuned, such as through transparency or other like visual cues. The exemplary ghost user 310 can further include a visual representation 320 of an orientation of the ghost user 310. Such a visual representation 320 can be a simple arrow or positional indicator, or can be achieved by a more visually accurate ghost user 310 that can, for example, include facial features to facilitate visually representing the orientation of the view once a user jumps to that position.
[0032] An additional enhancement to facilitate a user’s conceptualization and visualization of their position and orientation after a jump can include a preview window, such as the exemplary preview window 340. More specifically, the above-described mechanisms for generating a visually engaging thumbnail, that appears three-dimensional, from a two-dimensional rendering can be utilized to generate a preview window, such as the exemplary preview window 340, that can display, in an analogous manner, a view of the three-dimensional environment shown in the virtual reality interface 130, except from the viewpoint of a user at a position and orientation represented by the ghost user 310. Alternatively, other mechanisms for generating the exemplary preview window 340 can likewise be utilized. Thus, as illustrated by the exemplary system 300 shown in FIG. 3, the perception of the block 330 can change, from its representation in the exemplary virtual-reality interface 130, showing the three-dimensional environment as would be perceived by the user 110, to its representation in the exemplary preview window 340, showing the three-dimensional environment as would be perceived by a user represented by the ghost user 310.
……
……
……