IP Library Granted Patent US 11,861,787
Granted Patent B2
US 11,861,787 · App. 18/081,623 · Granted Jan 2, 2024

3-D graphics rendering with implicit geometry

Inventors: Cuneyt Ozdas (San Francisco, CA); Luke Tilman Peterson (San Francisco, CA); Steven Blackmon (San Francisco, CA); Steven John Clohset (San Francisco, CA)
Assignee: Imagination Technologies Limited
G06T15/06G06T15/506G06T2210/12G06T2210/21
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,861,787
App. No.
18/081,623
Granted
Jan 2, 2024
Kind
B2
Abstract

Aspects relate to tracing rays in 3-D scenes that comprise objects that are defined by or with implicit geometry. In an example, a trapping element defines a portion of 3-D space in which implicit geometry exist. When a ray is found to intersect a trapping element, a trapping element procedure is executed. The trapping element procedure may comprise marching a ray through a 3-D volume and evaluating a function that defines the implicit geometry for each current 3-D position of the ray. An intersection detected with the implicit geometry may be found concurrently with intersections for the same ray with explicitly-defined geometry, and data describing these intersections may be stored with the ray and resolved.

Claims (30)

1. A method of rendering an image of a 3-D scene using ray tracing, comprising:

identifying an intersection between a ray and implicitly-defined geometry located in a 3-D scene, a location of the intersection expressed in a reference coordinate system for a bounding element that encloses the implicitly-defined geometry;

identifying an intersection of the ray with explicitly-defined geometry, a location of the intersection with explicitly-defined geometry being expressed in a global coordinate system;

transforming either the location of the intersection with implicitly-defined geometry into the global coordinate system or the location of the intersection with explicitly-defined geometry into the referenced coordinate system, and comparing which of the intersections is closer to an origin of the ray; and

using a result of said comparing which of the intersections is closer to an origin of the ray to render an image of the scene.

2. The method of rendering of claim 1 , further comprising accruing the intersections in a ray data structure and deferring the comparing.

3. The method of rendering of claim 1 , wherein the comparing comprises using an identifier for source geometry to select one of the intersections, when neither of the intersections is closer to the origin of the ray than the other intersection.

4. The method of rendering of claim 1 , wherein transforming either the location of the intersection with implicitly-defined geometry into the global coordinate system or the location of the intersection with explicitly-defined geometry into the referenced coordinate system comprises applying a transformation matrix to the location being transformed.

5. The method of rendering of claim 1 , wherein the bounding element that encloses the implicitly-defined geometry is a trapping element.

6. The method of rendering of claim 1 , wherein data is produced as a result of identifying an intersection between a ray and implicitly-defined geometry, the data comprising one or more of a closest intersection, barycentric coordinates, a distance to the intersection, and a point in 3-D space identifying an intersection point.

7. A ray tracing system for rendering an image of a 3-D scene, the ray tracing system comprising:

one or more test cells configured to identify an intersection between a ray and implicitly-defined geometry located in a 3-D scene, a location of the intersection expressed in a reference coordinate system for a bounding element that encloses the implicitly-defined geometry;

one or more test cells configured to identify an intersection of the ray with explicitly-defined geometry, a location of the intersection with explicitly-defined geometry being expressed in a global coordinate system; and

one or more programmable circuits configured to transform either the location of the intersection with implicitly-defined geometry into the global coordinate system or the location of the intersection with explicitly-defined geometry into the referenced coordinate system, and comparing which of the intersections is closer to an origin of the ray;

wherein a result of said comparing which of the intersections is closer to an origin of the ray is used for rendering an image of the scene.

8. The ray tracing system of claim 7 , wherein the system is further configured to accrue the intersections in a ray data structure and defer the comparing.

9. The ray tracing system of claim 7 , wherein the comparing comprises using an identifier for source geometry to select one of the intersections, when neither of the intersections is closer to the origin of the ray than the other intersection.

10. The ray tracing system of claim 7 , wherein the one or more programmable circuits are configured to apply a transformation matrix to the location being transformed.

11. The ray tracing system of claim 7 , wherein the bounding element that encloses the implicitly-defined geometry is a trapping element.

12. The ray tracing system of claim 7 , wherein data is produced as a result of identifying an intersection between a ray and implicitly-defined geometry, the data comprising one or more of a closest intersection, barycentric coordinates, a distance to the intersection, and a point in 3-D space identifying an intersection point.

13. A non-transitory computer-readable storage medium having stored thereon computer readable instructions which, when executed by a processor, cause the processor to perform a method of rendering an image of a 3-D scene using ray tracing, the method comprising:

identifying an intersection between a ray and implicitly-defined geometry located in a 3-D scene, a location of the intersection expressed in a reference coordinate system for a bounding element that encloses the implicitly-defined geometry;

identifying an intersection of the ray with explicitly-defined geometry, a location of the intersection with explicitly-defined geometry being expressed in a global coordinate system; and

transforming either the location of the intersection with implicitly-defined geometry into the global coordinate system or the location of the intersection with explicitly-defined geometry into the referenced coordinate system, and comparing which of the intersections is closer to an origin of the ray;

wherein a result of said comparing which of the intersections is closer to an origin of the ray is used for rendering an image of the scene.

14. The non-transitory computer-readable medium of claim 13 , wherein the method further comprises accruing the intersections in a ray data structure and deferring the comparing.

15. The non-transitory computer-readable medium of claim 13 , wherein the comparing comprises using an identifier for source geometry to select one of the intersections, when neither of the intersections is closer to the origin of the ray than the other intersection.

16. The non-transitory computer-readable medium of claim 13 , wherein transforming either the location of the intersection with implicitly-defined geometry into the global coordinate system or the location of the intersection with explicitly-defined geometry into the referenced coordinate system comprises applying a transformation matrix to the location being transformed.

17. The non-transitory computer-readable medium of claim 13 , wherein the bounding element that encloses the implicitly-defined geometry is a trapping element.

18. The non-transitory computer-readable medium of claim 13 , wherein data is produced as a result of identifying an intersection between a ray and implicitly-defined geometry, the data comprising one or more of a closest intersection, barycentric coordinates, a distance to the intersection, and a point in 3-D space identifying an intersection point.

Assignments (1)
SECURITY INTEREST Recorded Jul 31, 2024
From: IMAGINATION TECHNOLOGIES LIMITED
To: FORTRESS INVESTMENT GROUP (UK) LTD
Reel/Frame 068221/0001 →