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

物理网格材质([name])

[page:MeshStandardMaterial]的扩展,提供了更高级的基于物理的渲染属性:

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

例子

[example:webgl_materials_variations_physical materials / variations / physical]
[example:webgl_materials_physical_clearcoat materials / physical / clearcoat]
[example:webgl_materials_physical_reflectivity materials / physical / reflectivity]
[example:webgl_materials_physical_transmission materials / physical / transmission]

构造函数(Constructor)

[name]( [param:Object parameters] )

[page:Object parameters] - (可选)用于定义材质外观的对象,具有一个或多个属性。 材质的任何属性都可以从此处传入(包括从[page:Material]和[page:MeshStandardMaterial]继承的任何属性)

属性[page:Hexadecimal color]例外,其可以作为十六进制字符串传递,默认情况下为 *0xffffff*(白色),内部调用[page:Color.set](color)。

属性(Properties)

共有属性请参见其基类[page:Material]和[page:MeshStandardMaterial]。

[property:Float clearcoat]

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*.

[property:Texture clearcoatMap]

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

[property:Texture clearcoatNormalMap]

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

[property:Vector2 clearcoatNormalScale]

How much [page:.clearcoatNormalMap] affects the clear coat layer, from *(0,0)* to *(1,1)*. Default is *(1,1)*.

[property:Float clearcoatRoughness]

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

[property:Texture clearcoatRoughnessMap]

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

[property:Object defines]

如下形式的对象: { 'STANDARD': '' 'PHYSICAL': '', }; [page:WebGLRenderer]使用它来选择shaders。

[property:Float ior]

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

[property:Float reflectivity]

Degree of reflectivity, from *0.0* to *1.0*. Default is *0.5*, which corresponds to an index-of-refraction of 1.5.
这模拟了非金属材质的反射率。当[page:MeshStandardMaterial]为*1.0*时,此属性无效。

[property:Float sheen]

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

[property:Float sheenRoughness]

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

[property:Texture sheenRoughnessMap]

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

[property:Color sheenColor]

The sheen tint. Default is *0xffffff*, white.

[property:Texture sheenColorMap]

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

[property:Float transmission]

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, [page:Material.opacity opacity] should be set to *1*.

[property:Texture transmissionMap]

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

方法(Methods)

共有方法请参见其基类[page:Material] 和[page:MeshStandardMaterial]。

源码(Source)

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