1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
|
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<base href="../../../" />
<script src="list.js"></script>
<script src="page.js"></script>
<link type="text/css" rel="stylesheet" href="page.css" />
</head>
<body>
[page:Material] → [page:MeshStandardMaterial] →
<h1>[name]</h1>
<p class="desc">
An extension of the [page:MeshStandardMaterial] that allows for greater control over reflectivity.<br /><br />
Note that for best results you should always specify an [page:.envMap environment map] when using this material.
</p>
<iframe id="scene" src="scenes/material-browser.html#MeshPhysicalMaterial"></iframe>
<script>
// iOS iframe auto-resize workaround
if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
var scene = document.getElementById( 'scene' );
scene.style.width = getComputedStyle( scene ).width;
scene.style.height = getComputedStyle( scene ).height;
scene.setAttribute( 'scrolling', 'no' );
}
</script>
<h2>Examples</h2>
[example:webgl_materials_variations_physical materials / variations / physical]<br />
[example:webgl_materials_reflectivity materials / reflectivity]
<h2>Constructor</h2>
<h3>[name]( [param:Object parameters] )</h3>
<p>
[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.<br /><br />
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.
</p>
<h2>Properties</h2>
<p>See the base [page:Material] and [page:MeshStandardMaterial] classes for common properties.</p>
<h3>[property:Float clearcoat]</h3>
<p>
Clearcoat level, from *0.0* to *1.0*. Default is *0.0*.
</p>
<h3>[property:Float clearcoatRoughness]</h3>
<p>How rough the clearcoat appears, from *0.0* to *1.0*. Default is *0.0*.</p>
<h3>[property:Boolean isMeshPhysicalMaterial]</h3>
<p>
Used to check whether this or derived classes are mesh physical materials. Default is *true*.<br /><br />
You should not change this, as it used internally for optimisation.
</p>
<h3>[property:Object defines]</h3>
<p>An object of the form:
<code>
{
'STANDARD': ''
'PHYSICAL': '',
};
</code>
This is used by the [page:WebGLRenderer] for selecting shaders.
</p>
<h3>[property:Float reflectivity]</h3>
<p>
Degree of reflectivity, from *0.0* to *1.0*. Default is *0.5*.<br />
This models the reflectivity of non-metallic materials. It has no effect when [page:MeshStandardMaterial.metalness metalness] is *1.0*
</p>
<h2>Methods</h2>
<p>See the base [page:Material] and [page:MeshStandardMaterial] classes for common methods.</p>
<h2>Source</h2>
<p>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</p>
</body>
</html>
|