# US 10,372,308 B2 · Predictive material editor

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

- Number: US 10,372,308 B2
- Document ID: US10372308B2
- Status: Granted
- Kind: B2
- Application number: 14/195,026
- Filed: 2014-03-03
- Published: 2014-06-26
- Granted: 2019-08-06
- Earliest claimed: 2008-08-06
- Assignees: Autodesk, Inc.
- Applicants: Autodesk, Inc.
- Inventors: Jerome Maillot; Pierre-Felix Breton; John Schrag; Andre Gauthier
- Web page: https://patentgrep.com/patent/US10372308B2

## CPC

- G06F 3/04842: Selection of displayed objects or displayed text elements (G06F3/0482 takes precedence)
- G06F 9/451: Execution arrangements for user interfaces
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A method for generating a user interface within a graphics application for a set of materials, such that each material includes a material definition and is capable of being applied to a geometry in a graphics scene when performing a rendering operation. A GUI generation engine obtains configuration information associated with an environment for a computer system and determines that a first set of materials is associated with the configuration information. The GUI generation selects the first set of materials to be displayed in a graphical user interface, and the graphical user interface is displaying to an end-user. Advantageously, embodiments of the invention provide for a technique for exposing only those materials, user interface objects, editable material parameters, user interface elements, vocabulary, rendering engines, and/or rendering engine implementations that are relevant to the user of a particular rendering application.

## Claims

### Claim 1

A method for generating a user interface within a graphics application for a set of materials, wherein each material includes a material definition and is capable of being applied to a geometry in a graphics scene when performing a rendering operation, the method comprising:
determining that a first set of materials is associated with configuration information related to a computer system environment, wherein each material represents a texture map related to a selected surface and comprises a definition that specifies a set of editable material parameters for the material, wherein a first implementation object included in a plurality of implementation objects translates the set of editable material parameters into a format compatible with a first rendering engine included in a plurality of rendering engines, wherein each implementation object included in the plurality of implementation objects is associated with a different rendering engine included in the plurality of rendering engines, and wherein each editable material parameter specifies a characteristic of the material for the first rendering engine to use in the rendering operation in which the material is applied to the geometry;
selecting the first set of materials to be displayed in a graphical user interface; and
displaying the graphical user interface to an end-user.

### Claim 2 (depends on 1)

The method of claim 1, wherein the configuration information is associated with an industry in which the end-user participates.

### Claim 3 (depends on 1)

The method of claim 1, wherein the configuration information is associated with the graphics application being implemented by the end-user or a market segment corresponding to the graphics application.

### Claim 4 (depends on 1)

The method of claim 1, wherein the configuration information comprises metadata associated with the graphics application, an environment variable, a preset file, or a registry entry.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
determining that a second set of materials is not associated with the configuration information; and
not selecting the second set of materials to be displayed in the graphical user interface.

### Claim 6 (depends on 1)

The method of claim 1, wherein the first set of materials is stored in a material library, wherein the material library is located within a memory subsystem within the computer system or on a computing device remote to the computer system.

### Claim 7 (depends on 1)

The method of claim 1, further comprising determining, for each material included in the first set of materials, a first set of editable material parameters to display in the graphical user interface that is not inclusive of all editable material parameters associated with the material.

### Claim 8 (depends on 7)

The method of claim 7, further comprising determining, for each editable material parameter included in the first set of editable material parameters, a first set of user interface elements to include in the graphical user interface to modify the physical or display characteristics of the material.

### Claim 9 (depends on 7)

The method of claim 7, further comprising:
selecting, based on the configuration information, for each editable material parameter included in the first set of editable material parameters, a vocabulary that describes physical or display characteristics of the editable material parameter; and
displaying each editable material parameter in the graphical user interface with appropriate vocabulary.

### Claim 10 (depends on 1)

The method of claim 1, further comprising determining, based on the configuration information, a first set of rendering engine implementations to expose in the graphical user interface that is not inclusive of all rendering engine implementations available within the computer system for performing the rendering operation.

### Claim 11 (depends on 10)

The method of claim 10, wherein a first rendering engine implementation provides a translation between a first set of values associated with each of the editable material parameters in the first set of editable material parameters to a second set of values.

### Claim 12 (depends on 1)

The method of claim 1, further comprising receiving an end-user request to override the selection of the first set of materials to be displayed in the graphical user interface, and displaying in the graphical user interface a second set of materials associated with the end-user request that is not included in the first set of materials.

### Claim 13 (depends on 1)

The method of claim 1, wherein the first implementation object translates the set of editable material parameters by generating multiple parameters for the first rendering engine from a first editable material parameter included in the set of editable material parameters.

### Claim 14 (depends on 1)

The method of claim 1, further comprising:
selecting, based on the configuration information, one of a first user interface object and a second user interface object to include in the graphical user interface;
wherein:
the first user interface object defines a first subset of editable material parameters included in the set of editable material parameters to display in the graphical user interface, and
the second user interface object defines a second subset of editable material parameters included in the set of editable material parameters to display in the graphical user interface.

