RSX Code Reference
    Preparing search index...
    • rsx
    • SurfacePBRMaterialModel

    Class SurfacePBRMaterialModel

    Material model used for physically based rendering of surfaces through principled BRDF.

    Hierarchy (View Summary)

    Index
    • get ambientOcclusion(): Texture

      Determines the ambient occlusion value.

      Returns Texture

    • set ambientOcclusion(value: Texture): void

      Determines the ambient occlusion value.

      Parameters

      Returns void

    • get coatingIOR(): number

      The IOR (index of refraction) defines the refractive behavior of the material. The coating IOR is used to calculate the reflection intensity of the surface taking into account the viewing angle and material refraction index, as per Fresnel�s theory. The input Type for this parameter is normally a value from 1 to 3. The default IOR value is 1.5, which is the same as the glass refraction index.

      Returns number

    • set coatingIOR(value: number): void

      Parameters

      • value: number

      Returns void

    • get coatingNormalTexture(): Texture

      The coating normal defines what normal map will be used by the coating layer of the material. The normal coating can be used to simulate scratches, paint scuffs and irregularities on the top coating layer or achieve a convincing worn-out effect.

      Returns Texture

    • set coatingNormalTexture(value: Texture): void

      The coating normal defines what normal map will be used by the coating layer of the material. The normal coating can be used to simulate scratches, paint scuffs and irregularities on the top coating layer or achieve a convincing worn-out effect.

      Parameters

      Returns void

    • get coatingRoughness(): number

      The coating roughness defines the glossiness of the coating layer. Coating with zero roughness means a perfectly smooth surface with sharp and crisp specular reflections. Increasing the roughness values results in a more matte and rough appearance with dimmer and more blurry reflections. With high roughness values, the light is scattered in more directions, and the surface properties are closer to diffuse.

      Returns number

    • set coatingRoughness(value: number): void

      Parameters

      • value: number

      Returns void

    • get coatingThickness(): number

      The coating thickness defines how thick the coating layer is. This parameter is used in combination with the coating transmission color. The thicker the coating, the more saturated is the transmission color in the coating layer, and less light is allowed down to the layer underneath.

      The input type for this parameter is a numeric value. The soft range is from 0 to 10, but you can use a value greater than 10. The default thickness value of 0 disables the transmission color.

      Returns number

    • set coatingThickness(value: number): void

      Parameters

      • value: number

      Returns void

    • get coatingTransmissionColor(): Immutable<SRGBColor>

      The coating transmission color defines the color of the light that travels through the coating layer. The transmission color allows simulation of the tint of the coating, for example, a yellowish tint to varnish on furniture.

      Overlaid on top of another color, tinted coating changes the color of the base material. It absorbs certain colors and reflects others acting as a color filter. The resulting color is a mixture of the transmission color and the color of the layer underneath. A white transmission color does not change the color of the base material.

      Returns Immutable<SRGBColor>

    • set coatingTransmissionColor(value: Immutable<SRGBColor>): void

      Parameters

      Returns void

    • get coatingWeight(): number

      The coating weight is a scaling factor that defines how coating parameters contribute to the overall appearance of the material. Smaller coating weight values produce less reflections on the material surface, while greater values amplify coating properties. In range [0, 1]. Set to 0 to disable coating.

      Returns number

    • set coatingWeight(value: number): void

      Parameters

      • value: number

      Returns void

    • get coneStepHeightTensor(): number

      Works specially well for maps with radical height changes. Works for the Relaxed cone step only.

      Returns number

    • set coneStepHeightTensor(value: number): void

      Parameters

      • value: number

      Returns void

    • get displacementHeight(): number

      The height amount factor the parallax is meant to be displaced.

      Returns number

    • set displacementHeight(value: number): void

      Parameters

      • value: number

      Returns void

    • get displacementMinMax(): Immutable<Vector2>

      The Displacement Min/Max parameters control the displacement scale, i. e. the distance by which the geometry should be displaced. These minimum and maximum values correspond to the black and white colors of the grayscale displacement map. The minimum value controls the displacement scale for the black color, while the maximum value controls it for the white color.

      The displacement distance is automatically adjusted to the scene measurement units. The input type for this parameter is a numeric value equal to or greater than 0. Note that the input cannot be a negative value, that is, displacement is done in the outward direction only (extrusion).

      Returns Immutable<Vector2>

    • set displacementMinMax(value: Immutable<Vector2>): void

      Parameters

      Returns void

    • get displacementQuality(): number

      The quality of displacement, controls the number of steps of the searching ray.

      Returns number

    • set displacementQuality(value: number): void

      Parameters

      • value: number

      Returns void

    • get displacementTexture(): Texture

      Gray-scale map that controls displacement height over the material surface.

      Returns Texture

    • set displacementTexture(value: Texture): void

      Gray-scale map that controls displacement height over the material surface.

      Parameters

      Returns void

    • get emissiveWeight(): number

      Controls the strength of the emitted light. This will be multiplied with to yield the luminance. Set to zero to disable emission.

      Returns number

    • set emissiveWeight(value: number): void

      Parameters

      • value: number

      Returns void

    • get foliageTranslucency(): number

      The foliage translucency controls the amount of light being transmitted by a surface. A thick object would have a lower translucency than a thin, paper-like object.

      Returns number

      Rasterizer only.

    • set foliageTranslucency(value: number): void

      Parameters

      • value: number

      Returns void

    • get foliageTransmissiveColor(): Immutable<SRGBColor>

      The color of the transmissive light that passes through the surface. The base color of the surface is modulated by this color, to allow surfaces to add a tint or hue change to the foliage light transmission.

      Returns Immutable<SRGBColor>

    • set foliageTransmissiveColor(value: Immutable<SRGBColor>): void

      Parameters

      Returns void

    • get isNormalTextureObjectSpace(): boolean

      Sets flag indicating that material normals are in object space.

      Returns boolean

    • set isNormalTextureObjectSpace(value: boolean): void

      Parameters

      • value: boolean

      Returns void

    • get isOpacityMasked(): boolean

      Sets a flag indicating that the material is rendered alpha masked.

      Returns boolean

    • set isOpacityMasked(value: boolean): void

      Parameters

      • value: boolean

      Returns void

    • get normalTexture(): Texture

      Provides surface normals to the underlying geometry. This simulates surface relief or fine details such as grooves, bumps or scratches, without actually changing the object's geometry.

      Returns Texture

    • set normalTexture(value: Texture): void

      Provides surface normals to the underlying geometry. This simulates surface relief or fine details such as grooves, bumps or scratches, without actually changing the object's geometry.

      Parameters

      Returns void

    • get opacityThreshold(): number

      Determines the opacity threshold at which the object starts being treated as opaque for shadow and masked rendering.

      Returns number

    • set opacityThreshold(value: number): void

      Parameters

      • value: number

      Returns void

    • get reflectionAnisotropy(): number

      Sets the level of anisotropy. A value of 0 is used for a fully isotropic reflection while values from -1 to 1 give a range of ellipses from wide to tall.

      Returns number

    • set reflectionAnisotropy(value: number): void

      Parameters

      • value: number

      Returns void

    • get reflectionAnisotropyRotation(): rsx.Radian

      Controls the orientation of the anisotropic specular highlight. This rotates the cone of reflection around UV. This rotation is represented in radians and must be in range [0, 1].

      Returns rsx.Radian

    • set reflectionAnisotropyRotation(value: rsx.Radian): void

      Parameters

      Returns void

    • get refractionIOR(): number

      The index of refraction(IOR) defines the degree to which the light ray traveling through the material will be bent or refracted. The IOR of the empty space(air or vacuum) is taken as 1, which means no refraction. At IOR of 1, the light ray passes straight through the scene. Increasing the material IOR makes the light ray bend on the boundary of the material, and results in distortion of objects at the material�s background. The input Type for this parameter is normally a value from 1 to 3. The default IOR is 1.5, which corresponds to glass. For IOR values of other materials, use online resources such as thisIOR List

      Returns number

    • set refractionIOR(value: number): void

      Parameters

      • value: number

      Returns void

    • get refractionWeight(): number

      The refraction weight is a scaling factor that defines how refraction parameters contribute to the overall appearance of the material. A lower refraction weight makes the material look darker allowing less light through. Greater values make the color look brighter and the material more transparent. This value is in range [0, 1]. Set to 0 to disable refraction.

      Returns number

    • set refractionWeight(value: number): void

      Parameters

      • value: number

      Returns void

    • Higher roughness values add tiny irregularities and imperfections at the micro-surface level. In range [0, 1].

      For dieletric (non-metallic) materials greater roughness values make the material look more matte and help mimic surfaces like concrete, plaster or rust. Lower roughness values are suitable for smoother, satin-like surfaces.

      For metallic materials lower roughness results in sharper reflections. A value of 0 creates a perfectly sharp mirror reflection, while 1 results in reflections that are close to a diffuse reflection.

      Returns Immutable<FloatTextureProperty>

    • set roughness(
          value:
              | number
              | ResourceHandle<Texture>
              | Immutable<FloatTextureProperty>,
      ): void

      Parameters

      Returns void

    • get sheenTint(): number

      The sheen tint controls the saturation level of the sheen color. The renderer multiplies the sheen color by the tint value to determine how intense the color should be. Greater values of tint result in richer and more saturate tint colors.

      Returns number

    • set sheenTint(value: number): void

      Parameters

      • value: number

      Returns void

    • get sheenWeight(): number

      The sheen weight is a scaling factor that defines how sheen parameters contribute to the overall appearance of the material. The weight parameter determines how strong the sheen reflectance will be. The greatest intensity of the sheen is achieved with the highest weight values. In range [0, 1]. Set to 0 to disable sheen.

      Returns number

    • set sheenWeight(value: number): void

      Parameters

      • value: number

      Returns void

    • get subsurfaceProfileId(): number

      The subsurface radius parameter defines how far a color will scatter from a place that was hit by a light ray. The subsurface radius is the distance that the light of a certain color can travel in the material.The greater the value, the further the light is dispersed.

      Radius values can be set separately for the red, green and blue color channels.For example, in skin, the red color scatters deeper than blue and green, so its radius should be set to a greater value .Having the greatest radius value, red will be the predominating color in the perceived scattering color of the skin.

      Typical values(in mm) of the subsurface radius for some translucent materials for red / green / blue respectively range from 4.76 / 0.58 / 0.39 for ketchup and 3.67 / 1.37 / 0.68 for skin to 6.96 / 6.40 / 1.90 for apple and 18.42 / 10.44 / 3.50 for skimmed milk [Jensen et al., 2001].

      Returns number

      Rasterizer only.

    • set subsurfaceProfileId(value: number): void

      Parameters

      • value: number

      Returns void

    • get subsurfaceScale(): number

      The subsurface scale is the measure of the subsurface model scaled in centimeters(cm), i.e. a value of 100 would mean the object scale is measured cubically as 1 meter long for every axis.

      Returns number

      Rasterizer only.

    • set subsurfaceScale(value: number): void

      Parameters

      • value: number

      Returns void

    • get subsurfaceScatteringRadius(): Immutable<Vector3>

      The subsurface radius parameter defines how far a color will scatter from a place that was hit by a light ray. The subsurface radius is the distance that the light of a certain color can travel in the material.The greater the value, the further the light is dispersed.

      Radius values can be set separately for the red, green and blue color channels.For example, in skin, the red color scatters deeper than blue and green, so its radius should be set to a greater value .Having the greatest radius value, red will be the predominating color in the perceived scattering color of the skin.

      Typical values(in mm) of the subsurface radius for some translucent materials for red / green / blue respectively range from 4.76 / 0.58 / 0.39 for ketchup and 3.67 / 1.37 / 0.68 for skin to 6.96 / 6.40 / 1.90 for apple and 18.42 / 10.44 / 3.50 for skimmed milk [Jensen et al., 2001].

      Returns Immutable<Vector3>

      Rasterizer only.

    • set subsurfaceScatteringRadius(value: Immutable<Vector3>): void

      Parameters

      Returns void

    • get subsurfaceThickness(): number

      The subsurface thickness is a measure that handles the amount of light that can traverse a surface from its lighten back face to the occluded front face.

      Returns number

      Rasterizer only.

    • set subsurfaceThickness(value: number): void

      Parameters

      • value: number

      Returns void

    • get subsurfaceTranslucency(): number

      The subsurface translucency is a measure that handles the amount of light being transmitted by a surface.

      Returns number

      Rasterizer only.

    • set subsurfaceTranslucency(value: number): void

      Parameters

      • value: number

      Returns void

    • get subsurfaceTranslucencyThickness(): Texture

      A texture type that represents both subsurfaceTranslucency and subsurfaceThickness.

      Returns Texture

    • set subsurfaceTranslucencyThickness(value: Texture): void

      A texture type that represents both subsurfaceTranslucency and subsurfaceThickness.

      Parameters

      Returns void

    • get subsurfaceWeight(): number

      The subsurface weight is the multiplier of the SSS effect, i.e.the scaling factor which defines how the SSS contributes to the overall appearance of the material.Greater weight values produce a more intense subsurface scattering with a more apparent color bleeding effect. This value is in range [0, 1]. Set to zero to disable refraction.

      Returns number

    • set subsurfaceWeight(value: number): void

      Parameters

      • value: number

      Returns void

    • get uvTile(): Immutable<Vector2>

      Controls the tiling of the material in the UV space. The UV offset value will be used to calcuate the final UV value in the form [UV = Geometry.UV * UVTile + UVOffset]

      Returns Immutable<Vector2>

    • set uvTile(value: Immutable<Vector2>): void

      Parameters

      Returns void