1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- import type { Scene } from "../../scene";
- import type { Color3 } from "../../Maths/math.color";
- import type { BaseTexture } from "../../Materials/Textures/baseTexture";
- import { PBRBaseSimpleMaterial } from "./pbrBaseSimpleMaterial";
- import type { Nullable } from "../../types";
- /**
- * The PBR material of BJS following the specular glossiness convention.
- *
- * This fits to the PBR convention in the GLTF definition:
- * https://github.com/KhronosGroup/glTF/tree/2.0/extensions/Khronos/KHR_materials_pbrSpecularGlossiness
- */
- export declare class PBRSpecularGlossinessMaterial extends PBRBaseSimpleMaterial {
- /**
- * Specifies the diffuse color of the material.
- */
- diffuseColor: Color3;
- /**
- * Specifies the diffuse texture of the material. This can also contains the opacity value in its alpha
- * channel.
- */
- diffuseTexture: Nullable<BaseTexture>;
- /**
- * Specifies the specular color of the material. This indicates how reflective is the material (none to mirror).
- */
- specularColor: Color3;
- /**
- * Specifies the glossiness of the material. This indicates "how sharp is the reflection".
- */
- glossiness: number;
- /**
- * Specifies both the specular color RGB and the glossiness A of the material per pixels.
- */
- specularGlossinessTexture: Nullable<BaseTexture>;
- /**
- * Specifies if the reflectivity texture contains the glossiness information in its alpha channel.
- */
- get useMicroSurfaceFromReflectivityMapAlpha(): boolean;
- /**
- * Instantiates a new PBRSpecularGlossinessMaterial instance.
- *
- * @param name The material name
- * @param scene The scene the material will be use in.
- */
- constructor(name: string, scene?: Scene);
- /**
- * @returns the current class name of the material.
- */
- getClassName(): string;
- /**
- * Makes a duplicate of the current material.
- * @param name - name to use for the new material.
- * @returns cloned material instance
- */
- clone(name: string): PBRSpecularGlossinessMaterial;
- /**
- * Serialize the material to a parsable JSON object.
- * @returns the JSON object
- */
- serialize(): any;
- /**
- * Parses a JSON object corresponding to the serialize function.
- * @param source - JSON source object.
- * @param scene - the scene to parse to.
- * @param rootUrl - root url of the assets.
- * @returns a new PBRSpecularGlossinessMaterial.
- */
- static Parse(source: any, scene: Scene, rootUrl: string): PBRSpecularGlossinessMaterial;
- }
|