Creating a ray differential by accessing a G-buffer

US10600232B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10600232-B2
Application numberUS-201816022506-A
CountryUS
Kind codeB2
Filing dateJun 28, 2018
Priority dateJan 26, 2018
Publication dateMar 24, 2020
Grant dateMar 24, 2020

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.

A texture level of detail (LOD) approximation may be performed utilizing ray differentials and a G-buffer. For example, a scene to be rendered is identified, and a G-buffer of the scene is rendered. Additionally, ray tracing is started for the scene, and during the ray tracing, a ray differential is created by accessing the G-buffer. Further, the created ray differential is appended to a current ray, and the created ray differential is traced.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: identifying a scene to be rendered; rendering a G-buffer of the scene; starting ray tracing for the scene; during the ray tracing, creating a ray differential for a pixel by accessing the G-buffer for the pixel and one or more additional pixels neighboring the pixel; appending the created ray differential to a current ray; and tracing the created ray differential. 2. The method of claim 1 , wherein the G-buffer is a screen-sized buffer generated using a pixel shader. 3. The method of claim 1 , wherein one or more attributes are written to the G-buffer for each pixel in the scene when the G-buffer of the scene is rendered. 4. The method of claim 1 , wherein creating the ray differential by accessing the G-buffer includes accessing entries in the G-buffer for the pixel and the one or more additional pixels that neighbor the pixel to the right and to the left within the G-buffer in order to create the ray differential in a x-direction. 5. The method of claim 1 , wherein creating the ray differential by accessing the G-buffer includes accessing entries in the G-buffer for the pixel and the one or more additional pixels that neighbor the pixel above and/or below within the G-buffer in order to create the ray differential in a y-direction. 6. The method of claim 1 , wherein G-buffer entries for pixels closest to the pixel both horizontally and vertically are accessed in order to create the ray differential in a x-direction and a y-direction. 7. The method of claim 1 , wherein a distance t to a hit point is stored in the G-buffer. 8. The method of claim 1 , wherein accessing the G-buffer for the pixel and one or more additional pixels neighboring the pixel includes accessing entries in the G-buffer for the pixel and one or more additional pixels neighboring the pixel, each entry of the entries storing a normal and a distance to a hit point for a corresponding pixel. 9. A system comprising: a processor that is configured to: identify a scene to be rendered; render a G-buffer of the scene; start ray tracing for the scene; during the ray tracing, create a ray differential for a pixel by accessing the G-buffer for the pixel and one or more additional pixels neighboring the pixel; append the created ray differential to a current ray; and trace the created ray differential. 10. The system of claim 9 , wherein the G-buffer is a screen-sized buffer generated using a pixel shader. 11. The system of claim 9 , wherein one or more attributes are written to the G-buffer for each pixel in the scene when the G-buffer of the scene is rendered. 12. The system of claim 9 , wherein creating the ray differential by accessing the G-buffer includes accessing entries in the G-buffer for the pixel and the one or more additional pixels that neighbor the pixel to the right and to the left within the G-buffer in order to create the ray differential in a x-direction. 13. The system of claim 9 , wherein creating the ray differential by accessing the G-buffer includes accessing entries in the G-buffer for the pixel and the one or more additional pixels that neighbor the pixel above and/or below within the G-buffer in order to create the ray differential in a y-direction. 14. The system of claim 9 , wherein G-buffer entries for pixels closest to the pixel both horizontally and vertically are accessed in order to create the ray differential in a x-direction and a y-direction. 15. The system of claim 9 , wherein a distance t to a hit point is stored in the G-buffer. 16. A non-transitory computer-readable storage medium storing instructions that, when executed by a processor, causes the processor to perform steps comprising: identifying a scene to be rendered; rendering a G-buffer of the scene; starting ray tracing for the scene; during the ray tracing, creating a ray differential for a pixel by accessing the G-buffer for the pixel and one or more additional pixels neighboring the pixel; appending the created ray differential to a current ray; and tracing the created ray differential. 17. The non-transitory computer-readable storage medium of claim 16 , wherein the G-buffer is a screen-sized buffer generated using a pixel shader. 18. The non-transitory computer-readable storage medium of claim 16 , wherein one or more attributes are written to the G-buffer for each pixel in the scene when the G-buffer of the scene is rendered. 19. The non-transitory computer-readable storage medium of claim 16 , wherein creating the ray differential by accessing the G-buffer includes accessing entries in the G-buffer for the pixel and the one or more additional pixels that neighbor the pixel to the right and to the left within the G-buffer in order to create the ray differential in a x-direction. 20. The non-transitory computer-readable storage medium of claim 16 , wherein creating the ray differential by accessing the G-buffer includes accessing entries in the G-buffer for the pixel and the one or more additional pixels that neighbor the pixel above and/or below within the G-buffer in order to create the ray differential in a y-direction. 21. The non-transitory computer-readable storage medium of claim 16 , wherein G-buffer entries for pixels closest to the pixel both horizontally and vertically are accessed in order to create the ray differential in a x-direction and a y-direction.

Assignees

Inventors

Classifications

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 US10600232B2 cover?
A texture level of detail (LOD) approximation may be performed utilizing ray differentials and a G-buffer. For example, a scene to be rendered is identified, and a G-buffer of the scene is rendered. Additionally, ray tracing is started for the scene, and during the ray tracing, a ray differential is created by accessing the G-buffer. Further, the created ray differential is appended to a curren…
Who is the assignee on this patent?
Nvidia Corp
What technology area does this patent fall under?
Primary CPC classification G06T15/06. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 24 2020 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 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).