Systems and method for physically based rendering
AssigneeHexagon Technology Center GmbH
InventorAlfredo Arce
Life of this patent
Estimating the term…
Abstract
Illustrative embodiments generate a physical base rendering (PBR) palette that provides improved fidelity in images rendered by a computer aided design system. For example, where a CAD system operator has a basic shading palette for an existing design, and where the CAD system operator desires to generate images of the existing design from a PBR palette instead, illustrative embodiments process the basic shading palette to produce a PBR palette that, when used by the CAD system to render an image, produces an image of a higher quality than conventional technologies.
Claims24
A computer-implemented method comprising:
- obtaining a model for a computer-aided-design environment, the model comprising a plurality of materials and not comprising a PBR palette;
- obtaining a basic palette corresponding to the model, the basic palette comprising a plurality of basic palette entries;
- obtaining an H-S palette corresponding to the model, the H-S palette comprising a plurality of H-S entries, each H-S entry corresponding to a one of the basic palette entries, and comprising a corresponding hue parameter and a corresponding saturation parameter;
- finding from the plurality of basic palette entries, the minimum finish value and the maximum finish value;
- creating from the basic palette and the H-S palette, a physically based rendering (“PBR”) palette for the model, the PBR palette comprising a plurality of PBR palette entries, each PBR entry corresponding to a one of the basic palette entries of the basic palette, by, for each PBR palette entry:
- setting the color value of the PBR palette to a color selected from the specular color of the corresponding basic palette entry and the diffuse color of the corresponding basic palette entry;
- setting a metalness parameter by assessing the specular hue and the diffuse hue from the corresponding H-S palette, wherein specular hue is quantitatively specified on a color wheel and diffuse hue is quantitatively specified on said color wheel, and
- wherein setting a metalness parameter by assessing the specular hue and the diffuse hue from the corresponding H-S palette comprises:
- for each entry in which the specular hue is not near the diffuse hue, setting the metalness parameter to a value of zero;
- and
- for each entry in which the specular hue is near the diffuse hue, and for which a ratio of diffuse saturation to specular saturation is not less than a predetermined diffuse/saturation threshold, setting the metalness parameter to a value of one;
- and
- for each entry in which the specular hue is near the diffuse hue, and for which a ratio of diffuse saturation to specular saturation is less than the predetermined diffuse/saturation threshold, setting the metalness parameter to a value of the ratio of diffuse saturation to specular saturation,
- wherein the specular hue is near the diffuse hue if the specular hue is within a pre-determined number of degrees of the diffuse hue on the color wheel, and is otherwise not near the diffuse hue;
- setting a roughness parameter based on the minimum finish value of the basic palette and the maximum finish value of the basic palette;
- and
- rendering an image from the PBR palette.
A system comprising:
- a memory to store:
- a CAD model to be rendered, the CAD model having a plurality of materials;
- and
- a basic palette corresponding to the CAD model, the basic palette having a plurality of basic palette entries, each basic palette entry of the plurality of basic palette entries corresponding to a corresponding material from the plurality of materials;
- and
- an H-S palette corresponding to the CAD model, the H-S palette having a plurality of H-S palette entries, each H-S palette entry of the plurality of H-S palette entries corresponding to a corresponding material from the plurality of materials;
- a set of modules configured to generate a set of PBR palette entries in a PBR palette corresponding to the CAD model, each PBR palette entry of the plurality of PBR palette entries corresponding to a corresponding material from the plurality of materials, the set of modules comprising:
- a color determination module configured to determine, for each PBR palette entry, a color parameter;
- a metalness module configured to determine, for each PBR palette entry, a metalness parameter by:
- wherein specular hue is quantitatively specified in degrees on a color wheel and diffuse hue is quantitatively specified in degrees on said color wheel, by:
- for each entry in which the specular hue is not near the diffuse hue, setting the metalness parameter to a value of zero;
- and
- for each entry in which the specular hue is near the diffuse hue, and for which a ratio of diffuse saturation to specular saturation is not less than a predetermined diffuse/saturation threshold, setting the metalness parameter to a value of one;
- and
- for each entry in which the specular hue is near the diffuse hue, and for which a ratio of diffuse saturation to specular saturation is less than the predetermined diffuse/saturation threshold, setting the metalness parameter to a value of the ratio of diffuse saturation to specular saturation,
- wherein the specular hue is near the diffuse hue if the specular hue is within a pre-determined number of degrees of the diffuse hue on the color wheel, and is otherwise not near the diffuse hue;
- a roughness module configured to determine, for each PBR palette entry, a roughness parameter;
- and
- an image generation module configured to generate an image of the CAD model from the PBR palette.
A non-transitory computer readable medium having computer-executable code therein, in which the computer executable code, when executed by a computer, causes the computer to perform a method comprising:
- obtaining a model for a computer-aided-design environment, the model comprising a plurality of materials;
- obtaining a basic palette corresponding to the model, the basic palette comprising a plurality of basic palette entries, each basic palette entry of the plurality of basic palette entries corresponding to a material from the plurality of materials and having a corresponding finish value;
- obtaining an H-S palette corresponding to the model, the H-S palette comprising a plurality of H-S entries, each H-S entry corresponding to a one of the basic palette entries, and comprising a corresponding hue parameter and a corresponding saturation parameter;
- finding, from the plurality of basic palette entries, the minimum finish value and the maximum finish value;
- creating, from the basic palette and the H-S palette, a physically based rendering (“PBR”) palette for the model, the PBR palette comprising a plurality of PBR palette entries, each PBR entry corresponding to a one of the basic palette entries of the basic palette, by, for each PBR palette entry:
- setting the color value of the PBR palette to a color selected from the specular color of the corresponding basic palette entry and the diffuse color of the corresponding basic palette entry;
- setting a metalness parameter by assessing the specular hue and the diffuse hue from the corresponding H-S palette, wherein specular hue is quantitatively specified on a color wheel and diffuse hue is quantitatively specified on said color wheel, and
- wherein setting a metalness parameter by assessing the specular hue and the diffuse hue from the corresponding H-S palette comprises:
- for each entry in which the specular hue is not near the diffuse hue, setting the metalness parameter to a value of zero;
- and
- for each entry in which the specular hue is near the diffuse hue, and for which a ratio of diffuse saturation to specular saturation is not less than a predetermined diffuse/saturation threshold, setting the metalness parameter to a value of one;
- and
- for each entry in which the specular hue is near the diffuse hue, and for which a ratio of diffuse saturation to specular saturation is less than the predetermined diffuse/saturation threshold, setting the metalness parameter to a value of the ratio of diffuse saturation to specular saturation,
- wherein the specular hue is near the diffuse hue if the specular hue is within a pre-determined number of degrees of the diffuse hue on the color wheel, and is otherwise not near the diffuse hue;
- setting a roughness parameter based on the smallest finish value of the basic palette and the greatest finish value of the basic palette;
- and
- rendering the image from the PBR palette.
A computer-implemented method comprising:
- obtaining a model for a computer-aided-design environment, the model comprising a plurality of materials and not comprising a PBR palette;
- obtaining a basic palette corresponding to the model, the basic palette comprising a plurality of basic palette entries;
- obtaining an H-S palette corresponding to the model, the H-S palette comprising a plurality of H-S entries, each H-S entry corresponding to a one of the basic palette entries, and comprising a corresponding hue parameter and a corresponding saturation parameter;
- finding from the plurality of basic palette entries, the minimum finish value and the maximum finish value;
- creating from the basic palette and the H-S palette, a physically based rendering (“PBR”) palette for the model, the PBR palette comprising a plurality of PBR palette entries, each PBR entry corresponding to a one of the basic palette entries of the basic palette, by, for each PBR palette entry:
- setting the color value of the PBR palette to a color selected from the specular color of the corresponding basic palette entry and the diffuse color of the corresponding basic palette entry;
- setting a metalness parameter by assessing the specular hue and the diffuse hue from the corresponding H-S palette, wherein specular hue is quantitatively specified on a color wheel and diffuse hue is quantitatively specified on said color wheel, and
- wherein setting a metalness parameter by assessing the specular hue and the diffuse hue from the corresponding H-S palette comprises:
- categorizing the PBR entry into one of a set of categories, and setting the metalness to a metalness value corresponding to the category, wherein the categories are selected from:
- (a) a category for situations in which the specular hue is not near the diffuse hue, and the corresponding metalness value is zero;
- (b) a category for situations in which the specular hue is near the diffuse hue and the ratio of diffuse saturation to specular saturation is less than a threshold, and the corresponding metalness value is the ratio divided by the threshold;
- and
- (c) a category for situations in which the specular hue is not near the diffuse hue and the ratio of diffuse saturation to specular saturation is not less than the threshold, and the corresponding metalness value is one;
- setting a roughness parameter based on the minimum finish value of the basic palette and the maximum finish value of the basic palette;
- and
- rendering an image from the PBR palette.
A system comprising:
- a memory to store:
- a CAD model to be rendered, the CAD model having a plurality of materials;
- and
- a basic palette corresponding to the CAD model, the basic palette having a plurality of basic palette entries, each basic palette entry of the plurality of basic palette entries corresponding to a corresponding material from the plurality of materials;
- and
- an H-S palette corresponding to the CAD model, the H-S palette having a plurality of H-S palette entries, each H-S palette entry of the plurality of H-S palette entries corresponding to a corresponding material from the plurality of materials;
- a set of modules configured to generate a set of PBR palette entries in a PBR palette corresponding to the CAD model, each PBR palette entry of the plurality of PBR palette entries corresponding to a corresponding material from the plurality of materials, the set of modules comprising:
- a color determination module configured to determine, for each PBR palette entry, a color parameter;
- a metalness module configured to determine, for each PBR palette entry, a metalness parameter by:
- categorizing the PBR entry into one of a set of categories, and setting the metalness parameter to a metalness value corresponding to the category, wherein the categories are selected from:
- (a) a category for situations in which the specular hue is not near the diffuse hue, and the corresponding metalness value is zero;
- (b) a category for situations in which the specular hue is near the diffuse hue and the ratio of diffuse saturation to specular saturation is less than a threshold, and the corresponding metalness value is the ratio divided by the threshold;
- and
- (c) a category for situations in which the specular hue is not near the diffuse hue and the ratio of diffuse saturation to specular saturation is not less than the threshold, and the corresponding metalness value is one;
- a roughness module configured to determine, for each PBR palette entry, a roughness parameter;
- and
- an image generation module configured to generate an image of the CAD model from the PBR palette.
A non-transitory computer readable medium having computer-executable code therein, in which the computer executable code, when executed by a computer, causes the computer to perform a method comprising:
- obtaining a model for a computer-aided-design environment, the model comprising a plurality of materials;
- obtaining a basic palette corresponding to the model, the basic palette comprising a plurality of basic palette entries, each basic palette entry of the plurality of basic palette entries corresponding to a material from the plurality of materials and having a corresponding finish value;
- obtaining an H-S palette corresponding to the model, the H-S palette comprising a plurality of H-S entries, each H-S entry corresponding to a one of the basic palette entries, and comprising a corresponding hue parameter and a corresponding saturation parameter;
- finding, from the plurality of basic palette entries, the minimum finish value and the maximum finish value;
- creating, from the basic palette and the H-S palette, a physically based rendering (“PBR”) palette for the model, the PBR palette comprising a plurality of PBR palette entries, each PBR entry corresponding to a one of the basic palette entries of the basic palette, by, for each PBR palette entry:
- setting the color value of the PBR palette to a color selected from the specular color of the corresponding basic palette entry and the diffuse color of the corresponding basic palette entry;
- setting a metalness parameter by assessing the specular hue and the diffuse hue from the corresponding H-S palette, wherein specular hue is quantitatively specified on a color wheel and diffuse hue is quantitatively specified on said color wheel, and
- wherein setting a metalness parameter by assessing the specular hue and the diffuse hue from the corresponding H-S palette comprises:
- categorizing the PBR entry into one of a set of categories, and setting the metalness to a metalness value corresponding to the category, wherein the categories are selected from:
- (a) a category for situations in which the specular hue is not near the diffuse hue, and the corresponding metalness value is zero;
- (b) a category for situations in which the specular hue is near the diffuse hue and the ratio of diffuse saturation to specular saturation is less than a threshold, and the corresponding metalness value is the ratio divided by the threshold;
- and
- (c) a category for situations in which the specular hue is not near the diffuse hue and the ratio of diffuse saturation to specular saturation is not less than the threshold, and the corresponding metalness value is one;
- setting a roughness parameter based on the smallest finish value of the basic palette and the greatest finish value of the basic palette;
- and
- rendering the image from the PBR palette.
Dependencies are inferred from the claim text.