Ray-tracing with irradiance caches
Abstract
Disclosed approaches provide for irradiance caches which may be used to share irradiance between ray interactions spatially and/or temporally. An irradiance cache may store incoming irradiance or outgoing irradiance and may be updated by casting one or more rays from one or more locations to sample irradiance for the location(s). The number of rays that are cast may be reduced by ranking the locations, irradiance caches, and/or corresponding groups of geometry based on one or more characteristics thereof. For example, a ranking score may be computed based on camera distance, camera visibility, and/or a number of frames since a prior update. When sampling a location, outgoing irradiance from an outgoing irradiance cache may be used to determine shading when a hit distance of a ray used to generate the sample exceeds a threshold value.
Claims
exact text as granted — not AI-modified1 . A method comprising:
determining one or more samples of lighting conditions in a scene, the one or more samples associated with at least one first pixel of a plurality of pixels for a frame corresponding to the scene; determining one or more values from one or more irradiance caches associated with at least one second pixel of the plurality of pixels based at least on a quantity of samples of the lighting conditions available for the at least one second pixel; applying a denoising filter to the plurality of pixels to filter the one or more samples with respect to the at least one first pixel and the one or more values from the one or more irradiance caches with respect to the at least one second pixel; and rendering the frame based at least on the applying of the denoising filter to the plurality of pixels.
2 . The method of claim 1 , further comprising detecting a disocclusion corresponding to at least one second pixel of the plurality of pixels, wherein the determining the one or more values from the one or more irradiance caches is based at least on the disocclusion.
3 . The method of claim 1 , wherein the one or more values from the one or more irradiance caches correspond to a result of shading one or more locations associated with the at least one second pixel in the scene.
4 . The method of claim 1 , wherein the denoising filter is to filter the one or more samples and the one or more values using a weighting ratio corresponding to the quantity of samples of the lighting conditions available for the at least one second pixel.
5 . The method of claim 1 , wherein the denoising filter is to filter the one or more samples and the one or more values using a weighting ratio that is reduced over a plurality of frames until use of the one or more irradiance caches is phased out for the at least one second pixel.
6 . The method of claim 1 , wherein the quantity of samples includes a quantity of temporal samples available for the at least one second pixel.
7 . The method of claim 1 , wherein the quantity of samples includes a quantity of spatial samples available for the at least one second pixel.
8 . The method of claim 1 , wherein the one or more values from the one or more irradiance caches correspond to outgoing irradiance values for the at least one second pixel.
9 . The method of claim 1 , wherein the applying of the denoising filter to the plurality of pixels is performed in one or more of world space or screen space.
10 . A system comprising:
one or more processing units to perform operations including:
determining one or more samples of lighting conditions in a scene, the one or more samples associated with at least one first pixel of a plurality of pixels for a. frame corresponding to the scene;
detecting a disocclusion corresponding to at least one second pixel of the plurality of pixels;
determining one or more values from one or more irradiance caches associated with the at least one second pixel based at least on the disocclusion;
filtering the one or more samples with respect to the at least one first pixel and the one or more values from the one or more irradiance caches with respect to the at least one second pixel; and
rendering the frame based at least on the filtering.
11 . The system of claim 10 , wherein the one or more values from the one or more irradiance caches correspond to a result of shading at least one location associated with the at least one second pixel in the scene.
12 . The system of claim 10 , wherein the filtering uses a weighting ratio corresponding to a quantity of samples of the lighting conditions available for the at least one second pixel.
13 . The system of claim 10 , wherein the filtering uses a weighting ratio that is reduced over a plurality of frames until use of the one or more irradiance caches is phased out for the at least one second pixel.
14 . The system of claim 10 , wherein the system is comprised in at least one of:
a system for an autonomous or semi-autonomous machine; a system for performing one or more simulation operations; a system for performing light transport simulation; a system for performing content creation for 3D assets; a system for performing one or more deep learning operations; a system for performing one or more generative AI operations; a system implemented using an edge device; a system implemented using a machine; a system incorporating one or more virtual machines (VMs); a system implemented at least partially in a data center; or a system implemented at least partially using cloud computing resources.
15 . A processor comprising:
one or more circuits to render a frame based at least on applying a denoising filter to a plurality of pixels to filter one or more samples of lighting conditions of a scene with respect to at least one first pixel of the plurality of pixels and one or more values from one or more irradiance caches with respect to at least one second pixel of the plurality of pixels based at least on a quantity of samples of the lighting conditions available for the at least one second pixel.
16 . The processor of claim 15 , wherein the one or more values from the one or more irradiance caches correspond to a result of shading at least one location associated with the at least one second pixel in the scene.
17 . The processor of claim 15 , wherein the denoising filter uses a weighting ratio corresponding to a quantity of samples of the lighting conditions available for the at least one second pixel to filter the plurality of pixels.
18 . The processor of claim 15 , wherein the denoising filter uses a weighting ratio to filter the plurality of pixels, the weighting ratio reduced over a plurality of frames until use of the one or more irradiance caches is phased out for the at least one second pixel.
19 . The processor of claim 15 , wherein the one or more values from the one or more irradiance caches correspond to outgoing irradiance values for the at least one second pixel.
20 . The processor of claim 15 , wherein the processor is comprised in at least one of:
a system for an autonomous or semi-autonomous machine; a system for performing one or more simulation operations; a system for performing light transport simulation; a system for performing content creation for 3D assets; a system for performing one or more deep learning operations; a system for performing one or more generative AI operations; a system implemented using an edge device; a system implemented using a machine; a system incorporating one or more virtual machines (VMs); a system implemented at least partially in a data center; or a system implemented at least partially using cloud computing resources.Join the waitlist — get patent alerts
Track US2024029338A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.