/
Materials.html
159 lines (145 loc) · 7.02 KB
/
Materials.html
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
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
<!DOCTYPE html>
<html lang="it">
<head>
<meta charset="utf-8" />
<base href="../../../" />
<script src="page.js"></script>
<link type="text/css" rel="stylesheet" href="page.css" />
</head>
<body>
<h1>Costanti dei Materiali</h1>
<p class="desc">
Queste costanti definiscono proprietà comuni per tutti i tipi di materiali,
ad eccezione di Texture Combine Operations che si applicano
solo ai materiali [page:MeshBasicMaterial.combine MeshBasicMaterial],
[page:MeshLambertMaterial.combine MeshLambertMaterial] e [page:MeshPhongMaterial.combine MeshPhongMaterial].<br />
</p>
<h2>Lato (Side)</h2>
<code>
THREE.FrontSide
THREE.BackSide
THREE.DoubleSide
</code>
<p>
Definisce quale lato delle facce sarà visualizzato - frontale, retro o entrambi.
Il valore predefinito è [page:Constant FrontSide].
</p>
<h2>Modalità Blending</h2>
<code>
THREE.NoBlending
THREE.NormalBlending
THREE.AdditiveBlending
THREE.SubtractiveBlending
THREE.MultiplyBlending
THREE.CustomBlending
</code>
<p>
Controllano le equazioni di blending di origine e di destinazione per RGB e Alpha del materiale, inviate a WebGLRenderer
per l'uso da parte di WebGL.<br />
[page:Constant NormalBlending] è l'impostazione predefinita.<br />
Si noti che [page:Constant CustomBlending] deve essere impostato per utilizzare le equazioni di blending personalizzate.<br />
Vedi l'esempio [example:webgl_materials_blending materials / blending].<br />
</p>
<h2>Modalità Depth</h2>
<code>
THREE.NeverDepth
THREE.AlwaysDepth
THREE.EqualDepth
THREE.LessDepth
THREE.LessEqualDepth
THREE.GreaterEqualDepth
THREE.GreaterDepth
THREE.NotEqualDepth
</code>
<p>
La funzione di profondità (depth) utilizza il materiale per confrontare la Z-depth dei pixel in arrivo
con il valore del buffer della Z-depth. Se il risultato del confronto è vero, il pixel viene disegnato.
[page:Materials NeverDepth] non tornerà mai vero.<br />
[page:Materials AlwaysDepth] tornerà sempre vero.<br />
[page:Materials EqualDepth] tornerà vero se lo Z-depth dei pixel in ingresso è uguale all'attuale buffer Z-depth.<br />
[page:Materials LessDepth] tornerà vero se lo Z-depth dei pixel in ingresso è minore dell'attuale buffer Z-depth.<br />
[page:Materials LessEqualDepth] è il valore predefinito e ritornerà vero se lo Z-depth dei pixel in ingresso è minore o uguale dell'attuale buffer Z-depth.<br />
[page:Materials GreaterEqualDepth] tornerà vero se lo Z-depth dei pixel in ingresso è maggiore o uguale dell'attuale buffer Z-depth.<br />
[page:Materials GreaterDepth] tornerà vero se lo Z-depth dei pixel in ingresso è maggiore dell'attuale buffer Z-depth.<br />
[page:Materials NotEqualDepth]tornerà vero se lo Z-depth dei pixel in ingresso è maggiore non è uguale all'attuale buffer Z-depth.<br />
</p>
<h2>Texture Combine Operations</h2>
<code>
THREE.MultiplyOperation
THREE.MixOperation
THREE.AddOperation
</code>
<p>
Definiscono come il risultato del colore della supercificie viene combinato con la mappa ambientale (se presente),
per i materiali [page:MeshBasicMaterial.combine MeshBasicMaterial], [page:MeshLambertMaterial.combine MeshLambertMaterial]
e [page:MeshPhongMaterial.combine MeshPhongMaterial]. <br />
[page:Constant MultiplyOperation] è l'impostazione predefinita e moltiplica la mappa di colore dell'ambiente con il colore della superficie.<br />
[page:Constant MixOperation] utilizza la riflettività per miscelare i due colori.<br />
[page:Constant AddOperation] aggiunge i due colori.
</p>
<h2>Funzioni di Stencil</h2>
<code>
THREE.NeverStencilFunc
THREE.LessStencilFunc
THREE.EqualStencilFunc
THREE.LessEqualStencilFunc
THREE.GreaterStencilFunc
THREE.NotEqualStencilFunc
THREE.GreaterEqualStencilFunc
THREE.AlwaysStencilFunc
</code>
<p>
Quale funzione di stencil utilizza il meteriale per determinare se eseguire o meno un'operazione di stencil.<br />
[page:Materials NeverStencilFunc] non tornerà mai vero.<br />
[page:Materials LessStencilFunc] tornerà vero se il valore di riferimento dello stencil è inferiore al valore dello stencil corrente.<br />
[page:Materials EqualStencilFunc] tornerà vero se il valore di riferimento dello stencil è ugale al valore dello stencil corrente.<br />
[page:Materials LessEqualStencilFunc] tornerà vero se il valore di riferimento dello stencil è minore o uguale al valore dello stencil corrente.<br />
[page:Materials GreaterStencilFunc] tornerà vero se il valore di riferimento dello stencil è maggiore al valore dello stencil corrente.<br />
[page:Materials NotEqualStencilFunc] tornerà vero se il valore di riferimento dello stencil non è uguale al valore dello stencil corrente.<br />
[page:Materials GreaterEqualStencilFunc] tornerà vero se il valore di riferimento dello stencil è maggiore o uguale al valore dello stencil corrente.<br />
[page:Materials AlwaysStencilFunc] tornerà sempre vero.<br />
</p>
<h2>Operazioni di Stencil</h2>
<code>
THREE.ZeroStencilOp
THREE.KeepStencilOp
THREE.ReplaceStencilOp
THREE.IncrementStencilOp
THREE.DecrementStencilOp
THREE.IncrementWrapStencilOp
THREE.DecrementWrapStencilOp
THREE.InvertStencilOp
</code>
<p>
Quale operazione di stencil eseguirà il materiale sul pixel del buffer di stencil se la funzione stencil fornita passa.<br />
[page:Materials ZeroStencilOp] imposterà il valore dello stencil a 0.<br />
[page:Materials KeepStencilOp] non cambierà il valore corrente dello stencil.<br />
[page:Materials ReplaceStencilOp] sostituirà il valore dello stencil con il valore di riferimento dello stencil specificato.<br />
[page:Materials IncrementStencilOp] incrementerà il valore corrente dello stencil di `1`.<br />
[page:Materials DecrementStencilOp] decrementerà il valore corrente dello stencil di `1`.<br />
[page:Materials IncrementWrapStencilOp] incrementerà il valore corrente dello stencil di `1`. Se il valore aumenta oltre 255, verrà impostato su `0`.<br />
[page:Materials DecrementWrapStencilOp] incrementerà il valore corrente dello stencil di `1`. Se il valore diminusice al di sotto di `0` verrà impostato a `255`.<br />
[page:Materials InvertStencilOp] eseguirà un'inversione di bit del valore dello stencil corrente.<br />
</p>
<h2>Tipo Normal map</h2>
<code>
THREE.TangentSpaceNormalMap
THREE.ObjectSpaceNormalMap
</code>
<p>
Definisce il tipo di mappa normale.
Per TangentSpaceNormalMap, le informazioni sono relative alla superficie sottostante.
Per ObjectSpaceNormalMap, le informazioni sono relative all'oggetto sottostante.
Il valore di default è [page:Constant TangentSpaceNormalMap].
</p>
<h2>GLSL Version</h2>
<code>
THREE.GLSL1
THREE.GLSL3
</code>
<h2>Source</h2>
<p>
[link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
</p>
</body>
</html>