Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.
1. A computer implemented method comprising: receiving a frame to be rendered, wherein the frame including a plurality of tiles; in a first pass in a graphics processor, for each tile of the frame, identifying primitives in the tile that are visible; recording identified visibility of primitives from the first pass as tile specific cull information; in a subsequent, second pass in the graphics processor, performing depth only rendering over the entire frame to generate entire frame cull information, wherein the entire frame cull information includes visibility information for all the primitives; and in a subsequent tile rendering pass, rendering the tiles using both the entire frame and the tile specific cull information to skip over non-visible primitives.
A computer-implemented method for rendering a frame in a graphics processor improves efficiency by using multiple rendering passes. The frame is divided into tiles. In the first pass, the method identifies visible primitives within each tile, recording this tile-specific visibility information as "cull information." A second pass performs depth-only rendering across the entire frame, generating frame-wide cull information containing visibility data for all primitives. Finally, a tile rendering pass renders each tile, using both the frame-wide and tile-specific cull information to skip rendering primitives that are not visible, thereby increasing pixel throughput.
2. The method of claim 1 including using depth only rendering results to prevent unnecessary reprocessing of the primitives during the subsequent rendering pass.
The rendering method described above, which renders a frame by dividing it into tiles, identifying visible primitives in each tile in a first pass and creating tile-specific cull information, then creating frame-wide cull information in a second, depth-only pass, and finally rendering the tiles using both sets of cull information, further improves efficiency by using the results of the depth-only rendering pass to avoid re-processing primitives that are already determined to be obscured. This prevents unnecessary work during the final rendering pass.
3. The method of claim 1 including recording depth only rendering results at the primitive granularity.
The rendering method described above, which renders a frame by dividing it into tiles, identifying visible primitives in each tile in a first pass and creating tile-specific cull information, then creating frame-wide cull information in a second, depth-only pass, and finally rendering the tiles using both sets of cull information, records the results of the depth-only rendering pass at the granularity of individual primitives. This allows for fine-grained culling of non-visible geometry, further reducing rendering workload.
4. The method of claim 1 including using tile based deferred rendering.
The rendering method described above, which renders a frame by dividing it into tiles, identifying visible primitives in each tile in a first pass and creating tile-specific cull information, then creating frame-wide cull information in a second, depth-only pass, and finally rendering the tiles using both sets of cull information, utilizes a tile-based deferred rendering architecture. This means that the actual shading and coloring of pixels is delayed until after visibility has been determined, allowing for more efficient resource utilization by only processing visible pixels.
5. The method of claim 1 including using deferred rendering depth passes.
The rendering method described above, which renders a frame by dividing it into tiles, identifying visible primitives in each tile in a first pass and creating tile-specific cull information, then creating frame-wide cull information in a second, depth-only pass, and finally rendering the tiles using both sets of cull information, employs deferred rendering with dedicated depth passes. Separating the depth calculation into dedicated passes allows for optimized depth testing and early-z rejection, which efficiently eliminates hidden surfaces before more costly shading operations are performed.
6. One or more non-transitory computer readable media storing instructions executed by a processor to perform a sequence comprising: receiving a frame to be rendered, wherein the frame including a plurality of tiles; in a first pass in a graphics processor, for each tile of the frame, identifying primitives in the tile that are visible; recording identified visibility of primitives from the first pass as tile specific cull information; in a subsequent, second pass in the graphics processor, performing depth only rendering over the entire frame to generate entire frame cull information, wherein the entire frame cull information includes visibility information for all the primitives; and in a subsequent tile rendering pass, rendering the tiles using both the entire frame and the tile specific cull information to skip over non-visible primitives.
A non-transitory computer-readable medium stores instructions that, when executed by a processor, cause the computer to render a frame by dividing it into tiles. The process involves identifying visible primitives within each tile in a first pass, recording tile-specific visibility information as cull information. A second pass performs depth-only rendering across the entire frame, generating frame-wide cull information containing visibility data for all primitives. Subsequently, a tile rendering pass renders each tile, utilizing both the frame-wide and tile-specific cull information to skip rendering primitives that are not visible.
7. The media of claim 6 further storing instructions to perform a sequence including using depth only rendering results to prevent unnecessary reprocessing of the primitives during the subsequent rendering pass.
The computer-readable medium described above, which stores instructions to render a frame by dividing it into tiles, identifying visible primitives in each tile in a first pass and creating tile-specific cull information, then creating frame-wide cull information in a second, depth-only pass, and finally rendering the tiles using both sets of cull information, further stores instructions to utilize the results of the depth-only rendering pass to prevent the unnecessary reprocessing of primitives during the subsequent rendering pass, increasing efficiency.
8. The media of claim 6 further storing instructions to perform a sequence including recording depth only rendering results at the primitive granularity.
The computer-readable medium described above, which stores instructions to render a frame by dividing it into tiles, identifying visible primitives in each tile in a first pass and creating tile-specific cull information, then creating frame-wide cull information in a second, depth-only pass, and finally rendering the tiles using both sets of cull information, further stores instructions to record the results of the depth-only rendering at the granularity of individual primitives for more precise culling.
9. The media of claim 6 further storing instructions to perform a sequence including using tile based deferred rendering.
The computer-readable medium described above, which stores instructions to render a frame by dividing it into tiles, identifying visible primitives in each tile in a first pass and creating tile-specific cull information, then creating frame-wide cull information in a second, depth-only pass, and finally rendering the tiles using both sets of cull information, further stores instructions to utilize tile-based deferred rendering.
10. The media of claim 6 further storing instructions to perform a sequence including using deferred rendering depth passes.
The computer-readable medium described above, which stores instructions to render a frame by dividing it into tiles, identifying visible primitives in each tile in a first pass and creating tile-specific cull information, then creating frame-wide cull information in a second, depth-only pass, and finally rendering the tiles using both sets of cull information, further stores instructions to utilize deferred rendering depth passes.
11. An apparatus comprising: a graphics processor receives a frame to be rendered, wherein the frame including a plurality of tiles; in a first pass, for each tile of the frame, identifies primitives in the tile that are visible; record identified visibility of primitives from the first pass as tile specific cull information; in a subsequent, second pass performs depth only rendering over the entire frame to generate entire frame cull information in said second pass, wherein the entire frame cull information includes visibility information for all the primitives; and in a subsequent tile rendering pass, renders the tiles using both the entire frame and the tile specific cull information to skip over non-visible primitives; and a memory coupled to said graphics processor.
An apparatus for rendering graphics includes a graphics processor and memory. The graphics processor receives a frame to be rendered, dividing it into tiles. In a first pass, the processor identifies visible primitives within each tile and records tile-specific visibility as cull information. A second pass performs depth-only rendering across the entire frame, generating frame-wide cull information that includes visibility data for all primitives. In a subsequent tile rendering pass, the processor renders each tile, using both frame-wide and tile-specific cull information to skip rendering non-visible primitives. The memory is coupled to the graphics processor to store this data.
12. The apparatus of claim 11 said graphics processor to use depth only rendering results to prevent unnecessary reprocessing of the primitives during the subsequent rendering pass.
The graphics rendering apparatus described above, which includes a graphics processor rendering a frame by dividing it into tiles, identifying visible primitives in each tile in a first pass and creating tile-specific cull information, then creating frame-wide cull information in a second, depth-only pass, and finally rendering the tiles using both sets of cull information, is configured such that the graphics processor uses the results of the depth-only rendering pass to prevent unnecessary reprocessing of primitives during the subsequent rendering pass.
13. The apparatus of claim 11 said graphics processor to record depth only rendering results at the primitive granularity.
The graphics rendering apparatus described above, which includes a graphics processor rendering a frame by dividing it into tiles, identifying visible primitives in each tile in a first pass and creating tile-specific cull information, then creating frame-wide cull information in a second, depth-only pass, and finally rendering the tiles using both sets of cull information, is configured such that the graphics processor records the results of the depth-only rendering at the granularity of individual primitives.
14. The apparatus of claim 11 said graphics processor to use tile based deferred rendering.
The graphics rendering apparatus described above, which includes a graphics processor rendering a frame by dividing it into tiles, identifying visible primitives in each tile in a first pass and creating tile-specific cull information, then creating frame-wide cull information in a second, depth-only pass, and finally rendering the tiles using both sets of cull information, is configured such that the graphics processor uses tile-based deferred rendering.
15. The apparatus of claim 11 said graphics processor to use deferred rendering depth passes.
The graphics rendering apparatus described above, which includes a graphics processor rendering a frame by dividing it into tiles, identifying visible primitives in each tile in a first pass and creating tile-specific cull information, then creating frame-wide cull information in a second, depth-only pass, and finally rendering the tiles using both sets of cull information, is configured such that the graphics processor uses deferred rendering depth passes.
16. The apparatus of claim 11 including an operating system.
The graphics rendering apparatus as described above, including a graphics processor and memory for performing multi-pass rendering with culling, further includes an operating system for managing resources and executing applications that utilize the graphics processor.
17. The apparatus of claim 11 including a battery.
The graphics rendering apparatus as described above, including a graphics processor and memory for performing multi-pass rendering with culling, further includes a battery to allow for portable operation.
18. The apparatus of claim 11 including firmware and a module to update said firmware.
The graphics rendering apparatus as described above, including a graphics processor and memory for performing multi-pass rendering with culling, further includes firmware and a module to update said firmware, allowing for improvements and bug fixes to the graphics rendering process.
Unknown
August 22, 2017
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.