[page:Material] → [page:MeshStandardMaterial] →

[name]

An extension of the [page:MeshStandardMaterial] that allows for greater control over reflectivity.

Note that for best results you should always specify an [page:.envMap environment map] when using this material.

Examples

[example:webgl_materials_variations_physical materials / variations / physical]
[example:webgl_materials_reflectivity materials / reflectivity]

Constructor

[name]( [param:Object parameters] )

[page: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 [page:Material] and [page:MeshStandardMaterial]) can be passed in here.

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

Properties

See the base [page:Material] and [page:MeshStandardMaterial] classes for common properties.

[property:Float clearcoat]

Clearcoat level, from *0.0* to *1.0*. Default is *0.0*.

[property:Float clearcoatRoughness]

How rough the clearcoat appears, from *0.0* to *1.0*. Default is *0.0*.

[property:Boolean isMeshPhysicalMaterial]

Used to check whether this or derived classes are mesh physical materials. Default is *true*.

You should not change this, as it used internally for optimisation.

[property:Object defines]

An object of the form: { 'STANDARD': '' 'PHYSICAL': '', }; This is used by the [page:WebGLRenderer] for selecting shaders.

[property:Float reflectivity]

Degree of reflectivity, from *0.0* to *1.0*. Default is *0.5*.
This models the reflectivity of non-metallic materials. It has no effect when [page:MeshStandardMaterial.metalness metalness] is *1.0*

Methods

See the base [page:Material] and [page:MeshStandardMaterial] classes for common methods.

Source

[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]