Graphics processing systems

US11010959B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11010959-B2
Application numberUS-201715497129-A
CountryUS
Kind codeB2
Filing dateApr 25, 2017
Priority dateApr 29, 2016
Publication dateMay 18, 2021
Grant dateMay 18, 2021

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

When performing foveated rendering, a graphics processor is controlled to render plural, e.g. three, different resolution versions from the same viewpoint for a scene. The rendered different resolution images are then appropriately combined (composited) to provide the output “foveated” image (output frame) that is displayed. The geometry for the scene is processed and sorted into lists for respective rendering tiles of the images being rendered only once, to provide a single set of tile geometry lists that are then used in common when rendering each respective resolution image.

First claim

Opening claim text (preview).

The invention claimed is: 1. A method of operating a tile-based graphics processor, the method comprising: when the graphics processor is to render a set of plural images representing some or all of the same view of a scene but at different resolutions: dividing the view of the scene into a plurality of sub-regions; preparing graphics primitives to be rendered for the scene at a first resolution; using the graphics primitives prepared at the first resolution to prepare, at the first resolution, a list of graphics primitives to be processed for each respective sub-region that the view of the scene has been divided into; and rendering respective images representing the different resolution views of the scene, by rendering respective rendering tiles of each image, the rendering of a rendering tile comprising; identifying, from the lists of graphics primitives that have been prepared at the first resolution for the sub-regions containing the rendering tile, the graphics primitives to be processed for that rendering tile; and then processing the graphics primitives identified from the lists of graphics primitives that have been prepared for the scene to be rendered at the first resolution; the method further comprising: when rendering a rendering tile of an image of the set of images that has a different resolution than the first resolution: identifying, from the lists of graphics primitives that have been prepared at the first resolution for the sub-regions containing the rendering tile, the graphics primitives at the first resolution to be processed for the rendering tile; and processing the graphics primitives identified from the lists of graphics primitives that have been prepared at the first resolution to render the rendering tile of the image of the set of images that has a different resolution than the first resolution, wherein processing the graphics primitives identified from the lists of graphics primitives that have been prepared at the first resolution to render the rendering tile of the image of the set of images that has a different resolution than the first resolution comprises: first scaling the graphics primitives that have been prepared at the first resolution identified from the lists of graphics primitives that have been prepared at the first resolution to the resolution of the different resolution image being rendered, and then processing the scaled graphics primitives that have been scaled to the different resolution to render the rendering tile of the image of the set of images that has a different resolution than the first resolution; wherein processing the scaled graphics primitives that have been scaled to the different resolution to render the rendering tile of the image of the set of images that has a different resolution than the first resolution includes at least rasterising the scaled graphics primitives into graphics fragments, and then shading the graphics fragments to provide output rendered graphics fragment data. 2. The method of claim 1 , wherein the first resolution that the lists of graphics primitives to processed are prepared at comprises the highest resolution that will be required for an image of the set of plural images representing some or all of the same view of the scene. 3. The method of claim 1 , wherein the graphics primitive list preparing operation is configured to take account of where lower and higher resolution images of the view being rendered will be required in an output image comprising the combination of the images of the set of plural images. 4. The method of claim 1 , comprising: when using the graphics primitive lists that have been prepared at the first resolution when rendering an image of the set of images that has a lower resolution than the first resolution, scaling down the graphics primitives in the graphics primitive lists that have been prepared at the first resolution based on the resolution of the lower resolution image being rendered. 5. The method of claim 1 , comprising: rendering the highest resolution image of the set of images for a region comprising some but not all of the rendering tiles of an output image comprising the combination of the images of the set of plural images; and rendering the lower resolution image or images of the set of plural images for at least some of the rendering tiles of the output image that the highest resolution image has not been rendered for. 6. The method of claim 1 , comprising: indicating for each rendering tile of an output image comprising the combination of the images of the set of plural images which resolution image or images of the set of plural images should be rendered for that tile location. 7. The method of claim 1 , comprising: interleaving the rendering of the rendering tiles for the different resolution images. 8. The method of claim 1 , comprising: setting one or more rendering parameters for the rendering process for an image of the set of plural images based on the resolution of the image that is being rendered. 9. The method of claim 1 , comprising: combining the rendered images of the set of plural images to provide an output image comprising the combination of the images of the set of plural images for display using a texture mapping operation of the graphics processor. 10. The method of claim 9 , comprising: combining the different resolution images to provide the output image by treating the different resolution images of the set of images as respective mipmap levels of a set of mipmaps; and generating the output image by sampling from the mipmap set. 11. The method of claim 10 , comprising: setting the sampling level of detail used when sampling the mipmap containing the different resolution images of the view such that at least the most detailed resolution image with rendered data for a given position in the output image will be sampled for that position. 12. The method of claim 10 , wherein: each different resolution image in the mipmap is configured to have the same physical size, but depending upon the resolution of the image, the data is then considered to be the centre of a larger virtual mipmap level, with the size of the larger virtual mipmap level being dependent upon the resolution of the image in question. 13. The method of claim 1 , comprising: generating two sets of plural different resolution images, one set corresponding to a left eye view, and the other set corresponding to a right eye view, for stereoscopic rendering. 14. A method of operating a graphics processing system, the graphics processing system comprising: a host processor; and a tile-based graphics processor; the graphics processor comprising: graphics primitive preparing circuitry for preparing graphics primitives to be rendered for a scene to be rendered; graphics primitive list preparing circuitry for dividing a view of the scene to be rendered into a plurality of sub-regions and preparing lists of the graphics primitives to be processed for each respective sub-region of the view of the scene to be rendered; and rendering circuitry for rendering tiles of images to be rendered using lists of graphics primitives to be processed for image sub-regions prepared by the graphics primitive list preparing circuitry; the method comprising: the host processor of the graphics processing system: recognizing that an application executing on the host processor requires the graphics processor to render a set of plural images representing some or all of the same view of a scene but at different resolutions; and, when it is recognized that the graphics processor is to render a set of plural

Assignees

Inventors

Classifications

  • G06T15/04Primary

    Texture mapping · CPC title

  • Two-dimensional [2D] image generation · CPC title

  • G06T1/20Primary

    Processor architectures; Processor configuration, e.g. pipelining · CPC title

  • Tiling · CPC title

  • for modifying the size of the graphic pattern · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11010959B2 cover?
When performing foveated rendering, a graphics processor is controlled to render plural, e.g. three, different resolution versions from the same viewpoint for a scene. The rendered different resolution images are then appropriately combined (composited) to provide the output “foveated” image (output frame) that is displayed. The geometry for the scene is processed and sorted into lists fo…
Who is the assignee on this patent?
Advanced Risc Mach Ltd
What technology area does this patent fall under?
Primary CPC classification G06T15/04. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 18 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 6 related publications on this page (citations in our corpus or others sharing the same primary CPC).