Legal claims defining the scope of protection, as filed with the USPTO.
1. A machine-implemented method of rendering geometry from a 3D scene, the method comprising: processing geometry of the 3D scene using rasterisation operations, and in response to said processing determining that an element of geometry is: (i) present at a sample position, and (ii) not hidden at that sample position by a previously processed element of geometry: emitting a primary ray from the element of geometry, updating a generation ID for the sample position, and assigning the generation ID to the emitted ray; processing rays in the 3D scene using ray tracing operations; selecting a particular ray for processing using the ray tracing operations; determining whether the particular ray is still current by determining whether the generation ID assigned to the particular ray matches the generation ID for the sample associated with the particular ray; and terminating processing of the particular ray if it is determined that the particular ray is not still current.
2. The machine-implemented method of claim 1 , wherein the particular ray is determined to be still current if the generation ID assigned to the particular ray matches the generation ID for the sample associated with the particular ray.
3. The machine-implemented method of claim 1 , wherein a secondary ray is associated with the same generation ID as is associated with the parent ray of the secondary ray.
4. The machine-implemented method of claim 3 , wherein the secondary ray is associated with a reference to the generation ID associated with its parent ray.
5. The machine-implemented method of claim 1 , wherein the generation ID for the sample is a sequential identifier, and updating the generation ID for the sample position comprises incrementing the generation ID.
6. The machine-implemented method of claim 1 , the method comprising: emitting a plurality of primary rays from the element of geometry, the plurality of primary rays being associated with a plurality of sample positions; and updating a generation ID for each of the plurality of sample positions such that each of the plurality of primary rays is assigned the same generation ID.
7. The machine-implemented method of claim 1 , the method further comprising processing the particular ray using ray tracing operations if it is determined that the particular ray is still current.
8. The machine-implemented method of claim 1 , the method further comprising processing the particular ray using ray tracing operations prior to determining whether the particular ray is still current.
9. The machine-implemented method of claim 8 , the method further comprising continuing to process the particular ray using ray tracing operations if it is determined that the particular ray is still current.
10. The machine-implemented method of claim 8 , the method further comprising terminating the processing of the particular ray by culling the particular ray if it is determined that the particular ray is not still current.
11. The machine implemented method of claim 1 , the method further comprising processing geometry of the 3D scene using rasterisation operations and, concurrently, processing rays in the 3D scene using ray tracing operations.
12. An apparatus for rendering geometry from a 3-D scene, the apparatus comprising: a rasterisation engine configured to process geometry of the 3D scene using rasterisation operations; a shading engine configured to, in response to the rasterisation engine determining that an element of geometry is: (i) present at a sample position, and (ii) not hidden at that sample position by a previously processed element of geometry, emit a primary ray from the element of geometry, wherein the apparatus is configured to: update a generation ID for the sample position, and assign the generation ID to the emitted ray; and a ray tracing engine configured to process rays in the 3D scene using ray tracing operations; wherein the apparatus is configured to: select a particular ray for processing using ray tracing operations, determine whether the particular ray is still current by determining whether the generation ID assigned to the particular ray matches the generation ID for the sample associated with the particular ray; and terminate processing of the particular ray if it is determined that the particular ray is not still current.
13. The apparatus of claim 12 , wherein the particular ray is determined to be still current if the generation ID assigned to the particular ray matches the generation ID for the sample associated with the particular ray.
14. The apparatus of claim 12 , wherein a secondary ray is associated with the same generation ID as is associated with the parent ray of the secondary ray.
15. The apparatus of claim 12 , wherein the secondary ray is associated with a reference to the generation ID associated with its parent ray.
16. The apparatus of claim 12 , the ray tracing engine being configured to process the particular ray using ray tracing operations prior to determining whether the particular ray is still current.
17. The apparatus of claim 16 , the ray tracing engine being configured to continue processing the particular ray using ray tracing operations if it is determined that the particular ray is still current.
18. The apparatus of claim 16 , the apparatus being further configured to terminate the processing of the particular ray by culling the particular ray if it is determined that the particular ray is not still current.
19. An apparatus for rendering geometry from a 3-D scene, the apparatus comprising: a rasterisation engine configured to determine at least one visible element of geometry in the scene by processing at least one first element of geometry in the 3-D scene, and determine a depth associated with a sample based on the at least one visible element of geometry; a shading engine configured to initiate running of a shader for the at least one visible element of geometry to emit a ray to be traced within the 3-D scene, the ray associated with the sample and the determined depth for the sample; and a ray tracing engine configured to process the emitted at least one ray; wherein the rasterisation engine is configured to process at least one second element of geometry in the 3-D scene and update the depth associated with the sample based on the at least one second element of geometry; and wherein the apparatus is configured to compare, for the emitted ray, the depth associated with the ray with the depth associated with the sample and, if the depth associated with the sample is closer than the depth associated with the ray, terminating the processing of the ray.
20. The apparatus of claim 19 , wherein, if the depth associated with the sample is not closer than the depth associated with the ray, proceeding with processing of the ray.
Unknown
September 21, 2021
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.