Defines specular reflectivity on a PBR Material. See KHRMaterialsSpecular.

Hierarchy

  • ExtensionProperty<ISpecular>
    • Specular

Properties

parentTypes: [MATERIAL]
propertyType: "Specular"

Methods

  • Makes a copy of this property, with the same resources (by reference) as the original.

  • copy(other: Specular, resolve?: PropertyResolver<Property<IProperty>>): Specular
  • Copies all data from another property to this one. Child properties are copied by reference, unless a 'resolve' function is given to override that.

  • dispatchEvent(event: BaseEvent): Specular
  • Events.

  • dispose(): void
  • Removes both inbound references to and outbound references from this object. At the end of the process the object holds no references, and nothing holds references to it. A disposed object is not reusable.

  • equals(other: Specular, skip?: Set<string>): boolean
  • Returns true if two properties are deeply equivalent, recursively comparing the attributes of the properties. Optionally, a 'skip' set may be included, specifying attributes whose values should not be considered in the comparison.

    Example: Two Primitives are equivalent if they have accessors and materials with equivalent content — but not necessarily the same specific accessors and materials.

  • getDefaults(): Nullable<ISpecular>
  • getExtras(): Record<string, unknown>
  • Returns a reference to the Extras object, containing application-specific data for this Property. Extras should be an Object, not a primitive value, for best portability.

  • getName(): string
  • Returns the name of this property. While names are not required to be unique, this is encouraged, and non-unique names will be overwritten in some tools. For custom data about a property, prefer to use Extras.

  • getSpecularColorFactor(): vec3
  • getSpecularColorHex(): number
  • getSpecularColorTexture(): Texture
  • Specular color texture; linear multiplier. Defines the F0 color of the specular reflection (RGB channels, encoded in sRGB) in the the dielectric BRDF.

    Only RGB channels are used here, but this texture may optionally be packed with a specular factor (A) into a single texture.

  • getSpecularColorTextureInfo(): TextureInfo
  • getSpecularFactor(): number
  • getSpecularTexture(): Texture
  • Specular texture; linear multiplier. Configures the strength of the specular reflection in the dielectric BRDF. A value of zero disables the specular reflection, resulting in a pure diffuse material.

    Only the alpha (A) channel is used for specular strength, but this texture may optionally be packed with specular color (RGB) into a single texture.

  • getSpecularTextureInfo(): TextureInfo
  • init(): void
  • isDisposed(): boolean
  • Returns true if the node has been permanently removed from the graph.

  • listParents(): Property<IProperty>[]
  • Returns a list of all properties that hold a reference to this property. For example, a material may hold references to various textures, but a texture does not hold references to the materials that use it.

    It is often necessary to filter the results for a particular type: some resources, like Accessors, may be referenced by different types of properties. Most properties include the Root as a parent, which is usually not of interest.

    Usage:

    const materials = texture
        .listParents()
        .filter((p) => p instanceof Material)
    
  • setExtras(extras: Record<string, unknown>): Specular
  • Updates the Extras object, containing application-specific data for this Property. Extras should be an Object, not a primitive value, for best portability.

  • Sets the name of this property. While names are not required to be unique, this is encouraged, and non-unique names will be overwritten in some tools. For custom data about a property, prefer to use Extras.

  • setSpecularColorFactor(factor: vec3): Specular
  • setSpecularColorHex(hex: number): Specular
  • setSpecularColorTexture(texture: Texture): Specular
  • setSpecularFactor(factor: number): Specular
  • setSpecularTexture(texture: Texture): Specular
Function symbol, f(📦) → 📦, where the argument and output are a box labeled 'glTF'.

Made by Don McCurdy • TypeDoc documentation • Copyright 2023, MIT license