Method for efficient re-rendering objects to vary viewports and under varying rendering and rasterization parameters
US-2018047129-A1 · Feb 15, 2018 · US
US11748840B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11748840-B2 |
| Application number | US-202117170679-A |
| Country | US |
| Kind code | B2 |
| Filing date | Feb 8, 2021 |
| Priority date | Apr 5, 2014 |
| Publication date | Sep 5, 2023 |
| Grant date | Sep 5, 2023 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Graphics processing renders a scene with a plurality of different rendering parameters for different locations on a screen area. Each primitive of a batch of primitives belonging to an object covering at least two of the zones of the screen area is assembled to a screen space. Assembling each of the primitives includes iterating each primitive with a primitive assembler for each of the zones covered by the object. Each said zone is associated with a different set of screen space transform parameters used to transform locations of vertices in the batch of primitives from a homogenous coordinate space to a screen space that is not flat. The zones are arranged to minimize an overlap between zones.
Opening claim text (preview).
What is claimed is: 1. A method of processing graphics depicting one or more objects as mapped to a screen area, the screen area including a plurality of zones, each said zone having a different set of rendering parameters, the method comprising: assembling each primitive of a batch of primitives belonging to an object covering at least two of the zones of the screen area to a screen space, wherein said assembling each of the primitives includes iterating each primitive with a primitive assembler for each of the zones covered by the object, wherein each said zone is associated with a different set of screen space transform parameters used to transform locations of vertices in the batch of primitives from a homogenous coordinate space to a head mounted display screen space that is not flat before scan conversion and wherein the plurality of zones are arranged to minimize an overlap between zones. 2. The method of claim 1 , wherein each said different set of rendering parameters includes a different view direction, such that each said zone has a different view direction defined by a different homogeneous coordinate space. 3. The method of claim 1 , wherein each zone is rendered using a different view direction from a same view position and all zones are arranged to collectively minimize variance in an amount of the field of view from the view position that a pixel covers. 4. The method of claim 1 , wherein each said different set of rendering parameters includes a different pixel format, such that each said zone has a different pixel format. 5. The method of claim 1 , wherein each said different set of rendering parameters includes a different pixel density, such that each said zone has a different pixel density. 6. The method of claim 1 , wherein each said different set of rendering parameters includes a different sample density, such that each said zone has a different sample density. 7. The method of claim 1 , wherein the plurality of zones include a center zone and at least one edge zone, wherein the rendering parameters of the edge zone are selected to preserve graphics rendering resources for the center zone. 8. The method of claim 1 , wherein the plurality of zones include a fixation point zone determined from an eye gaze tracker and at least one peripheral zone, wherein the rendering parameters of the peripheral zone are selected to preserve graphics rendering resources for the fixation point zone. 9. The method of claim 1 , wherein zone indices per-primitive are embedded in vertex index data defining primitive connectivity of an object mesh or are supplied as a separate buffer. 10. The method of claim 1 , wherein vertex index data and zone indices for each particular primitive of the batch of primitives supplied to a GPU are culled to only include zone indices per primitive which the particular primitive might cover. 11. The method of claim 1 , wherein per primitive zone indices or culled vertex index data for the batch of primitives are supplied to a GPU by a CPU or by a compute shader running on the GPU. 12. A system comprising: a processor, and a memory coupled to the processor, wherein the processor is configured to perform a method of processing graphics depicting one or more objects as mapped to a screen area, the screen area including a plurality of zones, each said zone having a different set of rendering parameters, the method comprising: assembling each primitive of a batch of primitives belonging to an object covering at least two of the zones of the screen area to a screen space, wherein said assembling each of the primitives includes iterating each primitive with a primitive assembler for each of the zones covered by the object, wherein each said zone is associated with a different set of screen space transform parameters used to transform locations of vertices in the batch of primitives from a homogenous coordinate head mounted display space to a screen space that is not flat before scan conversion and wherein the plurality of zones are arranged to minimize an overlap between zones. 13. The system of claim 12 , further comprising a large FOV display device. 14. The system of claim 12 , wherein the plurality of zones include a center zone and at least one edge zone, wherein the rendering parameters of the edge zone are selected to preserve graphics rendering resources for the center zone. 15. The system of claim 12 , further comprising an eye gaze tracker. 16. The system of claim 15 , wherein the plurality of zones include a fixation point zone determined from the eye gaze tracker, and wherein the plurality of zones include at least one peripheral zone, wherein the rendering parameters of the peripheral zone are selected to preserve graphics rendering resources for the fixation point zone. 17. The system of claim 12 , wherein each said different set of rendering parameters includes a different view direction, such that each said zone has a different view direction defined by a different homogeneous coordinate space. 18. The system of claim 12 , wherein each zone is rendered using a different view direction from a same view position and all zones are arranged to collectively minimize variance in an amount of the field of view from the view position that a pixel covers. 19. The system of claim 12 , wherein each said different set of rendering parameters includes a different pixel format, such that each said zone has a different pixel format. 20. The system of claim 12 , wherein each said different set of rendering parameters includes a different pixel density, such that each said zone has a different pixel density. 21. The system of claim 12 , wherein each said different set of rendering parameters includes a different sample density, such that each said zone has a different sample density. 22. The system of claim 12 , wherein the plurality of zones include a center zone and at least one edge zone, wherein the rendering parameters of the edge zone are selected to preserve graphics rendering resources for the center zone. 23. The system of claim 12 , wherein the plurality of zones include a fixation point zone determined from an eye gaze tracker and at least one peripheral zone, wherein the rendering parameters of the peripheral zone are selected to preserve graphics rendering resources for the fixation point zone. 24. A non-transitory computer readable medium having processor-executable instructions embodied therein, wherein execution of the instructions by a processor causes the processor to implement a method of processing graphics depicting one or more objects as mapped to a screen area, the screen area including a plurality of zones, each said zone having a different set of rendering parameters, the method comprising: assembling each primitive of a batch of primitives belonging to an object covering at least two of the zones of the screen area to a screen space, wherein said assembling each of the primitives includes iterating each primitive with the primitive assembler for each of the zones covered by the object, wherein each said zone is associated with a different set of screen space transform parameters used to transform locations of vertices in the batch of primitives from a homogenous coordinate space to a screen space that is not flat before scan conversion and wherein the plurality of zones are arranged to minimize an overlap between zones. 25. The non-transitory computer readable medium of claim 2
Processor architectures; Processor configuration, e.g. pipelining · CPC title
Eye tracking input arrangements (G06F3/015 takes precedence) · CPC title
Memory management · CPC title
Drawing from basic elements · CPC title
Filling planar surfaces by adding surface attributes, e.g. adding colours or textures · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.