### Claim 15

One or more non-transitory computer-readable media storing instructions, that when executed by one or more processors, cause a graphics application to generate a user interface for a set of materials, wherein each material includes a material definition and is capable of being applied to a geometry in a graphics scene when performing a rendering operation, by performing the step of:
determining that a first set of materials is associated with configuration information related to a computer system environment, wherein each material represents a texture map related to a selected surface and comprises a definition that specifies a set of editable material parameters for the material, wherein a first implementation object included in a plurality of implementation objects translates the set of editable material parameters into a format compatible with a first rendering engine included in a plurality of rendering engines, wherein each implementation object included in the plurality of implementation objects is associated with a different rendering engine included in the plurality of rendering engines, and wherein each editable material parameter specifies a characteristic of the material for the first rendering engine to use in the rendering operation in which the material is applied to the geometry;
selecting the first set of materials to be displayed in a graphical user interface; and
causing the graphical user interface to be displayed to an end-user.

### Claim 16 (depends on 15)

The one or more computer-readable media of claim 15, wherein the configuration information is associated with an industry in which the end-user participates.

### Claim 17 (depends on 15)

The one or more computer-readable media of claim 15, wherein the configuration information is associated with the graphics application being implemented by the end-user or a market segment corresponding to the graphics application.

### Claim 18 (depends on 15)

The one or more computer-readable media of claim 15, wherein the configuration information comprises metadata associated with the graphics application, an environment variable, a preset file, or a registry entry.

### Claim 19 (depends on 15)

The one or more computer-readable media of claim 15, further comprising:
determining that a second set of materials is not associated with the configuration information; and
not selecting the second set of materials to be displayed in the graphical user interface.

### Claim 20 (depends on 15)

The one or more computer-readable media of claim 15, wherein the first set of materials is stored in a material library, wherein the material library is located within a memory subsystem within the computer system or on a computing device remote to the computer system.

### Claim 21 (depends on 15)

The one or more computer-readable media of claim 15, further comprising the step of determining, for each material included in the first set of materials, a first set of editable material parameters to display in the graphical user interface that is not inclusive of all editable material parameters associated with the material.

### Claim 22 (depends on 21)

The one or more computer-readable media of claim 21, further comprising the step of determining, for each editable material parameter included in the first set of editable material parameters, a first set of user interface elements to include in the graphical user interface to modify the physical or display characteristics of the material.

### Claim 23 (depends on 21)

The one or more computer-readable media of claim 21, further comprising:
selecting, based on the configuration information, for each editable material parameter included in the first set of editable material parameters, a vocabulary that describes physical or display characteristics of the editable material parameter; and
displaying each editable material parameter in the graphical user interface with appropriate vocabulary.

### Claim 24 (depends on 15)

The one or more computer-readable media of claim 15, further comprising the step of determining, based on the configuration information, a first set of rendering engine implementations to expose in the graphical user interface that is not inclusive of all rendering engine implementations available within the computer system for performing the rendering operation.

### Claim 25 (depends on 24)

The one or more computer-readable media of claim 24, wherein a first rendering engine implementation provides a translation between a first set of values associated with each of the editable material parameters in the first set of editable material parameters to a second set of values.

### Claim 26 (depends on 15)

The one or more computer-readable media of claim 15, further comprising the steps of receiving an end-user request to override the selection of the first set of materials to be displayed in the graphical user interface, and displaying in the graphical user interface a second set of materials associated with the end-user request that is not included in the first set of materials.

### Claim 27

A computer device, comprising:
a processing unit; and
a memory coupled to the processing unit and storing instructions that, when executed by the processing unit, cause the processing unit to:
determine that a first set of materials is associated with configuration information related to a computer system environment, wherein each material represents a texture map related to a selected surface and comprises a definition that specifies a set of editable material parameters for the material, wherein a first implementation object included in a plurality of implementation objects translates the set of editable material parameters into a format compatible with a first rendering engine included in a plurality of rendering engines, wherein each implementation object included in the plurality of implementation objects is associated with a different rendering engine included in the plurality of rendering engines, and wherein each editable material parameter specifies a characteristic of the material for the first rendering engine to use in the rendering operation in which the material is applied to the geometry;
select the first set of materials to be displayed in a graphical user interface; and
cause the graphical user interface to be displayed to an end-user.

### Claim 28

A method for generating a user interface within a graphics application for a set of materials, wherein each material includes a material definition and is capable of being applied to a geometry in a graphics scene when performing a rendering operation, the method comprising:
determining that a first set of materials is associated with configuration information related to a computer system environment, wherein each material represents a texture map related to a selected surface and comprises a definition that specifies a set of editable material parameters for the material, wherein a first implementation object included in a plurality of implementation objects translates the set of editable material parameters into a format compatible with a first rendering engine included in a plurality of rendering engines, and wherein each editable material parameter specifies a characteristic of the material to use in the rendering operation in which the material is applied to the geometry;
selecting the first set of materials to be displayed in a graphical user interface; and
displaying the graphical user interface to an end-user.
