Patent classifications
G06T15/405
VIEWABILITY TESTING IN A COMPUTER-GENERATED ENVIRONMENT
A system configured to determine an extent to which an object in a computer-generated scene is visible from a virtual camera, including a rendering engine comprising a depth buffer and arranged to render the computer-generated scene, and a viewability testing module. The viewability testing module is configured to: generate a plurality of points distributed across a surface of the object; determine a depth map value for each point within a field of view of the virtual camera; determine whether each such point is visible from the perspective of the virtual camera based on a comparison between the determined depth map value for the point and a corresponding one or more depth map values stored in the depth buffer; and determining the extent to which the object is visible in dependence on which of the plurality of points are determined to be visible from the perspective of the virtual camera.
System and method for efficient multi-GPU rendering of geometry by generating information in one rendering phase for use in another rendering phase
A method for graphics processing including rendering graphics for an application using a plurality of graphics processing units (GPUs). The method including dividing responsibility for rendering geometry of the graphics between the GPUs based on screen regions, each GPU having a corresponding division of the responsibility which is known to the GPUs. The method including determining a Z-value for a piece of geometry during a pre-pass phase of rendering at a first GPU for an image, wherein the piece of geometry overlaps a first screen region for which the first GPU has a division of responsibility. The method including comparing the Z-value against a Z-buffer value for the piece of geometry. The method including generating information including a result of the comparing the Z-value against the Z-buffer value for use by the GPU when rendering the piece of geometry during a full render phase of rendering.
SYSTEM AND METHOD FOR PERFORMING A Z PRE-PASS PHASE ON GEOMETRY AT A GPU FOR USE BY THE GPU WHEN RENDERING THE GEOMETRY
A method for graphics processing including rendering graphics for an application using a plurality of graphics processing units (GPUs). The method including dividing responsibility for rendering geometry of the graphics between the GPUs based on screen regions, each GPU having a corresponding division of the responsibility which is known to the GPUs. The method including determining a Z-value for a piece of geometry during a pre-pass phase of rendering at a first GPU for an image, wherein the piece of geometry overlaps a first screen region for which the first GPU has a division of responsibility. The method including comparing the Z-value against a Z-buffer value for the piece of geometry. The method including generating information including a result of the comparing the Z-value against the Z-buffer value for use by the GPU when rendering the piece of geometry during a full render phase of rendering.
Hierarchical depth buffer back annotation
Briefly, in accordance with one or more embodiments, a processor performs a coarse depth test on pixel data, and performs a final depth test on the pixel data. Coarse depth data is stored in a coarse depth cache, and per pixel depth data is stored in a per pixel depth cache. If a result of the coarse depth test is ambiguous, the processor is to read the per pixel depth data from the per pixel depth cache, and to update the coarse depth data with the per pixel depth data if the per pixel depth data has a smaller depth range than the coarse depth data.
Enhancing hierarchical depth buffer culling efficiency via mask accumulation
Embodiments described herein provide for a technique to improve the culling efficiency of coarse depth testing. One embodiment provides for a graphics processor that includes a depth pipeline that is configured to perform a method to track a history of source fragments that are tested against a destination tile. When a combination of partial fragments sum to full coverage, the most conservative source far depth value is used instead of the previous destination far depth value. When the combination sums to partial coverage, the previous destination far depth value is retained.
TESSELLATING PATCHES OF SURFACE DATA IN TILE BASED COMPUTER GRAPHICS RENDERING
A method and system for culling a patch of surface data from one or more tiles in a tile based computer graphics system. A rendering space is divided into a plurality of tiles and a patch of surface data read. Then, at least a portion of the patch is analysed to determine data representing a bounding depth value evaluated over at least one tile. This may comprise tessellating the patch of surface data to derive a plurality of tessellated primitives and analysing at least some of the tessellated primitives. For each tile within which the patch is located, the data representing the bounding depth value is then used to determine whether the patch is hidden in the tile, and at least a portion of the patch is rendered, if the patch is determined not to be hidden in at least one tile.
REPROJECTING HOLOGRAPHIC VIDEO TO ENHANCE STREAMING BANDWIDTH/QUALITY
Improved video compression and video streaming systems and methods are disclosed for environments where camera motion is common, such as cameras incorporated into head-mounted displays. This is accomplished by combining a 3D representation of the shape of the user's environment (walls, floor, ceiling, furniture, etc.), image data, and data representative of changes in the location and orientation (pose) of the camera between successive image frames, thereby reducing data bandwidth needed to send streaming video in the presence of camera motion.
System for photo-realistic reflections in augmented reality
The present disclosure describes a system for fast generation of ray traced reflections of virtually augmented objects into a real-world image, specifically on reflective surfaces. The system utilizes a standard raster graphics pipeline.
Methods and apparatus for efficient multi-view rasterization
The present disclosure relates to methods and apparatus for graphics processing. Aspects of the present disclosure can determine at least one scene including one or more viewpoints. Also, aspects of the present disclosure can divide the at least one scene into a plurality of zones based on each of the one or more viewpoints. Further, aspects of the present disclosure can determine whether a zone based on one viewpoint of the one or more viewpoints is substantially similar to a zone based on another viewpoint of the one or more viewpoints. Aspects of the present disclosure can also generate a geometry buffer for each of the plurality of zones based on the one or more viewpoints. Moreover, aspects of the present disclosure can combine the geometry buffers for each of the plurality of zones based on the one or more viewpoints.
Depth buffer pre-pass
Systems, apparatuses, and methods for implementing a depth buffer pre-pass are disclosed. A rendering application uses a binning approach to render primitives of a virtual scene on a tile-by-tile basis, with each tile corresponding to a portion of the screen. The application causes a depth buffer pre-pass to be performed for the primitives of the tile before a pixel shader is invoked. During the depth buffer pre-pass, only the depth part of the virtual scene is rendered to determine which pixel samples are visible and which pixel samples are hidden. Then, the scene is redrawn, but the pixel samples that are hidden are not sent to the pixel shader. In cases where a relatively large percentage of primitives overlap, this technique increases the efficiency of the rendering application since pixel shading can be avoided for the pixel samples that are hidden.