# US 10,504,273 B2 · Automatic level-of-detail for physically-based materials

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,504,273 B2
- Document ID: US10504273B2
- Status: Granted
- Kind: B2
- Application number: 15/599,320
- Filed: 2017-05-18
- Published: 2018-06-14
- Granted: 2019-12-10
- Earliest claimed: 2016-12-09
- Assignees: NVIDIA Corporation
- Applicants: NVIDIA Corporation
- Inventors: Lutz Kettner; Jan Jordan
- Web page: https://patentgrep.com/patent/US10504273B2

## CPC

- G06T 15/04: Texture mapping
- G06F 16/9024: {Graphs; Linked lists (G06F16/9027 takes precedence)}
- G06F 30/20: Design optimisation, verification or simulation (optimisation, verification or simulation of circuit designs G06F30/30)
- G06T 15/005: {General purpose rendering architectures}
- G06T 15/506: {Illumination models}
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A method, computer readable medium, and system are disclosed for implementing automatic level-of-detail for physically-based materials. The method includes the steps of identifying a declarative representation of a material to be rendered, creating a reduced complexity declarative representation of the material by applying one or more term rewriting rules to the declarative representation of the material, and returning the reduced complexity declarative representation of the material.

## Claims

### Claim 1

A method comprising:
identifying a declarative representation of a material to be rendered, the declarative representation including expressions representing a structural part in the material as one or more functions defining a distribution of light as it interacts with the material;
creating a reduced complexity declarative representation of the material by:
traversing the expressions, and
applying one or more term rewriting rules to the expressions during the traversing of the expressions,
wherein at least one term rewriting rule of the one or more term rewriting rules includes a pattern that when matched to a sub-expression of one of the expressions replaces the one of the expressions with a replacement expression determined at least in part from the term rewriting rule; and
returning the reduced complexity declarative representation of the material.

### Claim 2 (depends on 1)

The method of claim 1, wherein the declarative representation includes an expression tree or a directed acyclic graph (DAG) having a first complexity, and wherein the reduced complexity declarative representation of the material includes one of an expression tree or a directed acyclic graph (DAG) having a second complexity that is reduced with respect to the first complexity.

### Claim 3 (depends on 1)

The method of claim 1, wherein the declarative representation includes an expression tree, where one or more nodes of the expression tree each represent the one or more functions defining the distribution of light as it interacts with the material.

### Claim 4 (depends on 1)

The method of claim 1, wherein the material is rendered utilizing a physical based rendering (PBR) model.

### Claim 5 (depends on 1)

The method of claim 1, further comprising determining an order in which the one or more term rewriting rules are applied to the expressions.

### Claim 6 (depends on 1)

The method of claim 1, wherein the one or more term rewriting rules are applied to the expressions to create a sequence of declarative representations of the material that terminate with the reduced complexity declarative representation of the material.

### Claim 7 (depends on 1)

The method of claim 1, wherein a parameter value of each of the expressions conditionally prevents a matching of each of the term rewriting rules.

### Claim 8 (depends on 1)

The method of claim 1, further comprising including annotations or other metadata associated with the declarative representation, where the annotations or other metadata are used to select the one or more term rewriting rules or are used as additional parameters during the applying of the one or more term rewriting rules to the expressions.

### Claim 9 (depends on 1)

The method of claim 1, wherein a plurality of the term rewriting rules are applied to the expressions in all possible orders to create a plurality of reduced complexity declarative representations of the material, and one of the plurality of reduced complexity declarative representations of the material is selected according to one or more predetermined criteria.

### Claim 10 (depends on 1)

The method of claim 1, wherein a plurality of term rewriting rules are applied to the expressions in a subset of all possible orders, using a predetermined selection strategy, to create a plurality of reduced complexity declarative representations of the material, and one of the plurality of reduced complexity declarative representations of the material is selected according to one or more predetermined criteria, where the predetermined selection strategy is based on greedy selection, an arbitrary cost function, or selection criteria on which of the term rewriting rules to apply and which ones to not apply.

### Claim 11 (depends on 1)

The method of claim 1, wherein the expressions are traversed recursively in a depth first, left to right order, and the one or more term rewriting rules are matched against and applied on a current expression of the declarative representation during traversal, where sub-expressions of the declarative representation are traversed recursively after applying the one or more term rewriting rules.

