IP Library Granted Patent US 11,600,041
Granted Patent B2
US 11,600,041 · App. 17/545,343 · Granted Mar 7, 2023

Computing illumination of an elongated shape having a noncircular cross section

Inventor: Andrea Weidlich (Montreal, CA)
Assignee: Unity Technologies SF
G06T15/506G06T2210/16
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,600,041
App. No.
17/545,343
Granted
Mar 7, 2023
Kind
B2
Abstract

The system obtains an indication of a shape of a cross-section of an elongated shape, and an orientation of the shape. Based on the shape of the cross-section of the elongated shape and the orientation of the shape, the system creates a nonuniform distribution of random numbers mapping uniformly distributed input values to multiple points on the surface of the elongated shape. The system provides an input value randomly selected from a uniform distribution of random numbers to the nonuniform distribution of random numbers to obtain a point among the multiple sample points on the surface of the elongated shape. The system applies a function to the input value to obtain an indication of a normal associated with the sample point among the multiple sample points. Finally, the system computes an illumination of the elongated shape using the normal.

Claims (94)

1. A method to calculate a normal of an elongated shape having a noncircular cross-section comprising:

representing the elongated shape having the noncircular cross-section using a nonuniform distribution of numbers mapping a uniform distribution of numbers to multiple sample points corresponding to multiple points on the noncircular cross-section of the elongated shape, by:

obtaining an indication of a shape of the noncircular cross-section of the elongated shape, and an orientation of the shape;

based on the shape of the noncircular cross-section of the elongated shape and the orientation of the shape, creating the nonuniform distribution of numbers representing the shape of the noncircular cross-section of the elongated shape;

obtaining an input value selected from the uniform distribution of numbers;

mapping the input value to the nonuniform distribution of numbers to obtain a number among the nonuniform distribution of numbers;

mapping the number among the nonuniform distribution of numbers to a sample point among the multiple sample points,

wherein the sample point among the multiple sample points represents a surface of the elongated shape; and

calculating the normal of the elongated shape at the sample point by applying a function to the input value selected from the uniform distribution of numbers.

2. The method of claim 1 , wherein the shape of the noncircular cross-section of the elongated shape is elliptical, the method comprising:

representing the elongated shape having the elliptical cross-section using a distribution approximating a Beta distribution by:

obtaining an aspect ratio of the elliptical cross-section and the orientation of the elliptical cross-section;

based on the aspect ratio of the elliptical cross-section and the orientation of the elliptical cross-section, determining a parameter of the distribution approximating the Beta distribution representing the elliptical cross-section of the elongated shape; and

providing the input value selected from the uniform distribution of numbers to the distribution approximating the Beta distribution to obtain the sample point among the multiple sample points.

3. The method of claim 1 , wherein the shape of the noncircular cross-section of the elongated shape is elliptical, the method comprising:

representing the elongated shape having the elliptical cross-section using a Kumaraswamy distribution by:

obtaining an aspect ratio of the elliptical cross-section and the orientation of the elliptical cross-section;

based on the aspect ratio of the elliptical cross-section and the orientation of the elliptical cross-section, determining a parameter of the Kumaraswamy distribution representing the elliptical cross-section of the elongated shape; and

providing the input value selected from the uniform distribution of numbers to the Kumaraswamy distribution to obtain the sample point among the multiple sample points.

4. The method of claim 3 , wherein the determining the parameter of the Kumaraswamy distribution comprises:

retrieving from a lookup table the parameter of the Kumaraswamy distribution based on the aspect ratio of the elliptical cross-section and the orientation of the elliptical cross-section.

5. The method of claim 1 , wherein the nonuniform distribution of numbers comprises a Beta distribution or a Kumaraswamy distribution.

6. The method of claim 1 , wherein the shape of the noncircular cross-section of the elongated shape includes a curvilinear shape.

7. The method of claim 1 , wherein the function is arcsine.

8. The method of claim 1 , comprising:

obtaining a second nonuniform distribution of numbers approximating the nonuniform distribution of numbers,

