MaterialMeshStandardMaterial

MeshPhysicalMaterial

An extension of the MeshStandardMaterial, providing more advanced physically-based rendering properties:

As a result of these complex shading features, MeshPhysicalMaterial has a higher performance cost, per pixel, than other Verge3D materials. Most effects are disabled by default, and add cost as they are enabled. For best results, always specify an environment map when using this material.

Examples

materials / variations / physical
materials / physical / clearcoat
materials / physical / reflectivity
loader / gltf / sheen
materials / physical / transmission

Constructor

MeshPhysicalMaterial(parameters : Object)

parameters — (optional) an object with one or more properties defining the material's appearance. Any property of the material (including any property inherited from Material and MeshStandardMaterial) can be passed in here.

The exception is the property color, which can be passed in as a hexadecimal string and is 0xffffff (white) by default. Color.set(color) is called internally.

Instead of creating physical materials with JavaScript, it can be more efficient to simply make such materials in Blender, 3ds Max, or Maya.

Properties

See the base Material and MeshStandardMaterial classes for common properties.

.attenuationColor : Color

The color that white light turns into due to absorption when reaching the attenuation distance. Default is white (0xffffff).

.attenuationDistance : Float

Density of the medium given as the average distance that light travels in the medium before interacting with a particle. The value is given in world space units, and must be greater than zero. Default is Infinity.

.clearcoat : Float

Represents the intensity of the clear coat layer, from 0.0 to 1.0. Use clear coat related properties to enable multilayer materials that have a thin translucent layer over the base layer. Default is 0.0.

.clearcoatMap : Texture

The red channel of this texture is multiplied against .clearcoat, for per-pixel control over a coating's intensity. Default is null.

.clearcoatNormalMap : Texture

Can be used to enable independent normals for the clear coat layer. Default is null.

.clearcoatNormalScale : Vector2

How much .clearcoatNormalMap affects the clear coat layer, from (0,0) to (1,1). Default is (1,1).

.clearcoatRoughness : Float

Roughness of the clear coat layer, from 0.0 to 1.0. Default is 0.0.

.clearcoatRoughnessMap : Texture

The green channel of this texture is multiplied against .clearcoatRoughness, for per-pixel control over a coating's roughness. Default is null.

.defines : Object

An object of the form:

{ 'STANDARD': '' 'PHYSICAL': '', };

This is used by the WebGLRenderer for selecting shaders.

.ior : Float

Index-of-refraction for non-metallic materials, from 1.0 to 2.333. Default is 1.5.

.reflectivity : Float

Degree of reflectivity, from 0.0 to 1.0. Default is 0.5, which corresponds to an index-of-refraction of 1.5.
This models the reflectivity of non-metallic materials. It has no effect when metalness is 1.0

.sheen : Float

The intensity of the sheen layer, from 0.0 to 1.0. Default is 0.0.

.sheenRoughness : Float

Roughness of the sheen layer, from 0.0 to 1.0. Default is 1.0.

.sheenRoughnessMap : Texture

The alpha channel of this texture is multiplied against .sheenRoughness, for per-pixel control over sheen roughness. Default is null.

.sheenColor : Color

The sheen tint. Default is 0xffffff, white.

.sheenColorMap : Texture

The RGB channels of this texture are multiplied against .sheenColor, for per-pixel control over sheen tint. Default is null.

.specularIntensity : Float

A float that scales the amount of specular reflection for non-metals only. When set to zero, the model is effectively Lambertian. From 0.0 to 1.0. Default is 0.0.

.specularIntensityMap : Texture

The alpha channel of this texture is multiplied against .specularIntensity, for per-pixel control over specular intensity. Default is null.

.specularColor : Color

A Color that tints the specular reflection at normal incidence for non-metals only. Default is 0xffffff, white.

.specularColorMap : Texture

The RGB channels of this texture are multiplied against .specularColor, for per-pixel control over specular color. Default is null.

.thickness : Float

The thickness of the volume beneath the surface. The value is given in the coordinate space of the mesh. If the value is 0 the material is thin-walled. Otherwise the material is a volume boundary. Default is 0.

.thicknessMap : Texture

A texture that defines the thickness, stored in the G channel. This will be multiplied by .thickness. Default is null.

.transmission : Float

Degree of transmission (or optical transparency), from 0.0 to 1.0. Default is 0.0.
Thin, transparent or semitransparent, plastic or glass materials remain largely reflective even if they are fully transmissive. The transmission property can be used to model these materials.
When transmission is non-zero, opacity should be set to 0.

.transmissionMap : Texture

The red channel of this texture is multiplied against .transmission, for per-pixel control over optical transparency. Default is null.

Methods

See the base Material and MeshStandardMaterial classes for common methods.

Source

For more info on how to obtain the source code of this module see this page.