IP Library Granted Patent US 10,242,485
Granted Patent B2
US 10,242,485 · App. 15/393,057 · Granted Mar 26, 2019

Beam tracing

Inventors: Tero Tapani Karras (Helsinki, FI); Timo Oskari Aila (Tuusula, FI); Samuli Matias Laine (Vantaa, FI); John Erik Lindholm (Saratoga, CA)
Assignee: NVIDIA CORPORATION
G06T15/06G06T1/20G06T2210/12
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 10,242,485
App. No.
15/393,057
Granted
Mar 26, 2019
Kind
B2
Abstract

An apparatus, computer readable medium, and method are disclosed for performing an intersection query between a query beam and a target bounding volume. The target bounding volume may comprise an axis-aligned bounding box (AABB) associated with a bounding volume hierarchy (BVH) tree. An intersection query comprising beam information associated with the query beam and slab boundary information for a first dimension of a target bounding volume is received. Intersection parameter values are calculated for the first dimension based on the beam information and the slab boundary information and a slab intersection case is determined for the first dimension based on the beam information. A parametric variable range for the first dimension is assigned based on the slab intersection case and the intersection parameter values and it is determined whether the query beam intersects the target bounding volume based on at least the parametric variable range for the first dimension.

Claims (42)

1. A method, comprising:

receiving, by a computer system, an intersection query for a query beam that is a bounding volume for a plurality of rays, wherein the bounding volume is defined by sweeping a first volume through a three-dimensional space according to a parametric variable;

receiving, by the computer system, a position range of a target bounding volume for a target object along a first dimension;

calculating, by the computer system, intersection parameter values for the first dimension according to intersections of the rays within the position range of the target bounding volume along the first dimension;

assigning, by the computer system, a parametric variable range of the parametric variable for the first dimension based on a combination of at least two of the intersection parameter values calculated for the first dimension;

determining, by the computer system, whether the query beam intersects the target bounding volume using the parametric variable range for the first dimension;

responsive to determining that the query beam intersects the target bounding volume, performing, by the computer system, additional intersection analysis between at least one ray of the plurality of rays within the query beam and the target object; and

generating, by the computer system, an image of the target object from true intersections determined from the additional intersection analysis.

2. The method of claim 1 , wherein the target bounding volume is a bounding box for the target object.

3. The method of claim 1 , wherein the first volume is an axis-aligned bounding box.

4. The method of claim 1 , wherein the position range of the target bounding volume along the first dimension is specified within a three-dimensional space, and the first dimension corresponds to a coordinate axis of the three-dimensional space.

5. The method of claim 1 , wherein the plurality of rays include a first ray and a second ray specified within the three-dimensional space the first ray associated with a first direction vector and a first origin, and the second ray associated with a second direction vector and a second origin.

6. The method of claim 1 , wherein the additional intersection analysis is performed between the plurality of rays within the query beam and the target object.

7. The method of claim 1 , wherein the additional intersection analysis is performed between each of the plurality of rays within the query beam and the target object.

8. The method of claim 1 , wherein the query beam is generated according to a dilation operator applied to a query ray.

9. A system, comprising:

a memory configured to store a target bounding volume for a target object; and

a processing unit coupled to the memory and configured to:

receive an intersection query for a query beam that is a bounding volume for a plurality of rays, wherein the bounding volume is defined by sweeping a first volume through a three-dimensional space according to a parametric variable;

receive a position range of the target bounding volume for the target object along a first dimension;

calculate intersection parameter values for the first dimension according to intersections of the rays within the position range of the target bounding volume along the first dimension;

assign a parametric variable range of the parametric variable for the first dimension based on a combination of at least two of the intersection parameter values calculated for the first dimension;

determine whether the query beam intersects the target bounding volume using the parametric variable range for the first dimension;

responsive to determining that the query beam intersects the target bounding volume, perform additional intersection analysis between at least one ray of the plurality of rays within the query beam and the target object; and

generate an image of the target object from true intersections determined from the additional intersection analysis.

10. The system of claim 9 , wherein the target bounding volume is a bounding box for the target object.

11. The system of claim 9 , wherein the first volume is an axis-aligned bounding box.

12. The system of claim 9 , wherein the position range of the target bounding volume along the first dimension is specified within a three-dimensional space, and the first dimension corresponds to a coordinate axis of the three-dimensional space.

13. The system of claim 9 , wherein the plurality of rays include a first ray and a second ray specified within the three-dimensional space, the first ray associated with a first direction vector and a first origin, and the second ray associated with a second direction vector and a second origin.

14. The system of claim 9 , wherein the additional intersection analysis is performed between the plurality of rays within the query beam and the target object.

15. The system of claim 9 , wherein the additional intersection analysis is performed between each of the plurality of rays within the query beam and the target object.

16. The system of claim 9 , wherein the query beam is generated according to a dilation operator applied to a query ray.

17. A non-transitory computer-readable storage medium storing instructions that, when executed by a processor, cause the processor to perform a method comprising:

receiving an intersection query for a query beam that is a bounding volume for a plurality of rays, wherein the bounding volume is defined by sweeping a first volume through a three-dimensional space according to a parametric variable;

receiving, by the computer system, a position range of a target bounding volume for a target object along a first dimension;

calculating intersection parameter values for the first dimension according to intersections of the rays within the position range of the target bounding volume along the first dimension;

assigning a parametric variable range of the parametric variable for the first dimension based on a combination of at least two of the intersection parameter values calculated for the first dimension;

determining whether the query beam intersects the target bounding volume using the parametric variable range for the first dimension;

responsive to determining that the query beam intersects the target bounding volume, performing additional intersection analysis between at least one ray of the plurality of rays within the query beam and the target object; and

generating an image of the target object from true intersections determined from the additional intersection analysis.

18. The non-transitory computer-readable storage medium of claim 17 , wherein the additional intersection analysis is performed between the plurality of rays within the query beam and the target object.

19. The non-transitory computer-readable storage medium of claim 17 , wherein the additional intersection analysis is performed between each of the plurality of rays within the query beam and the target object.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 30, 2016
From: KARRAS, TERO TAPANI; AILA, TIMO OSKARI; LAINE, SAMULI MATIAS; LINDHOLM, JOHN ERIK
To: NVIDIA CORPORATION
Reel/Frame 040809/0365 →
Continuity (3)
Continuation 14662090 · Mar 18, 2015
Provisional Application 62046093 · Sep 4, 2014
Related Publication 20180182158A1 · Jun 28, 2018
Cited By (1)
US 12,469,203