wherein the second nonuniform distribution of numbers is more computationally efficient than the nonuniform distribution of numbers; and

using the second nonuniform distribution of numbers to calculate the normal of the elongated shape.

9. The method of claim 1 , comprising:

obtaining a geometric object, including multiple elongated shapes; and

calculating illumination of the geometric object by calculating illumination of each elongated shape among the multiple elongated shapes using a nonuniform distribution of numbers corresponding to a cross-section of the each elongated shape.

10. The method of claim 1 , wherein the elongated shape comprises a human hair, an animal hair, or a fiber.

11. At least one computer-readable storage medium carrying instructions, which, when executed by at least one data processor of a system, cause the system to:

obtain an indication of a shape of a noncircular cross-section of an elongated shape, and an orientation of the shape;

based on the shape of the noncircular cross-section of the elongated shape and the orientation of the shape, create a nonuniform distribution of numbers mapping a uniform distribution of numbers to multiple points on a surface of the elongated shape;

obtain an input value selected from the uniform distribution of numbers;

map the input value to the nonuniform distribution of numbers to obtain a number among the nonuniform distribution of numbers;

map the number among the nonuniform distribution of numbers to a point among the multiple points on the surface of the elongated shape; and

calculate a normal of the elongated shape at the point among the multiple points on the surface of the elongated shape by applying a function to the input value selected from the uniform distribution of numbers.

12. The storage medium of claim 11 , wherein the shape of the noncircular cross-section of the elongated shape is elliptical, comprising the instructions to:

represent the elongated shape having the elliptical cross-section using a distribution approximating a Beta distribution by:

obtaining an aspect ratio of the elliptical cross-section and the orientation of the elliptical cross-section;

based on the aspect ratio of the elliptical cross-section and the orientation of the elliptical cross-section, determining a parameter of the distribution approximating the Beta distribution representing the elliptical cross-section of the elongated shape; and

provide the input value selected from the uniform distribution of numbers to the distribution approximating the Beta distribution to obtain a sample point used in calculation of the normal.

13. The storage medium of claim 11 , wherein the shape of the noncircular cross-section of the elongated shape is elliptical, comprising the instructions to:

represent the elongated shape having the elliptical cross-section using a Kumaraswamy distribution by:

obtaining an aspect ratio of the elliptical cross-section and the orientation of the elliptical cross-section;

based on the aspect ratio of the elliptical cross-section and the orientation of the elliptical cross-section, determining a parameter of the Kumaraswamy distribution representing the elliptical cross-section of the elongated shape; and

provide the input value selected from the uniform distribution of numbers to the Kumaraswamy distribution to obtain a sample point used in calculation of the normal.

14. The storage medium of claim 13 , wherein the instructions to determine the parameter of the Kumaraswamy distribution comprise the instructions to:

retrieve from a lookup table the parameter of the Kumaraswamy distribution based on the aspect ratio of the elliptical cross-section and the orientation of the elliptical cross-section.

15. The storage medium of claim 11 , wherein the nonuniform distribution of numbers comprises a Beta distribution or a Kumaraswamy distribution.

16. The storage medium of claim 11 , wherein the shape of the noncircular cross-section of the elongated shape includes a curvilinear shape.

17. The storage medium of claim 11 , wherein the function is arcsine.

18. The storage medium of claim 11 , comprising the instructions to:

obtain a second nonuniform distribution of numbers approximating the nonuniform distribution of numbers,

wherein the second nonuniform distribution of numbers is more computationally efficient than the nonuniform distribution of numbers; and

use the second nonuniform distribution of numbers to calculate the normal of the elongated shape.

19. The storage medium of claim 11 , comprising the instructions to:

obtain a geometric object including multiple elongated shapes; and

calculate illumination of the geometric object by calculating illumination of each elongated shape among the multiple elongated shapes using a nonuniform distribution of numbers corresponding to a cross-section of the each elongated shape.

20. The storage medium of claim 11 , wherein the elongated shape comprises a human hair, an animal hair, or a thread.

