[page:Material] →

[name]

Un materiale per superfici lucide, senza riflessi speculari.

Il materiale utilizza un modello [link:https://en.wikipedia.org/wiki/Blinn-Phong_shading_model Blinn-Phong] non fisico per calcolare la riflettanza. A differenza dal modello Lambertiano utilizzato nel [page:MeshLambertMaterial] questo può simulare superfici lucide con riflessi speculari (come il legno verniciato). [name] utilizza l'ombreggiatura per-fragment.

Le prestazioni saranno maggiori quando si utilizza questo materiale su [page:MeshStandardMaterial] o [page:MeshPhysicalMaterial], a scapito di una certa precisione grafica.

Costruttore

[name]( [param:Object parameters] )

[page:Object parameters] - (opzionale) un oggetto con una o più proprietà che definiscono l'aspetto del materiale. Qualsiasi proprietà del materiale (inclusa qualsiasi proprietà ereditata da [page:Material]) può essere passata qui.

L'eccezione è la proprietà [page:Hexadecimal colore], la quale può essere passata come stringa esadecimale e per impostazione predefinita è `0xffffff` (bianco). [page:Color.set]( color ) viene chiamato internamente.

Proprietà

Vedi la classe base [page:Material] per le proprietà comuni.

[property:Texture alphaMap]

La mappa alfa è una texture in scala di grigi che controlla l'opacità sulla superficie (nero: completamente trasparente; bianco: completamente opaco). Il valore predefinito è `null`.

Viene utilizzato solo il colore della texture, ignorando il canale alfa, se esiste. Per le texuture RGB e RGBA, il renderer [page:WebGLRenderer WebGL] utilizzarà il canale del verde durante il campionamento di questa texture a causa del bit extra di precisione fornito per il verde nei formati RGB 565 compressi e non compressi DXT. Anche le texture solo luminanza e luminanza/alfa continueranno a funzionare come previsto.

[property:Texture aoMap]

Il canale rosso di questa texture viene utilizzato come la mappa di occlusione ambientale. Il valore predefinito è `null`. AoMap richiede un secondo set di UV.

[property:Float aoMapIntensity]

L'intensità dell'effetto di occlusione ambientale. Il valore predefinito è `1`. Zero non è un effetto di occlusione.

[property:Texture bumpMap]

La texture per creare una mappa di rilievo. I valori nero e bianco si associano alla profondità percepita in relazione alle luci. Bump in realtà non influisce sulla geometria dell'oggetto, solo sull'illuminazione. Se viene definita una mappa normale questa verrà ignorata.

[property:Float bumpScale]

Quanto la mappa di rilievo influisce sul materiale. Gli intervalli tipici sono 0-1. Il valore predefinito è 1.

[property:Color color]

[page:Color Colore] del materiale, il valore predefinito è impostato a bianco (0xffffff).

[property:Integer combine]

Come combinare il risultato del colore della superficie con l'eventuale mappa ambientale.

Le opzioni sono [page:Materials THREE.MultiplyOperation] (impostazione predefinita), [page:Materials THREE.MixOperation], [page:Materials THREE.AddOperation]. Se viene scelto il mix, la [page:.reflectivity] viene utilizzata per sfumare tra i due colori.

[property:Texture displacementMap]

La mappa di spostamento influisce sulla posizione dei vertici della mesh. A differenza di altre mappe che influenzano solo la luce e l'ombra del materiale, i vertici spostati possono proiettare ombre, bloccare altri oggetti, e altrimenti agire come una vera geometria. La texture di spostamento è un'immagine in cui il valore di ciascun pixel (il bianco è il più alto) viene mappato e riposizionato rispetto ai vertici della mesh.

[property:Float displacementScale]

Quando la mappa di spostamento influenza la mesh (dove il nero non è lo spostamento, e il bianco è lo spostamento massimo). Senza una mappa di spostamento impostata, questo valore non viene applicato. Il valore predefinito è 1.

[property:Float displacementBias]

L'offset dei valori della mappa di spostamento sui vertici della mesh. Senza una mappa di spostamento impostata, questo valore non viene applicato. Il valore predefinito è 0.

[property:Color emissive]

Colore emissivo (chiaro) per il materiale, essenzialmente un colore solido non influenzato da altre luci. L'impostazione predefinita è nero.

[property:Texture emissiveMap]

Imposta la mappa emissiva (bagliore). Il valore predefinito è `null`. Il colore della mappa emissiva è modulato dal colore emissivo e dall'intensità emissiva. Se si dispone di una mappa emissiva, assicurarsi di impostare il colore emissivo su qualcosa di diverso dal nero.

[property:Float emissiveIntensity]

Intensità della luce emissiva. Modula il colore emissivo. Il valore predefinito è `1`.

[property:Texture envMap]

La mappa ambientale. Il valore predefinito è `null`.

[property:Boolean flatShading]

Definisce se il materiale viene renderizzato con un'ombreggiatura piatta. Il valore predefinito è `false`.

[property:Boolean fog]

Indica se il materiale è influenzato dalla nebbia. Il valore predefinito è `true`.

[property:Texture lightMap]

La mappa della luce. Il valore predefinito è `null`. La lightMap richiede un secondo set di UV.

[property:Float lightMapIntensity]

Intensità della luce. Il valore predefinito è `1`.

[property:Texture map]

La mappa colore. Può includere facoltativamente un canale alfa, in genere combinato con [page:Material.transparent .transparent] or[page:Material.alphaTest .alphaTest]. Il valore predefinito è `null`. Il colore della mappa texture è modulato dal [page:.color] diffuso.

[property:Texture normalMap]

La texture per creare una mappa normale. I valori RGB influenzano la normale della superficie per ogni frammento di pixel e cambiano il modo in cui il colore è illuminato. Le mappe normali non modificano la figura effettiva della superficie, ma solo l'illuminazione. Nel caso in cui il materiale abbia una mappa normale creata utilizzando la convezione della mano sinistra, la componente y di normalScale deve essere negata per compensare la diversa mano.

[property:Integer normalMapType]

Il tipo di mappa normale.

Le opzioni sono [page:constant THREE.TangentSpaceNormalMap] (impostazione predefinita), e [page:constant THREE.ObjectSpaceNormalMap].

[property:Vector2 normalScale]

Quanto la mappa normale influenza il materiale. Gli intervalli tipici sono 0-1. Il valore predefinito è un [page:Vector2] impostato a (1,1).

[property:Float reflectivity]

Quanto la mappa ambientale influisce sulla superficie; vedi anche [page:.combine]. Il valore predefinito è 1 e l'intervallo valido è tra 0 (nessun riflesso) e 1 (pieno riflesso).

[property:Float refractionRatio]

L'indice di rifrazione (IOR) dell'aria (circa 1) diviso per l'indice di rifrazione del materiale. Viene utilizzato con le modalità di mappatura ambientale [page:Textures THREE.CubeRefractionMapping] e [page:Textures THREE.EquirectangularRefractionMapping]. Il rapporto di rifrazione non deve essere superiore a 1. Il valore predefinito è `0.98`.

[property:Float shininess]

Quanto è brillante l'evidenziazione [page:.specular speculare]; un valore più alto dà un'evidenziazione più nitida. Il valore predefinito è `30`.

[property:Color specular]

Colore speculare del materiale. Il valore predefinito è [page:Color] impostato a `0x111111` (grigio molto scuro).

Questo definisce la lucentezza del materiale e il colore della sua lucentezza.

[property:Texture specularMap]

Il valore della mappa speculare influenza sia quanto contribuisce l'evidenziazione della superficie speculare sia quanto la mappa ambientale influisce sulla superficie. Il valore predefinito è `null`.

[property:Boolean wireframe]

Rendering della geometria come wireframe. Il valore predefinito è `false` (cioè renderizzazione come poligoni piatti).

[property:String wireframeLinecap]

Definisce l'aspetto delle estremità della linea. I valori possibili sono "butt", "round" e "square". Il valore predefinito è 'round'.

Questa corrisponde alla proprietà [link:https://developer.mozilla.org/en/docs/Web/API/CanvasRenderingContext2D/lineCap 2D Canvas lineCap] e viene ignorata dal renderer [page:WebGLRenderer WebGL].

[property:String wireframeLinejoin]

Definisce l'aspetto dei punti di unione della linea. I valori possibili sono "round", "bevel" e "miter". Il valore predefinito è 'round'.

Questa corrisponde alla proprietà [link:https://developer.mozilla.org/en/docs/Web/API/CanvasRenderingContext2D/lineJoin 2D Canvas lineJoin] e viene ignorata dal renderer [page:WebGLRenderer WebGL].

[property:Float wireframeLinewidth]

Controlla lo spessore del wireframe. Il valore predefinito è `1`.

A causa delle limitazioni del [link:https://www.khronos.org/registry/OpenGL/specs/gl/glspec46.core.pdf profilo OpenGL Core] con il renderer [page:WebGLRenderer WebGL] sulla maggior parte delle piattaforme, la larghezza di riga sarà sempre 1 indipendentemente dal valore impostato.

Metodi

Vedi la classe base [page:Material] per i metodi comuni.

Source

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