Une extension du [page:MeshStandardMaterial], qui prodigue des propriétés de rendu plus avancées basées sur des modèles physiques :
En raison de ces fonctionnalités d'ombrage complexes, MeshPhysicalMaterial a un coût de performance par pixel plus élevée que les autres matériaux three.js. La plupart des effets sont désactivés par défaut et ajoutent un coût lorsqu'ils sont activés. Pour de meilleurs résultats, spécifiez toujours une carte d'environnement [page:.envMap] lors de l'utilisation de ce matériel.
[example:webgl_materials_physical_clearcoat materials / physical / clearcoat]
[example:webgl_loader_gltf_sheen loader / gltf / sheen]
[example:webgl_materials_physical_transmission materials / physical / transmission]
[page:Object parameters] - (optionnel) un objet avec une ou plusieurs propriétés définissant l'apparence du matériau.
Toute propriété du matériau (incluant toute propriété héritée de [page:Material] ou [page:MeshStandardMaterial]) peut être passée dans l'objet.
L'exception est la propriété [page:Hexadecimal color],qui peut être passée avec une chaîne de caractères hexadécimale, définie à `0xffffff` (blanc) par défaut. [page:Color.set]( color ) est appelée en interne.
Voir la classe [page:Material] and [page:MeshStandardMaterial] classes for common properties.
La couleur dans laquelle la lumière blanche se transforme en raison de l'absorption lorsqu'elle atteint la distance d'atténuation. La valeur par défaut est `blanc` (0xffffff).
Densité du milieu donnée comme la distance moyenne parcourue par la lumière dans le milieu avant d'interagir avec une particule. La valeur est exprimée en unités spatiales mondiales et doit être supérieure à zéro. La valeur par défaut est `Infinity`.
Représente l'intensité de la couche transparente, de '0.0' à '1.0'. Utiliser les propriétés liées à la couche transparente pour activer le multicouche matériaux qui ont une fine couche translucide sur la couche de base. La valeur par défaut est `0.0`.
Le canal rouge de cette texture est multiplié par [page:.clearcoat], pour un contrôle par pixel sur l'intensité d'un revêtement. La valeur par défaut est "null".
Peut être utilisé pour activer des normales indépendantes pour la couche de revêtement transparente. La valeur par défaut est `null`.
De combien [page:.clearcoatNormalMap] affecte la couche transparente, de `(0,0)` à `(1,1)`. La valeur par défaut est `(1,1)`.
Rugosité de la couche transparente, de `0.0` à `1.0`. La valeur par défaut est `0.0`.
Le canal vert de cette texture est multiplié par [page:.clearcoatRoughness], pour un contrôle par pixel sur la rugosité d'un revêtement. La valeur par défaut est `null`.
Un objet de la forme :
{
'STANDARD': ''
'PHYSICAL': '',
};
Est utilisé par [page:WebGLRenderer] pour sélectionner les shaders.
Defines the strength of the angular separation of colors (chromatic aberration) transmitting through a relatively clear volume. Any value zero or larger is valid, the typical range of realistic values is `[0, 1]`. Default is `0` (no dispersion). This property can be only be used with transmissive objects, see [page:.transmission].
Indice de réfraction pour les matériaux non métalliques, de "1,0" à "2,333". La valeur par défaut est `1.5`.
Degré de réflectivité, de '0.0' à '1.0'. La valeur par défaut est `0.5`, ce qui correspond à un indice de réfraction de 1,5.
This models the reflectivity of non-metallic materials. It has no effect when [page:MeshStandardMaterial.metalness metalness] is `1.0`.
Intensité de la couche de brillance, de '0.0' à '1.0'. La valeur par défaut est `0.0`.
Rugosité de la couche de brillance, de '0.0' à '1.0'. La valeur par défaut est `1.0`.
Le canal alpha de cette texture est multiplié par [page:.sheen Roughness], pour un contrôle par pixel sur la rugosité de la brillance. La valeur par défaut est `null`.
La teinte brillante. La valeur par défaut est `0x000000`, noire.
Les canaux RVB de cette texture sont multipliés par [page:.sheenColor], pour un contrôle par pixel sur la teinte brillante. La valeur par défaut est `null`.
Un float qui met à l'échelle la quantité de réflexion spéculaire pour les non-métaux uniquement. Lorsqu'il est défini sur zéro, le modèle est effectivement lambertien. De `0.0` à `1.0`. La valeur par défaut est `1.0`.
Le canal alpha de cette texture est multiplié par [page:.specularIntensity], pour un contrôle par pixel sur l'intensité spéculaire. La valeur par défaut est `null`.
Une [page:Couleur] qui teinte la réflexion spéculaire à une incidence normale pour les non-métaux uniquement. La valeur par défaut est `0xffffff`, blanc.
Les canaux RVB de cette texture sont multipliés par rapport à [page:.specularColor], pour un contrôle par pixel sur la couleur spéculaire. La valeur par défaut est `null`.
L'épaisseur du volume sous la surface. La valeur est donnée dans l'espace de coordonnées du maillage. Si la valeur est 0, le matériau est à paroi mince. Sinon, le matériau est une limite de volume. La valeur par défaut est `0`.
Une texture qui définit l'épaisseur, stockée dans le canal G. Cela sera multiplié par [page:.thickness]. La valeur par défaut est `null`.
Degré de transmission (ou transparence optique), de '0.0' à '1.0'. La valeur par défaut est `0.0`.
Les matériaux minces, transparents ou semi-transparents, en plastique ou en verre restent largement réfléchissants même s'ils sont totalement transmissifs.
La propriété de transmission peut être utilisée pour modéliser ces matériaux.
Lorsque la transmission est différente de zéro, [page:Material.opacity opacity] doit être défini sur `1`.
Le canal rouge de cette texture est multiplié par [page:.transmission], pour un contrôle par pixel sur la transparence optique. La valeur par défaut est `null`.
Voir la classe [page:Material] and [page:MeshStandardMaterial] pour les méthodes communes.
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]