21. A system comprising:

at least one hardware processor; and

at least one non-transitory memory storing instructions, which, when executed by the at least one hardware processor, cause the system to:

obtain an indication of a shape of a noncircular cross-section of an elongated shape, and an orientation of the shape;

based on the shape of the noncircular cross-section of the elongated shape and the orientation of the shape, create a nonuniform distribution of numbers mapping a uniform distribution of numbers to multiple points on a surface of the elongated shape;

obtain an input value selected from the uniform distribution of numbers;

map the input value to a number among the nonuniform distribution of numbers;

map the number among the nonuniform distribution of numbers to a point among the multiple points on the surface of the elongated shape; and

calculate a normal of the elongated shape at the point among the multiple points on the surface of the elongated shape by applying a function to the input value selected from the uniform distribution of numbers.

22. The system of claim 21 , wherein the shape of the noncircular cross-section of the elongated shape is elliptical, comprising the instructions to:

represent the elongated shape having the elliptical cross-section using a distribution approximating a Beta distribution by:

obtaining an aspect ratio of the elliptical cross-section and the orientation of the elliptical cross-section;

based on the aspect ratio of the elliptical cross-section and the orientation of the elliptical cross-section, determining a parameter of the distribution approximating the Beta distribution representing the elliptical cross-section of the elongated shape; and

provide the input value selected from the uniform distribution of numbers to the distribution approximating the Beta distribution to obtain a sample point used in calculation of the normal.

23. The system of claim 21 , wherein the shape of the noncircular cross-section of the elongated shape is elliptical, comprising the instructions to:

represent the elongated shape having the elliptical cross-section using a Kumaraswamy distribution by:

obtaining an aspect ratio of the elliptical cross-section and the orientation of the elliptical cross-section;

based on the aspect ratio of the elliptical cross-section and the orientation of the elliptical cross-section, determining a parameter of the Kumaraswamy distribution representing the elliptical cross-section of the elongated shape; and

provide the input value selected from the uniform distribution of numbers to the Kumaraswamy distribution to obtain a sample point used in calculation of the normal.

24. The system of claim 23 , wherein the instructions to determine the parameter of the Kumaraswamy distribution comprise the instructions to:

retrieve from a lookup table the parameter of the Kumaraswamy distribution based on the aspect ratio of the elliptical cross-section and the orientation of the elliptical cross-section.

25. The system of claim 21 , wherein the nonuniform distribution of numbers comprises a Beta distribution or a Kumaraswamy distribution.

26. The system of claim 21 , wherein the shape of the noncircular cross-section of the elongated shape includes a curvilinear shape.

27. The system of claim 21 , wherein the function is arcsine.

28. The system of claim 21 , comprising the instructions to:

obtain a second nonuniform distribution of numbers approximating the nonuniform distribution of numbers,

wherein the second nonuniform distribution of numbers is more computationally efficient than the nonuniform distribution of numbers; and

use the second nonuniform distribution of numbers to calculate the normal of the elongated shape.

29. The system of claim 21 , comprising the instructions to:

obtain a geometric object including multiple elongated shapes; and

calculate illumination of the geometric object by calculating illumination of each elongated shape among the multiple elongated shapes using a nonuniform distribution of numbers corresponding to a cross-section of the each elongated shape.

30. The system of claim 21 , wherein the elongated shape comprises a human hair, an animal hair, or a thread.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2023
From: WETA DIGITAL LIMITED
To: UNITY SOFTWARE INC.
Reel/Frame 062576/0573 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2023
From: UNITY SOFTWARE INC.
To: UNITY TECHNOLOGIES SF
Reel/Frame 062577/0432 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 15, 2022
From: WEIDLICH, ANDREA
To: WETA DIGITAL LIMITED
Reel/Frame 061769/0420 →
Continuity (3)
Continuation 17377126 · Jul 15, 2021
Provisional Application 63221708 · Jul 14, 2021
Related Publication 20230013009A1 · Jan 19, 2023