### Claim 12 (depends on 1)

The method of claim 1, wherein the expressions are traversed recursively in a depth first, left to right order, and the one or more term rewriting rules are matched against and applied on a current expression of the declarative representation only after all sub-expressions of the current expression have been traversed recursively.

### Claim 13 (depends on 1)

The method of claim 1, further comprising determining the one or more term rewriting rules by:
defining a plurality of terminating expressions;
creating a plurality of matching patterns for all BSDFs within the declarative representation, where the plurality of matching patterns enumerate all possible combinations of how the plurality of terminating expressions can show in parameters of the BSDFs;
eliminating from the plurality of matching patterns those that are equal to the plurality of terminating expressions to create a plurality of remaining patterns; and
for each of the plurality of remaining patterns, choosing a replacement expression from the plurality of terminating expressions and defining arguments of the replacement expression based on arguments of a match within the remaining pattern.

### Claim 14

A system comprising:
a processor that is configured to:
identify a declarative representation of a material to be rendered, the declarative representation including expressions representing a structural part in the material as one or more functions defining a distribution of light as it interacts with the material;
create a reduced complexity declarative representation of the material by:
traversing the expressions, and
applying one or more term rewriting rules to the expressions during the traversing of the expressions,
wherein at least one term rewriting rule of the one or more term rewriting rules includes a pattern that when matched to a sub-expression of one of the expressions replaces the one of the expressions with a replacement expression determined at least in part from the term rewriting rule; and
return the reduced complexity declarative representation of the material.

### Claim 15 (depends on 14)

The system of claim 14, wherein the declarative representation includes an expression tree or a directed acyclic graph (DAG) having a first complexity, and wherein the reduced complexity declarative representation of the material includes one of an expression tree or a directed acyclic graph (DAG) having a second complexity that is reduced with respect to the first complexity.

### Claim 16 (depends on 14)

The system of claim 14, wherein the declarative representation includes an expression tree, where one or more nodes of the expression tree each represent the one or more functions defining the distribution of light as it interacts with the material.

### Claim 17 (depends on 14)

The system of claim 14, wherein the material is rendered utilizing a physical based rendering (PBR) model.

### Claim 18 (depends on 14)

The system of claim 14, wherein the processor is further configured to determine an order in which the one or more term rewriting rules are applied to the expressions.

### Claim 19 (depends on 14)

The system of claim 14, wherein the one or more term rewriting rules are applied to the expressions to create a sequence of declarative representations of the material that terminate with the reduced complexity declarative representation of the material.

### Claim 20

A computer-readable storage medium storing instructions that, when executed by a processor, causes the processor to perform steps comprising:
identifying a declarative representation of a material to be rendered, the declarative representation including expressions representing a structural part in the material as one or more functions defining a distribution of light as it interacts with the material;
creating a reduced complexity declarative representation of the material by:
traversing the expressions, and
applying one or more term rewriting rules to the expressions during the traversing of the expressions,
wherein at least one term rewriting rule of the one or more term rewriting rules includes a pattern that when matched to a sub-expression of one of the expressions replaces the one of the expressions with a replacement expression determined at least in part from the term rewriting rule; and
returning the reduced complexity declarative representation of the material.

### Claim 21 (depends on 1)

The method of claim 1, wherein the one or more functions include a bidirectional reflectance distribution function (BRDF).

### Claim 22 (depends on 1)

The method of claim 1, wherein the one or more functions include a bidirectional transmission distribution function (BTDF).

### Claim 23 (depends on 1)

The method of claim 1, wherein the one or more functions include a bidirectional scattering distribution function (BSDF).

### Claim 24 (depends on 1)

The method of claim 1, wherein the one or more functions include an emission distribution function (EDF).

### Claim 25 (depends on 1)

The method of claim 1, wherein the one or more functions include a volume distribution or phase function (VDF).

### Claim 26 (depends on 1)

The method of claim 1, wherein the one or more functions include a distribution function modifier.

### Claim 27 (depends on 1)

The method of claim 1, wherein the one or more functions include a distribution function combiner.

### Claim 28 (depends on 1)

The method of claim 1, wherein the reduced complexity declarative representation approximates the material.
