MeshLambertMaterial.html 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229
  1. <!DOCTYPE html>
  2. <html lang="fr">
  3. <head>
  4. <meta charset="utf-8" />
  5. <base href="../../../" />
  6. <script src="page.js"></script>
  7. <link type="text/css" rel="stylesheet" href="page.css" />
  8. </head>
  9. <body>
  10. [page:Material] &rarr;
  11. <h1>[name]</h1>
  12. <p class="desc">
  13. Un matériau pour surfaces non brillantes, sans reflets spéculaires.<br /><br />
  14. Le matériau utilise un modèle [link:https://en.wikipedia.org/wiki/Lambertian_reflectance Lambertien] non basé sur la physique
  15. pour calculer la réflectance. Il peut simuler certaines surfaces (comme le bois non traité ou la pierre),
  16. mais ne peut pas simuler des surfaces brillantes avec des reflets spéculaires (comme le bois verni). [name] utilise un ombrage par fragment.<br /><br />
  17. En raison de la simplicité des modèles de réflectance et d'éclairage, les performances seront supérieures
  18. lors de l'utilisation de ce matériau par rapport au [page:MeshPhongMaterial], [page:MeshStandardMaterial] ou [page:MeshPhysicalMaterial],
  19. au prix d'une certaine précision graphique.
  20. </p>
  21. <iframe id="scene" src="scenes/material-browser.html#MeshLambertMaterial"></iframe>
  22. <script>
  23. // iOS iframe auto-resize workaround
  24. if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
  25. const scene = document.getElementById( 'scene' );
  26. scene.style.width = getComputedStyle( scene ).width;
  27. scene.style.height = getComputedStyle( scene ).height;
  28. scene.setAttribute( 'scrolling', 'no' );
  29. }
  30. </script>
  31. <h2>Constructeur</h2>
  32. <h3>[name]( [param:Object parameters] )</h3>
  33. <p>
  34. [page:Object parameters] - (optionnel) un objet avec une ou plusieurs propriétés définissant l'apparence du matériau.
  35. Toute propriété du matériau (y compris toute proprioété héritée de [page:Material]) peut être passée dans l'objet.<br /><br />
  36. L'exception est la propriété [page:Hexadecimal color], qui peut être passée comme une chaine de caractères hexadécimale,
  37. ayant la valeur `0xffffff` (blanc) par défaut. [page:Color.set]( color ) est appelée en interne.
  38. </p>
  39. <h2>Propriétés</h2>
  40. <p>Voir la classe [page:Material] pour les propriétés communes.</p>
  41. <h3>[property:Texture alphaMap]</h3>
  42. <p>La carte alpha est une texture en niveaux de gris qui contrôle l'opacité sur la surface
  43. (noir : entièrement transparent ; blanc : entièrement opaque). La valeur par défaut est nulle.<br /><br />
  44. Seule la couleur de la texture est utilisée, en ignorant le canal alpha s'il en existe un.
  45. Pour les textures RGB et RGBA, le moteur de rendu [page:WebGLRenderer WebGL] utilisera le
  46. canal vert lors de l'échantillonnage de cette texture en raison du peu de précision supplémentaire fourni
  47. pour le vert dans les formats RVB 565 compressés DXT et non compressés.
  48. Les textures avec uniquement de la luminance ou les textures luminance/alpha fonctionneront également comme prévu.
  49. </p>
  50. <h3>[property:Texture aoMap]</h3>
  51. <p>Le canal rouge de cette texture est utilisé comme carte d'occlusion ambiante. La valeur par défaut est nulle.
  52. L'aoMap nécessite un deuxième ensemble d'UV.</p>
  53. <h3>[property:Float aoMapIntensity]</h3>
  54. <p>Intensité de l'effet d'occlusion ambiante. La valeur par défaut est 1. Zéro signifie qu'il n'y a pas d'effet d'occlusion.</p>
  55. <h3>[property:Texture bumpMap]</h3>
  56. <p>
  57. La texture pour créer une carte en relief. Les valeurs de noir et blanc correspondent à la profondeur perçue par rapport aux lumières.
  58. Bump n'affecte pas réellement la géométrie de l'objet, seulement l'éclairage. Si une carte normale est définie, cela sera ignoré.
  59. </p>
  60. <h3>[property:Float bumpScale]</h3>
  61. <p>A quel point la texture en relief affecte le matériau. Les plages typiques sont 0-1. La valeur par défaut est 1.</p>
  62. <h3>[property:Color color]</h3>
  63. <p>[page:Color], couleur du matériau, par défaut en blanc (0xffffff).</p>
  64. <h3>[property:Integer combine]</h3>
  65. <p>
  66. Comment combiner le résultat de la couleur de la surface avec la carte d'environnement, le cas échéant.<br /><br />
  67. Les options sont [page:Materials THREE.MultiplyOperation] (par défaut), [page:Materials THREE.MixOperation],
  68. [page :Matériaux TROIS.AddOperation]. Si mix est choisi, la [page:.reflectivity] est utilisée pour
  69. mélanger les deux couleurs.
  70. </p>
  71. <h3>[property:Texture displacementMap]</h3>
  72. <p>
  73. La carte de déplacement affecte la position des sommets du maillage. Contrairement aux autres cartes
  74. qui n'affectent que la lumière et l'ombre du matériau, les sommets déplacés peuvent projeter des ombres,
  75. bloquer d'autres objets et agir autrement comme une géométrie réelle. La texture de déplacement est
  76. une image sur laquelle la valeur de chaque pixel (le blanc étant le plus élevé) est mappée,
  77. et repositionne, les sommets du maillage.
  78. </p>
  79. <h3>[property:Float displacementScale]</h3>
  80. <p>
  81. Dans quelle mesure la carte de déplacement affecte le maillage (où le noir n'est pas un déplacement,
  82. et le blanc est le déplacement maximal). Sans ensemble de cartes de déplacement, cette valeur n'est pas appliquée.
  83. La valeur par défaut est 1.
  84. </p>
  85. <h3>[property:Float displacementBias]</h3>
  86. <p>
  87. Le décalage des valeurs de la carte de déplacement sur les sommets du maillage.
  88. Sans ensemble de cartes de déplacement, cette valeur n'est pas appliquée. La valeur par défaut est 0.
  89. </p>
  90. <h3>[property:Color emissive]</h3>
  91. <p>
  92. Couleur émissive (claire) du matériau, essentiellement une couleur unie non affectée par un autre éclairage.
  93. La valeur par défaut est noire.
  94. </p>
  95. <h3>[property:Texture emissiveMap]</h3>
  96. <p>
  97. Définit la carte émissive (lueur). La valeur par défaut est nulle. La couleur de la carte émissive est modulée par
  98. la couleur émissive et l'intensité émissive. Si vous avez une carte émissive, assurez-vous de
  99. régler la couleur émissive sur autre chose que le noir.
  100. </p>
  101. <h3>[property:Float emissiveIntensity]</h3>
  102. <p>Intensité de la lumière émissive. Module la couleur émissive. La valeur par défaut est 1.</p>
  103. <h3>[property:Texture envMap]</h3>
  104. <p>La carte de l'environnement. La valeur par défaut est nulle.</p>
  105. <h3>[property:Boolean flatShading]</h3>
  106. <p>
  107. Définit si le matériau est rendu avec un ombrage plat. La valeur par défaut est false.
  108. </p>
  109. <h3>[property:Boolean fog]</h3>
  110. <p>Si le matériau est affecté par le brouillard (fog) La valeur par défaut est `true`.</p>
  111. <h3>[property:Texture lightMap]</h3>
  112. <p>La carte des lumières (light map). La valeur par défaut est null. La lightMap nécessite un deuxième ensemble d'UVs.</p>
  113. <h3>[property:Float lightMapIntensity]</h3>
  114. <p>Intensité de la lumière préparée. La valeur par défaut est 1.</p>
  115. <h3>[property:Texture map]</h3>
  116. <p>
  117. La carte des couleurs. Peut éventuellement inclure un canal alpha, généralement combiné avec
  118. [page:Material.transparent .transparent] ou [page:Material.alphaTest .alphaTest]. La valeur par défaut est null.
  119. </p>
  120. <h3>[property:Texture normalMap]</h3>
  121. <p>
  122. La texture pour créer une carte normale. Les valeurs RVB affectent la surface normale pour chaque fragment de pixel et changent
  123. la façon dont la couleur est illuminée. Les cartes normales ne changent pas la forme réelle de la surface, seulement l'éclairage.
  124. Dans le cas où le matériau a une carte normale créée en utilisant la convention "left handed", le composant y de normalScale
  125. devrait être négatif pour compenser les différences de latéralité.
  126. </p>
  127. <h3>[property:Integer normalMapType]</h3>
  128. <p>
  129. Le type de carte d'ombrage.<br /><br />
  130. Les options sont [page:constant THREE.TangentSpaceNormalMap] (par défaut), et [page:constant THREE.ObjectSpaceNormalMap].
  131. </p>
  132. <h3>[property:Vector2 normalScale]</h3>
  133. <p>
  134. A quel point la carte normale affecte le matériau. Les plages typiques sont 0-1.
  135. La valeur par défaut est un [page:Vector2] défini sur (1,1).
  136. </p>
  137. <h3>[property:Float reflectivity]</h3>
  138. <p>A quel point la carte d'environnement affecte la surface ; voir aussi [page:.combine].</p>
  139. <h3>[property:Float refractionRatio]</h3>
  140. <p>
  141. L'indice de réfraction (IOR) de l'air (environ 1) divisé par l'indice de réfraction du matériau.
  142. Il est utilisé avec les modes de mapping d'environnement [page:Textures THREE.CubeRefractionMapping] et [page:Textures THREE.EquirectangularRefractionMapping].
  143. Le rapport de réfraction ne doit pas dépasser 1. La valeur par défaut est `0.98`.
  144. </p>
  145. <h3>[property:Texture specularMap]</h3>
  146. <p>Texture spéculaire utilisée par le matériau. La valeur par défaut est null.</p>
  147. <h3>[property:Boolean wireframe]</h3>
  148. <p>Rendre la géométrie en fil de fer. La valeur par défaut est "false" (c'est-à-dire rendre sous forme de polygones plats).</p>
  149. <h3>[property:String wireframeLinecap]</h3>
  150. <p>
  151. Définit l'apparence de la fin de la ligne. les valeurs possibles sont 'butt', 'round' et 'square'.
  152. La valeur par défaut est 'round'.<br /><br />
  153. Cela correspond à la propriété [link:https://developer.mozilla.org/en/docs/Web/API/CanvasRenderingContext2D/lineCap 2D Canvas lineCap]
  154. et est ignorée par le moteur de rendu [page:WebGLRenderer WebGL].
  155. </p>
  156. <h3>[property:String wireframeLinejoin]</h3>
  157. <p>
  158. Définit l'apparence des jointures de lignes. Les valeurs possibles sont 'round', 'bevel' et 'miter'. La valeur par défaut est 'round'. <br /><br />
  159. Cela correspond à la propriété [link:https://developer.mozilla.org/en/docs/Web/API/CanvasRenderingContext2D/lineJoin 2D Canvas lineJoin]
  160. et est ignorée par le moteur de rendu [page:WebGLRenderer WebGL].
  161. </p>
  162. <h3>[property:Float wireframeLinewidth]</h3>
  163. <p>Contrôle l'épaisseur du filaire. La valeur par défaut est 1.<br /><br />
  164. A cause des limitations de [link:https://www.khronos.org/registry/OpenGL/specs/gl/glspec46.core.pdf OpenGL Core Profile]
  165. avec le moteur de rendu [page:WebGLRenderer WebGL] sur la plupârt des plateformes, l'épaisseur de ligne (linewidth) sera toujours
  166. à 1, indépendamment de la valeur définie.
  167. </p>
  168. <h2>Méthodes</h2>
  169. <p>Voir la classe [page:Material] pour les méthodes communes.</p>
  170. <h2>Source</h2>
  171. <p>
  172. [link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
  173. </p>
  174. </body>
  175. </html>