Browse Source

Docs italian version (#24544)

* feat: add Audio italian version

* feat: add Cameras italian version

* fix: remove error letter

* feat: add Constants italian version

* feat: add Core italian version
Angela Busato 2 years ago
parent
commit
8de7680efd
36 changed files with 4795 additions and 4 deletions
  1. 1 1
      docs/api/en/constants/Core.html
  2. 1 1
      docs/api/en/core/InterleavedBuffer.html
  3. 267 0
      docs/api/it/audio/Audio.html
  4. 98 0
      docs/api/it/audio/AudioAnalyser.html
  5. 43 0
      docs/api/it/audio/AudioContext.html
  6. 123 0
      docs/api/it/audio/AudioListener.html
  7. 138 0
      docs/api/it/audio/PositionalAudio.html
  8. 55 0
      docs/api/it/cameras/ArrayCamera.html
  9. 86 0
      docs/api/it/cameras/Camera.html
  10. 88 0
      docs/api/it/cameras/CubeCamera.html
  11. 146 0
      docs/api/it/cameras/OrthographicCamera.html
  12. 214 0
      docs/api/it/cameras/PerspectiveCamera.html
  13. 64 0
      docs/api/it/cameras/StereoCamera.html
  14. 46 0
      docs/api/it/constants/Animation.html
  15. 53 0
      docs/api/it/constants/BufferAttributeUsage.html
  16. 80 0
      docs/api/it/constants/Core.html
  17. 66 0
      docs/api/it/constants/CustomBlendingEquations.html
  18. 159 0
      docs/api/it/constants/Materials.html
  19. 72 0
      docs/api/it/constants/Renderer.html
  20. 561 0
      docs/api/it/constants/Textures.html
  21. 236 0
      docs/api/it/core/BufferAttribute.html
  22. 319 0
      docs/api/it/core/BufferGeometry.html
  23. 82 0
      docs/api/it/core/Clock.html
  24. 97 0
      docs/api/it/core/EventDispatcher.html
  25. 115 0
      docs/api/it/core/GLBufferAttribute.html
  26. 43 0
      docs/api/it/core/InstancedBufferAttribute.html
  27. 48 0
      docs/api/it/core/InstancedBufferGeometry.html
  28. 44 0
      docs/api/it/core/InstancedInterleavedBuffer.html
  29. 116 0
      docs/api/it/core/InterleavedBuffer.html
  30. 125 0
      docs/api/it/core/InterleavedBufferAttribute.html
  31. 105 0
      docs/api/it/core/Layers.html
  32. 500 0
      docs/api/it/core/Object3D.html
  33. 217 0
      docs/api/it/core/Raycaster.html
  34. 274 0
      docs/api/it/core/Uniform.html
  35. 65 0
      docs/api/it/core/bufferAttributeTypes/BufferAttributeTypes.html
  36. 48 2
      docs/list.json

+ 1 - 1
docs/api/en/constants/Core.html

@@ -40,7 +40,7 @@ THREE.LinearSRGBColorSpace
 			linear transfer functions. Linear-sRGB is the working color space in three.js, used
 			linear transfer functions. Linear-sRGB is the working color space in three.js, used
 			throughout most of the rendering process. RGB components found in three.js materials
 			throughout most of the rendering process. RGB components found in three.js materials
 			and shaders are in the Linear-sRGB color space.
 			and shaders are in the Linear-sRGB color space.
-		D</p>
+		</p>
 
 
 		<p>
 		<p>
 			For further background and usage, see <i>Color management</i>.
 			For further background and usage, see <i>Color management</i>.

+ 1 - 1
docs/api/en/core/InterleavedBuffer.html

@@ -84,7 +84,7 @@
 		<h3>[method:this set]( [param:TypedArray value], [param:Integer offset] ) </h3>
 		<h3>[method:this set]( [param:TypedArray value], [param:Integer offset] ) </h3>
 		<p>
 		<p>
 			value - The source (typed) array.<br/>
 			value - The source (typed) array.<br/>
-			offset - The offset into the target array at which to begin writing values from the source array. Default is .<br/><br />
+			offset - The offset into the target array at which to begin writing values from the source array. Default is `0`.<br/><br />
 
 
 			Stores multiple values in the buffer, reading input values from a specified array.
 			Stores multiple values in the buffer, reading input values from a specified array.
 		</p>
 		</p>

+ 267 - 0
docs/api/it/audio/Audio.html

@@ -0,0 +1,267 @@
+<!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>
+		[page:Object3D] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Crea un oggetto audio non posizionale (globale).<br /><br />
+
+			Utilizza le [link:https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API API Web Audio].
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		// crea un AudioListener e aggiungilo alla camera
+		const listener = new THREE.AudioListener();
+		camera.add( listener );
+
+		// crea una sorgente audio globale
+		const sound = new THREE.Audio( listener );
+
+		// carica un suono e impostalo come buffer dell'oggetto audio
+		const audioLoader = new THREE.AudioLoader();
+		audioLoader.load( 'sounds/ambient.ogg', function( buffer ) {
+			sound.setBuffer( buffer );
+			sound.setLoop( true );
+			sound.setVolume( 0.5 );
+			sound.play();
+		});
+		</code>
+
+		<h2>Esempi</h2>
+
+		<p>
+			[example:webaudio_sandbox webaudio / sandbox ]<br />
+			[example:webaudio_visualizer webaudio / visualizer ]
+		</p>
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name]( [param:AudioListener listener] )</h3>
+		<p>
+		listener — (obbligatorio) istanza [page:AudioListener AudioListener].
+		</p>
+
+
+		<h2>Proprietà</h2>
+
+		<h3>[property:Boolean autoplay]</h3>
+		<p>Indica se avviare la riproduzione automaticamente. Il valore predefinito è `false`.</p>
+
+		<h3>[property:AudioContext context]</h3>
+		<p>L'[link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext AudioContext] del [page:AudioListener listener] passato nel costruttore.</p>
+
+		<h3>[property:Number detune]</h3>
+		<p>Modifica l'intonazione, misurata in centesimi. +/- 100 è un semitono. +/- 1200 è un'ottava. Il valore predefinito è `0`.</p>
+
+		<h3>[property:Array filters]</h3>
+		<p>
+      Rappresenta un'array di [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioNode AudioNode]. Può essere usato per applicare una varietà di 
+      filtri low-order per creare effetti sonori più complessi. In molti casi, l'array contiene istanze di 
+      [link:https://developer.mozilla.org/en-US/docs/Web/API/BiquadFilterNode BiquadFilterNode]. I filtri sono impostati tramite 
+      [page:Audio.setFilter] o [page:Audio.setFilters].
+    </p>
+
+		<h3>[property:GainNode gain]</h3>
+		<p>
+      Un [link:https://developer.mozilla.org/en-US/docs/Web/API/GainNode GainNode] creato usando
+      [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/createGain AudioContext.createGain]().
+    </p>
+
+		<h3>[property:Boolean hasPlaybackControl]</h3>
+		<p>
+      Indica se la riproduzione può essere controllata usando i metodi [page:Audio.play play](),
+      [page:Audio.pause pause]() etc. Il valore di default è `true`.
+    </p>
+
+		<h3>[property:Boolean isPlaying]</h3>
+		<p>Indica se l'audio è attualmente in riproduzione.</p>
+
+		<h3>[property:AudioListener listener]</h3>
+		<p>Un riferimento all'oggetto listener di questo audio.</p>
+
+		<h3>[property:Number playbackRate]</h3>
+		<p>Velocità di riproduzione. Il valore predefinito è `1`.</p>
+
+		<h3>[property:Number offset]</h3>
+		<p>
+      Un offset al momento in cui deve iniziare la riproduzione all'interno del buffer audio.
+      È uguale al parametro audio di [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/start AudioBufferSourceNode.start]().
+      Il valore predefinito è `0`.
+    </p>
+
+		<h3>[property:Number duration]</h3>
+		<p>
+      Sovrascrive la durata dell'audio. È uguale al parametro `duration` di
+      [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/start AudioBufferSourceNode.start]().
+      Il valore predefinito è `undefined` per riprodurre l'intero buffer.
+    </p>
+
+		<h3>[property:String source]</h3>
+		<p>
+      Un [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode AudioBufferSourceNode] creato
+      usando [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/createBufferSource AudioContext.createBufferSource]().
+    </p>
+
+		<h3>[property:String sourceType]</h3>
+		<p>Il tipo di sorgente audio. Il valore predefinito è la stringa 'empty'.</p>
+
+		<h3>[property:String type]</h3>
+		<p>Stringa che denota il tipo, impostato ad 'Audio'.</p>
+
+
+		<h2>Metodi</h2>
+
+		<h3>[method:this connect]()</h3>
+		<p>
+      Permette di collegarsi all'[page:Audio.source]. Questo metodo viene utilizzato internamente
+      durante l'inizializzazione e durante l'impostazione/eliminazione dei filtri. 
+		</p>
+
+		<h3>[method:this disconnect]()</h3>
+		<p>
+      Permette di scollegarsi dall'[page:Audio.source]. Questo metodo viene utilizzato internamente
+      durante l'impostazione/eliminazione dei filtri. 
+		</p>
+
+		<h3>[method:Float getDetune]()</h3>
+		<p>
+      Restituisce il detuning dell'oscillazione in centesimi.
+		</p>
+
+		<h3>[method:BiquadFilterNode getFilter]()</h3>
+		<p>
+      Restituisce il primo elemento dell'array [page:Audio.filters filters].
+		</p>
+
+		<h3>[method:Array getFilters]()</h3>
+		<p>
+      Restituisce l'array [page:Audio.filters filters].
+		</p>
+
+		<h3>[method:Boolean getLoop]()</h3>
+		<p>
+      Restituisce il valore di [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/loop source.loop]
+      (se la riproduzione deve essere ripetuta).
+		</p>
+
+		<h3>[method:GainNode getOutput]()</h3>
+		<p>
+      Restituisce il [page:Audio.gain gainNode].
+		</p>
+
+		<h3>[method:Float getPlaybackRate]()</h3>
+		<p>
+      Restituisce il valore di [page:Audio.playbackRate playbackRate].
+		</p>
+
+		<h3>[method:Float getVolume]( value )</h3>
+		<p>
+      Restituisce il volume corrente.
+		</p>
+
+		<h3>[method:this play]( delay )</h3>
+		<p>
+      Se [page:Audio.hasPlaybackControl hasPlaybackControl] è impostato a true, inizia la riproduzione.
+		</p>
+
+		<h3>[method:this pause]()</h3>
+		<p>
+      Se [page:Audio.hasPlaybackControl hasPlaybackControl] è impostato a true, mette in pausa la riproduzione.
+		</p>
+
+		<h3>[method:undefined onEnded]()</h3>
+		<p>
+      Viene chiamato automaticamente quando la riproduzione termina.
+		</p>
+
+		<h3>[method:this setBuffer]( audioBuffer )</h3>
+		<p>
+      Imposta la [page:Audio.source sorgente] su audioBuffer, e imposta il [page:Audio.sourceType sourceType] a 'buffer'.<br />
+      Se la riproduzione è in [page:Audio.autoplay autoplay], avvia anche la riproduzione.
+		</p>
+
+		<h3>[method:this setDetune]( [param:Float value] )</h3>
+		<p>
+      Definisce il detuning dell'oscillazione in centesimi.
+		</p>
+
+		<h3>[method:this setFilter]( filter )</h3>
+		<p>
+      Applica un singolo filtro all'audio.
+		</p>
+
+		<h3>[method:this setFilters]( [param:Array value] )</h3>
+		<p>
+		  value - array di filtri.<br />
+      Applica un array di filtri all'audio.
+		</p>
+
+		<h3>[method:this setLoop]( [param:Boolean value] )</h3>
+		<p>
+      Imposta [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/loop source.loop] a `value`
+      (se la riproduzione deve andare in loop).
+		</p>
+
+		<h3>[method:this setLoopStart]( [param:Float value] )</h3>
+		<p>
+      Imposta [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/loopStart source.loopStart] a `value`.
+		</p>
+
+		<h3>[method:this setLoopEnd]( [param:Float value] )</h3>
+		<p>
+      Imposta [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/loopEnd source.loopEnd] a `value`.
+		</p>
+
+		<h3>[method:this setMediaElementSource]( mediaElement )</h3>
+		<p>
+      Applica l'oggetto passato come parametro, di tipo [link:https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement HTMLMediaElement], 
+      come sorgente di questo audio.<br />
+      Inoltre imposta [page:Audio.hasPlaybackControl hasPlaybackControl] a false.
+		</p>
+
+		<h3>[method:this setMediaStreamSource]( mediaStream )</h3>
+		<p>
+      Applica l'oggetto passato come parametro, di tipo [link:https://developer.mozilla.org/en-US/docs/Web/API/MediaStream MediaStream], 
+      come sorgente di questo audio.<br />
+      Inoltre imposta [page:Audio.hasPlaybackControl hasPlaybackControl] a false.
+		</p>
+
+		<h3>[method:this setNodeSource]( audioNode )</h3>
+		<p>
+      Imposta la [page:Audio.source sorgente] dell'audioBuffer, e imposta [page:Audio.sourceType sourceType] a 'audioNode'.<br />
+      Inoltre imposta [page:Audio.hasPlaybackControl hasPlaybackControl] a false.
+		</p>
+
+		<h3>[method:this setPlaybackRate]( [param:Float value] )</h3>
+		<p>
+      Se [page:Audio.hasPlaybackControl hasPlaybackControl] è abilitato, imposta il [page:Audio.playbackRate playbackRate] a `value`.
+		</p>
+
+		<h3>[method:this setVolume]( [param:Float value] )</h3>
+		<p>
+      Imposta il volume.
+		</p>
+
+		<h3>[method:this stop]()</h3>
+		<p>
+      Se [page:Audio.hasPlaybackControl hasPlaybackControl] è abilitato, ferma la riproduzione.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 98 - 0
docs/api/it/audio/AudioAnalyser.html

@@ -0,0 +1,98 @@
+<!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>[name]</h1>
+
+		<p class="desc">
+      Crea un oggetto AudioAnalyser, che utilizza un [link:https://developer.mozilla.org/en-US/docs/Web/API/AnalyserNode AnalyserNode]
+      per analizzare l'audio.<br /><br />
+
+      Utilizza le [link:https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API API Web Audio].
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		// crea un AudioListener e aggiungilo alla camera
+		const listener = new THREE.AudioListener();
+		camera.add( listener );
+
+		// crea una sorgente Audio
+		const sound = new THREE.Audio( listener );
+
+		// carica un suono e impostalo come buffer dell'oggetto Audio
+		const audioLoader = new THREE.AudioLoader();
+		audioLoader.load( 'sounds/ambient.ogg', function( buffer ) {
+			sound.setBuffer( buffer );
+			sound.setLoop(true);
+			sound.setVolume(0.5);
+			sound.play();
+		});
+
+		// crea un AudioAnalyser, passando il suono e la fftSize desiderata
+		const analyser = new THREE.AudioAnalyser( sound, 32 );
+
+		// ottieni la frequenza media del suono
+		const data = analyser.getAverageFrequency();
+		</code>
+
+		<h2>Esempi</h2>
+
+		<p>
+			[example:webaudio_sandbox webaudio / sandbox ]<br />
+			[example:webaudio_visualizer webaudio / visualizer ]
+		</p>
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name]( audio, [link:https://developer.mozilla.org/en-US/docs/Web/API/AnalyserNode/fftSize fftSize] )</h3>
+		<p>
+      Crea un nuovo [page:AudioAnalyser AudioAnalyser].
+		</p>
+
+
+		<h2>Proprietà</h2>
+
+		<h3>[property:AnalyserNode analyser]</h3>
+		<p>Un [link:https://developer.mozilla.org/en-US/docs/Web/API/AnalyserNode AnalyserNode] usato per analizzare l'audio.</p>
+
+		<h3>[property:Integer fftSize]</h3>
+		<p>
+      Una potenza di due, non nulla, fino a 2048, che rappresenta la dimensione della FFT (Fast Fourier Transform) da utilizzare per determinare
+      il dominio della frequenza. Vedi [link:https://developer.mozilla.org/en-US/docs/Web/API/AnalyserNode/fftSize questa pagina] per maggiori dettagli.
+		</p>
+
+		<h3>[property:Uint8Array data]</h3>
+		<p>
+      Un Uint8Array con dimensione determinata da [link:https://developer.mozilla.org/en-US/docs/Web/API/AnalyserNode/frequencyBinCount analyser.frequencyBinCount],
+      usata per contenere i dati di analisi.
+		</p>
+
+
+		<h2>Metodi</h2>
+
+
+		<h3>[method:Uint8Array getFrequencyData]()</h3>
+		<p>
+      Utilizza il metodo [link:https://developer.mozilla.org/en-US/docs/Web/API/AnalyserNode/getByteFrequencyData getByteFrequencyData] delle API Web Audio.
+		</p>
+
+		<h3>[method:Number getAverageFrequency]()</h3>
+		<p>
+      Ottieni la media della frequenza restituita dal metodo [page:AudioAnalyser.getFrequencyData getFrequencyData].
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 43 - 0
docs/api/it/audio/AudioContext.html

@@ -0,0 +1,43 @@
+<!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>[name]</h1>
+
+		<p class="desc">
+      Contiene i metodi per impostare un [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext AudioContext].<br /><br />
+
+      Usato internamente dalle classi [page:AudioListener AudioListener] e [page:AudioLoader AudioLoader].<br /><br />
+
+      Utilizza le [link:https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API API Web Audio].
+		</p>
+
+
+
+		<h2>Metodi</h2>
+
+		<h3>[method:AudioContext getContext]()</h3>
+		<p>
+      Restituisce il valore della variabile `context` nell'ambito esterno, se definito,
+      altrimenti lo imposta in un nuovo [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext AudioContext].
+		</p>
+
+		<h3>[method:AudioContext setContext]( [param:AudioContext value] )</h3>
+		<p>
+      Imposta la varibile `context` nell'ambito esterno su `value`.
+		</p>
+
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 123 - 0
docs/api/it/audio/AudioListener.html

@@ -0,0 +1,123 @@
+<!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>
+		[page:Object3D] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+      L'[name] rappresenta un [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioListener listener] virtuale di tutti 
+      gli effetti audio posizionli e non posizionali nella scena.<br />
+      Un'applicazione three.js di solito crea una singola istanza di [name]. È un parametro obbligatorio nel costruttore di 
+      entità audio come [page:Audio Audio] e [page:PositionalAudio PositionalAudio].<br />
+      In molti casi, l'oggetto listener è un figlio della camera. Quindi la trasformazione 3D della camera rappresenta 
+      la trasformazione 3D del listener.
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		// crea un AudioListener e aggiungilo alla camera
+		const listener = new THREE.AudioListener();
+		camera.add( listener );
+
+		// crea una sorgente audio globale
+		const sound = new THREE.Audio( listener );
+
+		// carica un suono e impostalo come buffer dell'oggetto Audio
+		const audioLoader = new THREE.AudioLoader();
+		audioLoader.load( 'sounds/ambient.ogg', function( buffer ) {
+			sound.setBuffer( buffer );
+			sound.setLoop(true);
+			sound.setVolume(0.5);
+			sound.play();
+		});
+		</code>
+
+		<h2>Esempi</h2>
+
+		<p>
+			[example:webaudio_sandbox webaudio / sandbox ]<br />
+			[example:webaudio_timing webaudio / timing ]<br />
+			[example:webaudio_visualizer webaudio / visualizer ]
+		</p>
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name](  )</h3>
+		<p>
+      Crea un nuovo AudioListener.
+		</p>
+
+
+		<h2>Proprietà</h2>
+
+		<h3>[property:AudioContext context]</h3>
+		<p>
+      L'[link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext AudioContext] del [page:AudioListener listener] passato nel costruttore.
+    </p>
+
+		<h3>[property:GainNode gain]</h3>
+		<p>
+      Un [link:https://developer.mozilla.org/en-US/docs/Web/API/GainNode GainNode] creato
+		  usando [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/createGain AudioContext.createGain]().
+    </p>
+
+		<h3>[property:AudioNode filter]</h3>
+		<p>Il valore predefinito è `null`.</p>
+
+		<h3>[property:Number timeDelta]</h3>
+		<p>
+      Valore delta temporale delle entità audio. Usato nel contesto di 
+      [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioParam/linearRampToValueAtTime AudioParam.linearRampToValueAtTimeDefault]().
+      Il valore di default è `0`.
+    </p>
+
+    <h2>Metodi</h2>
+
+
+		<h3>[method:GainNode getInput]()</h3>
+		<p>
+      Restituisce il [page:AudioListener.gain gainNode].
+		</p>
+
+		<h3>[method:this removeFilter]()</h3>
+		<p>
+      Imposta la proprietà [page:AudioListener.filter filter] a `null`.
+		</p>
+
+		<h3>[method:AudioNode getFilter]()</h3>
+		<p>
+      Restituisce il valore della proprietà [page:AudioListener.filter filter].
+		</p>
+
+		<h3>[method:this setFilter]( [param:AudioNode value] )</h3>
+		<p>
+      Imposta la proprietà [page:AudioListener.filter filter] a `value`.
+		</p>
+
+		<h3>[method:Float getMasterVolume]()</h3>
+		<p>
+      Restituisce il volume.
+		</p>
+
+		<h3>[method:this setMasterVolume]( [param:Number value] )</h3>
+		<p>
+      Imposta il volume.
+		</p>
+
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 138 - 0
docs/api/it/audio/PositionalAudio.html

@@ -0,0 +1,138 @@
+<!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>
+		[page:Object3D] &rarr; [page:Audio] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Crea un oggetto audio posizionale.<br /><br />
+
+      Utilizza le [link:https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API API Web Audio].
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		// crea un AudioListener e lo aggiunge alla camera
+		const listener = new THREE.AudioListener();
+		camera.add( listener );
+
+		// crea l'oggetto PositionalAudio (passandogli il listener)
+		const sound = new THREE.PositionalAudio( listener );
+
+		// carica un suono e lo imposta come buffer dell'oggetto PositionalAudio
+		const audioLoader = new THREE.AudioLoader();
+		audioLoader.load( 'sounds/song.ogg', function( buffer ) {
+			sound.setBuffer( buffer );
+			sound.setRefDistance( 20 );
+			sound.play();
+		});
+
+		// crea un oggetto da cui riprodurre il suono
+		const sphere = new THREE.SphereGeometry( 20, 32, 16 );
+		const material = new THREE.MeshPhongMaterial( { color: 0xff2200 } );
+		const mesh = new THREE.Mesh( sphere, material );
+		scene.add( mesh );
+
+		// infine aggiunge il suono alla mesh
+		mesh.add( sound );
+		</code>
+
+		<h2>Esempi</h2>
+
+		<p>
+			[example:webaudio_orientation webaudio / orientation ]<br />
+			[example:webaudio_sandbox webaudio / sandbox ]<br />
+			[example:webaudio_timing webaudio / timing ]
+		</p>
+
+		<h2>Costruttore</h2>
+
+		<h3>[name]( [param:AudioListener listener] )</h3>
+		<p>
+		  listener — (obbligatorio) istanza di [page:AudioListener AudioListener].
+		</p>
+
+
+		<h2>Proprietà</h2>
+
+		<p>
+      Vedi la classe [page:Audio Audio] per le proprietà ereditate.
+		</p>
+
+		<h3>[property:PannerNode panner]</h3>
+		<p>
+      Il [link:https://developer.mozilla.org/en-US/docs/Web/API/PannerNode PannerNode] di PositionalAudio.
+    </p>
+
+
+		<h2>Metodi</h2>
+
+		<p>
+      Vedi la classe [page:Audio Audio] per i metodi ereditati.
+		</p>
+
+		<h3>[method:PannerNode getOutput]()</h3>
+		<p>
+      Restituisce il [page:PositionalAudio.panner panner].
+		</p>
+
+		<h3>[method:Float getRefDistance]()</h3>
+		<p>
+      Restisuice il valore di [link:https://developer.mozilla.org/en-US/docs/Web/API/PannerNode/refDistance panner.refDistance].
+		</p>
+
+		<h3>[method:this setRefDistance]( [param:Float value] )</h3>
+		<p>
+      Imposta il valore di [link:https://developer.mozilla.org/en-US/docs/Web/API/PannerNode/refDistance panner.refDistance].
+		</p>
+
+		<h3>[method:Float getRolloffFactor]()</h3>
+		<p>
+		  Restisuice il valore di [link:https://developer.mozilla.org/en-US/docs/Web/API/PannerNode/rolloffFactor panner.rolloffFactor].
+		</p>
+
+		<h3>[method:this setRolloffFactor]( [param:Float value] )</h3>
+		<p>
+		  Imposta il valore di [link:https://developer.mozilla.org/en-US/docs/Web/API/PannerNode/rolloffFactor panner.rolloffFactor].
+		</p>
+
+		<h3>[method:String getDistanceModel]()</h3>
+		<p>
+		  Restisuice il valore di [link:https://developer.mozilla.org/en-US/docs/Web/API/PannerNode/distanceModel panner.distanceModel].
+		</p>
+
+		<h3>[method:this setDistanceModel]( [param:String value] )</h3>
+		<p>
+		  Imposta il valore di [link:https://developer.mozilla.org/en-US/docs/Web/API/PannerNode/distanceModel panner.distanceModel].
+		</p>
+
+		<h3>[method:Float getMaxDistance]()</h3>
+		<p>
+		  Restisuice il valore di [link:https://developer.mozilla.org/en-US/docs/Web/API/PannerNode/maxDistance panner.maxDistance].
+		</p>
+
+		<h3>[method:this setMaxDistance]( [param:Float value] )</h3>
+		<p>
+		  Imposta il valore di [link:https://developer.mozilla.org/en-US/docs/Web/API/PannerNode/maxDistance panner.maxDistance].
+		</p>
+
+		<h3>[method:this setDirectionalCone]( [param:Float coneInnerAngle], [param:Float coneOuterAngle], [param:Float coneOuterGain] )</h3>
+		<p>
+      Questo metodo può essere usato per trasformare un suono omnidirezionale in un [link:https://developer.mozilla.org/en-US/docs/Web/API/PannerNode suono direzionale].
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 55 - 0
docs/api/it/cameras/ArrayCamera.html

@@ -0,0 +1,55 @@
+<!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>
+		[page:Object3D] &rarr; [page:Camera] &rarr; [page:PerspectiveCamera] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+      [name] può essere usato per renderizzare in modo efficiente una scena con un set predefinito di telecamere. 
+      Questo è un aspetto importante delle prestazioni per il rendering delle scene VR.<br />
+      Un'istanza di [name] ha sempre un array di telecamere secondarie. È obbligatorio definire per ogni telecamera secondaria la
+      proprietà `viewport` la quale determina la parte della finestra (viewport) che viene renderizzata con questa telecamera.
+		</p>
+
+		<h2>Esempi</h2>
+
+		<p>[example:webgl_camera_array camera / array ]</p>
+
+		<h2>Costruttore</h2>
+
+		<h3>[name]( [param:Array array] )</h3>
+		<p>
+      Un array di telecamere.
+		</p>
+
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe base [page:PerspectiveCamera] per le proprietà comuni.</p>
+
+		<h3>[property:Array cameras]</h3>
+		<p>
+			Un array di telecamere.
+		</p>
+
+		<h3>[property:Boolean isArrayCamera]</h3>
+		<p>
+      Flag di sola lettura per verificare se un dato oggetto è di tipo [name].
+		</p>
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe base [page:PerspectiveCamera] per i metodi comuni</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 86 - 0
docs/api/it/cameras/Camera.html

@@ -0,0 +1,86 @@
+<!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>
+		[page:Object3D] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Classe base astratta per telecamere. Questa classe dovrebbe essere sempre ereditata quando costruisci una nuova telecamera.
+		</p>
+
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name]()</h3>
+		<p>
+      Crea una nuova [name]. Si noti che questa classe non intende essere chiamata direttamente;
+      invece, probabilmente vuoi utilizzare una [page:PerspectiveCamera] o una [page:OrthographicCamera].
+		</p>
+
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe base  [page:Object3D] per le proprietà comuni.</p>
+
+		<h3>[property:Boolean isCamera]</h3>
+		<p>
+      Flag di sola lettura per verificare se un dato oggetto è di tipo [name].
+		</p>
+
+		<h3>[property:Layers layers]</h3>
+		<p>
+      I [page:Layers layers] di cui la telecamera è parte. Questa è una proprietà ereditata da 
+      [page:Object3D].<br /><br />
+
+      Gli oggetti devono condividere almeno un layer con la telecamera per essere visualizzati
+      quando il viewport della telecamera viene renderizzato.
+		</p>
+
+		<h3>[property:Matrix4 matrixWorldInverse]</h3>
+		<p>
+      Questo è l'inverso di matrixWorld. MatrixWorld contiene la Matrix che contiene
+      la trasformazione del mondo della telecamera.
+		</p>
+
+		<h3>[property:Matrix4 projectionMatrix]</h3>
+		<p>Questa è la matrice che contiene la proiezione (projection).</p>
+
+		<h3>[property:Matrix4 projectionMatrixInverse]</h3>
+		<p>L'inverso di projectionMatrix.</p>
+
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe base [page:Object3D] per i metodi comuni.</p>
+
+		<h3>[method:Camera clone]( )</h3>
+		<p>
+      Restituisce una nuova telecamera con le stesse proprietà di questa.
+		</p>
+
+		<h3>[method:this copy]( [param:Camera source], [param:Boolean recursive] )</h3>
+		<p>
+      Copia le proprietà della telecamera source in questa.
+		</p>
+
+		<h3>[method:Vector3 getWorldDirection]( [param:Vector3 target] )</h3>
+		<p>
+		[page:Vector3 target] — il risultato sarà copiato in questo Vector3. <br /><br />
+
+    Restituisce un [page:Vector3] che rappresenta la direzione dello spazio del world in
+    cui la telecamera sta guardando. (Nota: Una telecamera guarda verso il basso sul suo asse z locale, negativo).<br /><br />
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 88 - 0
docs/api/it/cameras/CubeCamera.html

@@ -0,0 +1,88 @@
+<!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>
+		[page:Object3D] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">Crea 6 telecamere che eseguono il rendering su un [page:WebGLCubeRenderTarget].</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		// Crea una destinazione di rendering del cubo
+		const cubeRenderTarget = new THREE.WebGLCubeRenderTarget( 128, { generateMipmaps: true, minFilter: THREE.LinearMipmapLinearFilter } );
+
+		// Crea una cube camera
+		const cubeCamera = new THREE.CubeCamera( 1, 100000, cubeRenderTarget );
+		scene.add( cubeCamera );
+
+		// Crea una macchina
+		const chromeMaterial = new THREE.MeshLambertMaterial( { color: 0xffffff, envMap: cubeRenderTarget.texture } );
+		const car = new THREE.Mesh( carGeometry, chromeMaterial );
+		scene.add( car );
+
+		// Aggiorna il cube di destinazione del rendering
+		car.visible = false;
+		cubeCamera.position.copy( car.position );
+		cubeCamera.update( renderer, scene );
+
+		// Renderizza la scena
+		car.visible = true;
+		renderer.render( scene, camera );
+		</code>
+
+		<h2>Esempi</h2>
+
+		<p>
+			[example:webgl_materials_cubemap_dynamic materials / cubemap / dynamic ]
+		</p>
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name]( [param:Number near], [param:Number far], [param:WebGLCubeRenderTarget renderTarget] )</h3>
+		<p>
+		near - La distanza vicina (near) di ritaglio. <br />
+		far - La distanza lontana (far) di ritaglio. <br />
+		renderTarget - La destinazione di rendering del target cube.
+		</p>
+
+		<p>
+      Costruisce una CubeCamera che contiene 6 [page:PerspectiveCamera PerspectiveCamera] che eseguono 
+      il rendering su un [page:WebGLCubeRenderTarget].
+		</p>
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe base [page:Object3D] per le proprietà comuni.</p>
+
+		<h3>[property:WebGLCubeRenderTarget renderTarget]</h3>
+		<p>
+      La destinazione di rendering del target cube.
+		</p>
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe base [page:Object3D] per i metodi comuni.</p>
+
+		<h3>[method:undefined update]( [param:WebGLRenderer renderer], [param:Scene scene] )</h3>
+		<p>
+		  renderer - L'attuale renderer WebGL<br />
+		  scene - La scena attuale
+		</p>
+		<p>
+      Chiama questo metodo per aggiornare il [page:CubeCamera.renderTarget renderTarget].
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 146 - 0
docs/api/it/cameras/OrthographicCamera.html

@@ -0,0 +1,146 @@
+<!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>
+		[page:Object3D] &rarr; [page:Camera] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Telecamera che utilizza la [link:https://en.wikipedia.org/wiki/Orthographic_projection proiezione ortografica].<br /><br />
+
+      In questa modalità di proiezione, la dimensione di un oggetto nell'immagine visualizzata rimane costante indipendentemente
+      dalla sua distanza dalla telecamera.<br /><br />
+
+      Questa telecamera, tra le altre cose, può essere utile per il rendering di scene 2D ed elementi della UI.
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		const camera = new THREE.OrthographicCamera( width / - 2, width / 2, height / 2, height / - 2, 1, 1000 );
+		scene.add( camera );
+		</code>
+
+		<h2>Esempi</h2>
+
+		<p>
+			[example:webgl_camera camera ]<br />
+			[example:webgl_interactive_cubes_ortho interactive / cubes / ortho ]<br />
+			[example:webgl_materials_cubemap_dynamic materials / cubemap / dynamic ]<br />
+			[example:webgl_postprocessing_advanced postprocessing / advanced ]<br />
+			[example:webgl_postprocessing_dof2 postprocessing / dof2 ]<br />
+			[example:webgl_postprocessing_godrays postprocessing / godrays ]<br />
+			[example:webgl_rtt rtt ]<br />
+			[example:webgl_shaders_tonemapping shaders / tonemapping ]<br />
+			[example:webgl_shadowmap shadowmap ]
+		</p>
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name]( [param:Number left], [param:Number right], [param:Number top], [param:Number bottom], [param:Number near], [param:Number far] )</h3>
+		<p>
+      left — Piano sinistro del frustum della telecamera.<br />
+      right — Piano destro del frustum della telecamera.<br />
+      top — Piano superiore del frustum della telecamera.<br />
+      bottom — Piano inferiore del frustum della telecamera.<br />
+      near — Piano near del frustum della telecamera.<br />
+      far — Piano far del frustum della telecamera.<br /><br />
+
+      Queste proprietà insieme definiscono il [link:https://en.wikipedia.org/wiki/Viewing_frustum frustum visivo] della telecamera.
+		</p>
+
+
+		<h2>Proprietà</h2>
+		<p>
+      Vedi la classe base [page:Camera] per le proprietà comuni.<br>
+      Si noti che dopo aver apportato modifiche alla maggior parte di queste proprietà 
+      sarà necessario chiamare il metodo [page:OrthographicCamera.updateProjectionMatrix .updateProjectionMatrix]
+      affinché le modifiche abbiano effetto.
+		</p>
+
+		<h3>[property:Float bottom]</h3>
+		<p>Piano inferiore del frustum della telecamera.</p>
+
+		<h3>[property:Float far]</h3>
+		<p>
+      Piano far del frustum della telecamera. Il valore predefinito è `2000`.<br /><br />
+
+      Deve essere maggiore del valore corrente del piano [page:.near near].
+		</p>
+
+		<h3>[property:Boolean isOrthographicCamera]</h3>
+		<p>
+      Flag di sola lettura per verificare se un dato oggetto è di tipo [name].
+		</p>
+
+		<h3>[property:Float left]</h3>
+		<p>Piano sinistro del frustum della telecamera.</p>
+
+		<h3>[property:Float near]</h3>
+		<p>
+      Piano near del frustum della telecamera. Il valore predefinito è `0.1`.<br /><br />
+
+      L'intervallo valido è tra `0` e il valore corrente del piano [page:.far far].
+      Si noti che, diversamente dalla [page:PerspectiveCamera], `0` è un valore valido 
+      per il piano near della OrthographicCamera.
+		</p>
+
+		<h3>[property:Float right]</h3>
+		<p>Piano destro del frustum della telecamera.</p>
+
+		<h3>[property:Float top]</h3>
+		<p>Piano superiore del frustum della telecamera.</p>
+
+		<h3>[property:Object view]</h3>
+		<p>Impostato da [page:OrthographicCamera.setViewOffset setViewOffset]. Il valore predefinito è `null`.</p>
+
+		<h3>[property:number zoom]</h3>
+		<p>Ottiene o imposta il fattore zoom della telecamera. Il valore predefinito è `1`.</p>
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe base [page:Camera] per i metodi comuni.</p>
+
+		<h3>[method:undefined setViewOffset]( [param:Float fullWidth], [param:Float fullHeight], [param:Float x], [param:Float y], [param:Float width], [param:Float height] )</h3>
+		<p>
+      fullWidth — Larghezza totale dell'impostazione multiview<br />
+      fullHeight — Altezza totale dell'impostazione multiview<br />
+      x — Offset orizzontale della telecamera secondaria<br />
+      y — Offset verticale della telecamera secondaria<br />
+      width — Larghezza della telecamera secondaria<br />
+      height — Altezza della telecamera secondaria<br /><br />
+
+      Imposta un offset in un [link:https://en.wikipedia.org/wiki/Viewing_frustum frustum visivo] più ampio.
+      È utile per le configurazioni multi-window o multi-monitor/multi-machine.
+      Per un esempio di utilizzo, consultare [page:PerspectiveCamera.setViewOffset PerspectiveCamera].
+		</p>
+
+		<h3>[method:undefined clearViewOffset]()</h3>
+		<p>
+      Rimuove qualsiasi offset impostato dal metodo .setViewOffset.
+		</p>
+
+		<h3>[method:undefined updateProjectionMatrix]()</h3>
+		<p>
+      Aggiorna la matrice di proiezione della telecamera. Deve essere chiamato dopo ogni modifica dei parametri.
+		</p>
+
+		<h3>[method:Object toJSON]([param:Object meta])</h3>
+		<p>
+		  meta -- oggetto contenente metadati come texture o immagini nei discendenti degli oggetti.<br />
+      Converte la fotocamera nel [link:https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 formato JSON Object/Scene] di three.js.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 214 - 0
docs/api/it/cameras/PerspectiveCamera.html

@@ -0,0 +1,214 @@
+<!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>
+		[page:Object3D] &rarr; [page:Camera] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Telecamera che utilizza la [link:https://en.wikipedia.org/wiki/Perspective_(graphical) proiezione prospettica].<br /><br />
+
+      Questa modalità di proiezione è progettata per imitare il modo in cui l'occhio umano vede. È la proiezione 
+      più comunemente utilizzata per il rendering di una scena 3D.
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		const camera = new THREE.PerspectiveCamera( 45, width / height, 1, 1000 );
+		scene.add( camera );
+		</code>
+
+		<h2>Esempi</h2>
+
+		<p>
+			[example:webgl_animation_skinning_blending animation / skinning / blending ]<br />
+			[example:webgl_animation_skinning_morph animation / skinning / morph ]<br />
+			[example:webgl_effects_stereo effects / stereo ]<br />
+			[example:webgl_interactive_cubes interactive / cubes ]<br />
+			[example:webgl_loader_collada_skinning loader / collada / skinning ]
+		</p>
+
+		<h2>Costruttore</h2>
+
+		<h3>[name]( [param:Number fov], [param:Number aspect], [param:Number near], [param:Number far] )</h3>
+		<p>
+      fov — Campo visivo verticale del frustum della telecamera.<br />
+      aspect — Aspect ratio del frustum della telecamera.<br />
+      near — Piano near del frustum della telecamera.<br />
+      far — Piano far del frustum della telecamera.<br /><br />
+
+      Queste proprietà insieme definiscono il [link:https://en.wikipedia.org/wiki/Viewing_frustum frustum visivo] della telecamera.
+		</p>
+
+
+		<h2>Proprietà</h2>
+		<p>
+      Vedi la classe base [page:Camera] per le proprietà comuni.<br>
+      Si noti che dopo aver apportato modifiche alla maggior parte di queste proprietà 
+      sarà necessario chiamare il metodo [page:PerspectiveCamera.updateProjectionMatrix .updateProjectionMatrix]
+      affinché le modifiche abbiano effetto.
+		</p>
+
+		<h3>[property:Float aspect]</h3>
+		<p>
+      Aspect ratio del frustum della telecamera, di solito calcolato con la larghezza del canvas / l'altezza del canvas. 
+      Il valore predefinito è `1` (canvas quadrato).
+    </p>
+
+		<h3>[property:Float far]</h3>
+		<p>
+      Piano far del frustum della telecamera. Il valore predefinito è `2000`.<br /><br />
+
+      Deve essere maggiore del valore corrente del piano [page:.near near].
+		</p>
+
+		<h3>[property:Float filmGauge]</h3>
+		<p>
+      Dimensioni della pellicola utilizzata per l'asse maggiore. Il valore predefinito è 35 (millimetri).
+      Questo parametro non influenza la matrice di proiezione a meno che .filmOffset non sia impostato su un valore diverso da zero.
+    </p>
+
+		<h3>[property:Float filmOffset]</h3>
+		<p>Offset orizzontale decentrato nella stessa unità di `.filmGauge`. Il valore predefinito è `0`.</p>
+
+		<h3>[property:Float focus]</h3>
+		<p>
+      Distanza dell'oggetto utilizzata per la stereoscopia e gli effetti di profondità di campo.
+      Questo parametro non influenza la matrice di proiezione a meno che non venga utilizzata una [page:StereoCamera].
+      Il valore predefinito è `10`.
+		</p>
+
+		<h3>[property:Float fov]</h3>
+		<p>Campo visivo verticale del frustum della telecamera, dal basso all'alto della vista, in gradi. Il valore predefinito è `50`.</p>
+
+		<h3>[property:Boolean isPerspectiveCamera]</h3>
+		<p>
+      Flag di sola lettura che verifica se la telecamera è di tipo [name].
+		</p>
+
+
+		<h3>[property:Float near]</h3>
+		<p>
+      Piano near del frustum della telecamera. Il valore predefinito è `0.1`.<br /><br />
+
+      L'intervallo valido è tra `0` e il valore corrente del piano [page:.far far].
+      Si noti che, diversamente dalla [page:OrthographicCamera], `0` <em>non</em> è un valore valido 
+      per il piano near della PerspectiveCamera.
+		</p>
+
+		<h3>[property:Object view]</h3>
+		<p>
+      Specifica la window del frustum o null.
+      Questo valore viene impostato utilizzando il metodo [page:PerspectiveCamera.setViewOffset .setViewOffset]
+      e cancellato utilizzando il metodo [page:PerspectiveCamera.clearViewOffset .clearViewOffset].
+		</p>
+
+		<h3>[property:number zoom]</h3>
+		<p>Ottiene o imposta il fattore zoom della telecamera. Il valore predefinito è `1`.</p>
+
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe base [page:Camera] per i metodi comuni.</p>
+
+		<h3>[method:undefined clearViewOffset]()</h3>
+		<p>Rimuove qualsiasi offset impostato dal metodo [page:PerspectiveCamera.setViewOffset .setViewOffset].</p>
+
+		<h3>[method:Float getEffectiveFOV]()</h3>
+		<p>Restituisce l'angolo verticale del campo visivo corrente in gradi considerando .zoom.</p>
+
+		<h3>[method:Float getFilmHeight]()</h3>
+		<p>
+      Restituisce l'altezza dell'immagine sulla pellicola. Se .aspect è minore o uguale a uno
+      (formato verticale), il risultato è uguale a .filmGauge.
+		</p>
+
+		<h3>[method:Float getFilmWidth]()</h3>
+		<p>
+      Restituisce la larghezza dell'immagine sulla pellicola. Se .aspect è maggiore o uguale ad uno (formato orizzontale),
+      il risultato è uguale a .filmGauge.
+		</p>
+
+		<h3>[method:Float getFocalLength]()</h3>
+		<p>Restituisce la lunghezza focale del .fov corrente rispetto a .filmGauge.</p>
+
+		<h3>[method:undefined setFocalLength]( [param:Float focalLength] )</h3>
+		<p>
+      Imposta il valore FOV in base alla lunghezza focale rispetto al [page:PerspectiveCamera.filmGauge .filmGauge] corrente.<br /><br />
+
+      Per impostazione predefinita, la lunghezza focale è specificata per una telecamera da 35mm (full frame).
+		</p>
+
+		<h3>[method:undefined setViewOffset]( [param:Float fullWidth], [param:Float fullHeight], [param:Float x], [param:Float y], [param:Float width], [param:Float height] )</h3>
+		<p>
+      fullWidth — larghezza totale dell'impostazione multiview<br />
+      fullHeight — altezza totale dell'impostazione multiview<br />
+      x — offset orizzontale della telecamera secondaria<br />
+      y — offset verticale della telecamera secondaria<br />
+      width — larghezza della telecamera secondaria<br />
+      height — altezza della telecamera secondaria<br /><br />
+		</p>
+
+		<p>
+      Imposta un offset in un frustum più ampio. È utile per le configurazioni multi-window o multi-monitor/multi-machine.
+		</p>
+
+		<p>
+      Per esempio, se si dispone di 3x2 monitor e ogni monitor è un 1920x1080 e i monitor sono disposti in una griglia come questa:<br />
+
+		<pre>
++---+---+---+
+| A | B | C |
++---+---+---+
+| D | E | F |
++---+---+---+
+		</pre>
+
+    allora per ogni monitor il metodo verrebbe chiamato in questo modo:<br />
+
+		<code>const w = 1920;
+const h = 1080;
+const fullWidth = w * 3;
+const fullHeight = h * 2;
+
+// A
+camera.setViewOffset( fullWidth, fullHeight, w * 0, h * 0, w, h );
+// B
+camera.setViewOffset( fullWidth, fullHeight, w * 1, h * 0, w, h );
+// C
+camera.setViewOffset( fullWidth, fullHeight, w * 2, h * 0, w, h );
+// D
+camera.setViewOffset( fullWidth, fullHeight, w * 0, h * 1, w, h );
+// E
+camera.setViewOffset( fullWidth, fullHeight, w * 1, h * 1, w, h );
+// F
+camera.setViewOffset( fullWidth, fullHeight, w * 2, h * 1, w, h );
+</code>
+
+      Si noti che non c'è motivo per cui i monitor debbano essere della stessa dimensione o in una griglia.
+		</p>
+
+		<h3>[method:undefined updateProjectionMatrix]()</h3>
+		<p>
+      Aggiorna la matrice di proiezione della telecamera. Deve essere chiamato dopo ogni modifica dei parametri.
+		</p>
+
+		<h3>[method:Object toJSON]([param:Object meta])</h3>
+		<p>
+      meta -- oggetto contenente metadati come texture o immagini nei discendenti degli oggetti.<br />
+      Converte la fotocamera nel [link:https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 formato JSON Object/Scene] di three.js.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 64 - 0
docs/api/it/cameras/StereoCamera.html

@@ -0,0 +1,64 @@
+<!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>[name]</h1>
+
+		<p class="desc">
+      Doppia telecamera [page:PerspectiveCamera PerspectiveCamera] utilizzata per effetti come
+      [link:https://en.wikipedia.org/wiki/Anaglyph_3D 3D Anaglyph] o [link:https://en.wikipedia.org/wiki/parallax_barrier Parallax Barrier].
+		</p>
+
+		<h2>Esempi</h2>
+
+		<p>
+			[example:webgl_effects_anaglyph effects / anaglyph ]<br />
+			[example:webgl_effects_parallaxbarrier effects / parallaxbarrier ]<br />
+			[example:webgl_effects_stereo effects / stereo ]
+		</p>
+
+		<h2>Costruttore</h2>
+
+		<h3>[name]( )</h3>
+
+		<h2>Proprietà</h2>
+
+		<h3>[property:Float aspect]</h3>
+		<p>Il valore predefinito è `1`.</p>
+
+		<h3>[property:Float eyeSep]</h3>
+		<p>Il valore predefinito è `0.064`.</p>
+
+		<h3>[property:PerspectiveCamera cameraL]</h3>
+		<p>
+      Telecamera sinistra. È aggiunta al [page:Layers layer 1] -
+      anche gli oggetti che devono essere renderizzati dalla telecamera di sinistra devono
+      essere aggiunti a questo layer.
+    </p>
+
+		<h3>[property:PerspectiveCamera cameraR]</h3>
+		<p>
+      Telecamera destra. È aggiunta al [page:Layers layer 2] -
+      anche gli oggetti che devono essere renderizzati dalla telecamera di destra devono
+      essere aggiunti a questo layer.
+
+		<h2>Metodi</h2>
+
+		<h3>[method:undefined update]( [param:PerspectiveCamera camera] )</h3>
+		<p>
+      Aggiorna le telecamere Stereo in base alla telecamera passata come parametro.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 46 - 0
docs/api/it/constants/Animation.html

@@ -0,0 +1,46 @@
+<!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 di Animazione</h1>
+
+		<h2>Modalità Loop</h2>
+
+		<code>
+THREE.LoopOnce
+THREE.LoopRepeat
+THREE.LoopPingPong
+		</code>
+
+    <h2>Modalità di Interpolazione</h2>
+    <code>
+THREE.InterpolateDiscrete
+THREE.InterpolateLinear
+THREE.InterpolateSmooth
+    </code>
+
+    <h2>Modalità Ending</h2>
+    <code>
+THREE.ZeroCurvatureEnding
+THREE.ZeroSlopeEnding
+THREE.WrapAroundEnding
+    </code>
+
+	<h2>Modalità di Animation Blend</h2>
+    <code>
+THREE.NormalAnimationBlendMode
+THREE.AdditiveAnimationBlendMode
+    </code>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
+		</p>
+	</body>
+</html>

+ 53 - 0
docs/api/it/constants/BufferAttributeUsage.html

@@ -0,0 +1,53 @@
+<!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 di utilizzo degli attributi del buffer</h1>
+
+		<p>
+      Le costanti di utilizzo possono essere utilizzate per fornire un suggerimento all'API su come verrà utilizzato l'attributo
+      del buffer della geometria per ottimizzare le prestazioni.
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		const geometry = new THREE.BufferGeometry();
+		const positionAttribute = new THREE.BufferAttribute( array, 3 , false );
+		positionAttribute.setUsage( THREE.DynamicDrawUsage );
+		geometry.setAttribute( 'position', positionAttribute );
+		</code>
+
+		<h2>Esempi</h2>
+		<p>[example:webgl_buffergeometry_drawrange materials / buffergeometry / drawrange ]</p>
+
+		<h2>Utilizzo della Geometria</h2>
+		<code>
+		THREE.StaticDrawUsage
+		THREE.DynamicDrawUsage
+		THREE.StreamDrawUsage
+
+		THREE.StaticReadUsage
+		THREE.DynamicReadUsage
+		THREE.StreamReadUsage
+
+		THREE.StaticCopyUsage
+		THREE.DynamicCopyUsage
+		THREE.StreamCopyUsage
+		</code>
+
+    Per informazioni più dettagliate su ciascuna di queste costanti consultare 
+    [link:https://www.khronos.org/opengl/wiki/Buffer_Object#Buffer_Object_Usage questa documentazione di OpenGL].
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
+		</p>
+	</body>
+</html>

+ 80 - 0
docs/api/it/constants/Core.html

@@ -0,0 +1,80 @@
+<!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 del Core</h1>
+
+		<h2>Numero di Revisione</h2>
+
+		<code>
+THREE.REVISION
+		</code>
+
+		<div id="rev">
+      L'attuale [link:https://github.com/mrdoob/three.js/releases numero di revisione] di three.js.
+		</div>
+
+		<h2>Spazi Colore</h2>
+		<code>
+THREE.NoColorSpace			
+THREE.SRGBColorSpace
+THREE.LinearSRGBColorSpace
+		</code>
+		<p>
+			[page:NoColorSpace] non definisce uno spazio colore specifico. 
+		</p>
+		<p>
+			[page:SRGBColorSpace] (“sRGB”) si riferisce allo spazio colore definito dal Rec. 709
+      primari, punto di bianco D65 e funzioni di trasferimento sRGB non lineare. sRGB è lo spazio
+      colore predefinito nei CSS, e si trova spesso nelle palette dei colori e nei selettori di colore.
+      I colori espressi in esadecimale o in notazione CSS sono tipicamente nello spazio colore sRGB.
+		</p>
+
+		<p>
+			[page:LinearSRGBColorSpace] (“Linear-sRGB”) si riferisce allo spazio colore sRGB (sopra) con
+      funzioni di trasferimento lineare. Linear-sRGB è lo spazio colore di lavoro in three.js, utilizzato
+      durante la maggior parte del processo di rendering. I componenti RGB presenti nei materiali, negli 
+      shader in three.js si trovano nello spazio colore Linear-sRGB.
+    </p>
+
+		<p>
+			Per ulteriori informazioni sul background e sull'utilizzo, consultare <i>Gestione del colore</i>.
+		</p>
+
+		<h2>Pulsanti del Mouse</h2>
+		<code>
+THREE.MOUSE.LEFT
+THREE.MOUSE.MIDDLE
+THREE.MOUSE.RIGHT
+THREE.MOUSE.ROTATE
+THREE.MOUSE.DOLLY
+THREE.MOUSE.PAN
+		</code>
+		<p>
+      Le costanti LEFT e ROTATE hanno lo stesso valore di base.
+      Le costanti MIDDLE e DOLLY hanno lo stesso valore di base.
+      Le costanti RIGHT e PAN hanno lo stesso valore di base.
+		</p>
+
+		<h2>Azioni Touch</h2>
+		<code>
+THREE.TOUCH.ROTATE
+THREE.TOUCH.PAN
+THREE.TOUCH.DOLLY_PAN
+THREE.TOUCH.DOLLY_ROTATE
+		</code>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
+		</p>
+	</body>
+
+
+</html>

+ 66 - 0
docs/api/it/constants/CustomBlendingEquations.html

@@ -0,0 +1,66 @@
+<!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 di equazioni di blending personalizzate</h1>
+
+		<p>
+      Funzionano con tutti i tipi di materiale. Impostare prima la modalità blending del materiale
+      su THREE.CustomBlending, poi impostare l'equazione di blending desiderata, il fattore sorgente 
+      (Source Factor) e quello di destinazione (Destination Factor).
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
+		material.blending = THREE.CustomBlending;
+		material.blendEquation = THREE.AddEquation; //default
+		material.blendSrc = THREE.SrcAlphaFactor; //default
+		material.blendDst = THREE.OneMinusSrcAlphaFactor; //default
+		</code>
+
+		<h2>Esempi</h2>
+		<p>[example:webgl_materials_blending_custom materials / blending / custom ]</p>
+
+		<h2>Equazioni di Blending</h2>
+		<code>
+		THREE.AddEquation
+		THREE.SubtractEquation
+		THREE.ReverseSubtractEquation
+		THREE.MinEquation
+		THREE.MaxEquation
+		</code>
+
+		<h2>Fattori di Origine (Source Factors)</h2>
+		<code>
+		THREE.ZeroFactor
+		THREE.OneFactor
+		THREE.SrcColorFactor
+		THREE.OneMinusSrcColorFactor
+		THREE.SrcAlphaFactor
+		THREE.OneMinusSrcAlphaFactor
+		THREE.DstAlphaFactor
+		THREE.OneMinusDstAlphaFactor
+		THREE.DstColorFactor
+		THREE.OneMinusDstColorFactor
+		THREE.SrcAlphaSaturateFactor
+		</code>
+
+		<h2>Fattori di Destinazione (Destination Factors)</h2>
+		<p>
+      Tutti questi fattori di origine sono validi come fattori di destinazione ad eccezione di <code>THREE.SrcAlphaSaturateFactor</code>
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
+		</p>
+	</body>
+</html>

+ 159 - 0
docs/api/it/constants/Materials.html

@@ -0,0 +1,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>

+ 72 - 0
docs/api/it/constants/Renderer.html

@@ -0,0 +1,72 @@
+<!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 WebGLRenderer</h1>
+
+		<h2>Modalità Cull Face</h2>
+		<code>
+		THREE.CullFaceNone
+		THREE.CullFaceBack
+		THREE.CullFaceFront
+		THREE.CullFaceFrontBack
+		</code>
+		<p>
+      [page:constant CullFaceNone] disabilita il face culling.<br />
+      [page:constant CullFaceBack] elimina le facce posteriori (predefinito).<br />
+      [page:constant CullFaceFront] elimina le facce anteriori.<br />
+      [page:constant CullFaceFrontBack] elimina entrambe le facce posteriori e anteriori.
+		</p>
+
+		<h2>Tipi Shadow</h2>
+		<code>
+		THREE.BasicShadowMap
+		THREE.PCFShadowMap
+		THREE.PCFSoftShadowMap
+		THREE.VSMShadowMap
+		</code>
+		<p>
+      Definiscono la proprietà [page:WebGLRenderer.shadowMap.type shadowMap.type] di WebGLRenderer.<br /><br />
+
+      [page:constant BasicShadowMap] fornisce mappe shadow non filtrate - la più veloce, ma con qualità minore.<br />
+      [page:constant PCFShadowMap] filtra le mappe shadow utilizzando l'algoritmo Percentage-Closer Filtering (PFC) (predefinito).<br />
+      [page:constant PCFSoftShadowMap] filtra le mappe shadow utilizzando l'algoritmo Percentage-Closer Filtering (PFC) 
+      con migliori soft shadow soprattutto quando si utilizzano mappe shadow a bassa risoluzione.<br />
+      [page:constant VSMShadowMap] filtra le mappe shadow utilizzando l'algoritmo Variance Shadow Map (VSM). Quando si utilizza VSMShadowMap,
+      anche tutti i ricevitori shadow proiettano shadow.<br />
+		</p>
+
+		<h2>Mappatura dei Toni</h2>
+		<code>
+		THREE.NoToneMapping
+		THREE.LinearToneMapping
+		THREE.ReinhardToneMapping
+		THREE.CineonToneMapping
+		THREE.ACESFilmicToneMapping
+		THREE.CustomToneMapping
+		</code>
+		<p>
+      Definiscono la proprietà [page:WebGLRenderer.toneMapping toneMapping] di WebGLRenderer.
+      Viene utilizzato per approssimare l'aspetto della gamma dinamica (HDR) sul medio della
+      gamma dinamica bassa del monitor di un computer o dello schermo di un dispositivo mobile.
+		</p>
+		<p>
+      THREE.LinearToneMapping, THREE.ReinhardToneMapping, THREE.CineonToneMapping e THREE.ACESFilmicToneMapping sono implementazioni 
+      integrate della mappatura dei toni.
+      THREE.CustomToneMapping prevede un'implementazione personalizzata modificando il codice GLSL dello shader di frammenti del materiale.
+      Vedi l'esempio [example:webgl_tonemapping WebGL / tonemapping].
+		</p>
+
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
+		</p>
+	</body>
+</html>

+ 561 - 0
docs/api/it/constants/Textures.html

@@ -0,0 +1,561 @@
+<!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>Constanti delle Texture</h1>
+
+		<h2>Modalità Mapping</h2>
+		<code>
+		THREE.UVMapping
+		THREE.CubeReflectionMapping
+		THREE.CubeRefractionMapping
+		THREE.EquirectangularReflectionMapping
+		THREE.EquirectangularRefractionMapping
+		THREE.CubeUVReflectionMapping
+		</code>
+
+		<p>
+      Definiscono la modalità di mapping della texture.<br />
+      [page:Constant UVMapping] è la costante predefinita, e mappa la texture usando le coordinate UV della mesh.<br /><br />
+
+      Il resto definisce i tipi di mappatura dell'ambiente.<br /><br />
+
+      [page:Constant CubeReflectionMapping] e [page:Constant CubeRefractionMapping] sono da utilizzare con una [page:CubeTexture CubeTexture], 
+      la quale è composta da sei texture, una per ciascuna faccia del cubo.
+      [page:Constant CubeReflectionMapping] è la predefinita per una [page:CubeTexture CubeTexture]. <br /><br />
+
+      [page:Constant EquirectangularReflectionMapping] e [page:Constant EquirectangularRefractionMapping]
+      sono da utilizzare con una equirectangular environment map. Anche chiamata lat-long map, una texture equirectangular
+      rappresenta una vista a 360 gradi lungo la linea centrale orizzontale e una vista a 180 lungo l'asse verticale, con i bordi 
+      superiore e inferiore dell'immagine corrispondenti ai poli nord e sud di una sfera mappata.<br /><br />
+
+      Vedi l'esempio [example:webgl_materials_envmaps materials / envmaps].
+		</p>
+
+
+		<h2>Modalità Wrapping</h2>
+		<code>
+		THREE.RepeatWrapping
+		THREE.ClampToEdgeWrapping
+		THREE.MirroredRepeatWrapping
+		</code>
+		<p>
+      Definiscono le proprietà [page:Texture.wrapS wrapS] e [page:Texture.wrapT wrapT] della texture, le quali
+      definiscono il wrapping orizzontale e verticale della texture.<br /><br />
+
+      Con [page:constant RepeatWrapping] la texture sarà semplicemente ripetuta all'infinito.<br /><br />
+
+      [page:constant ClampToEdgeWrapping] è la costante predefinita.
+      L'ultimo pixel della texture si estende fino al bordo della mesh.<br /><br />
+
+      Con [page:constant MirroredRepeatWrapping] la texture sarà ripetuta all'infinito, rispecchiando ad ogni ripetizione.
+		</p>
+
+		<h2>Filtri di Ingradimento</h2>
+		<code>
+		THREE.NearestFilter
+		THREE.LinearFilter
+		</code>
+
+		<p>
+      Da usare con la proprietà [page:Texture.magFilter magFilter] della texture,
+      definiscono la funzione di ingrandimento della texture da usare quando il pixel
+      da texturizzare mappa un'area inferiore o uguale a un elemento della texture (texel).<br /><br />
+
+      [page:constant NearestFilter] restituisce il valore dell'elemento della texture che è più vicino 
+      (nella distanza di Manhattan) alle coordinate della texture specificate.<br /><br />
+
+      [page:constant LinearFilter] è l'impostazione predefinita e restituisce la media pesata dei quattro elementi della texture
+      più vicini alle coordinate della texture specificate e può includere elementi wrappati o ripetuti da altre parti della texture,
+      a seconda dei valori di [page:Texture.wrapS wrapS] e [page:Texture.wrapT wrapT], e dall'esatta mappatura.
+		</p>
+
+		<h2>Filtri di Minificazione</h2>
+		<code>
+		THREE.NearestFilter
+		THREE.NearestMipmapNearestFilter
+		THREE.NearestMipmapLinearFilter
+		THREE.LinearFilter
+		THREE.LinearMipmapNearestFilter
+		THREE.LinearMipmapLinearFilter
+		</code>
+
+		<p>
+      Da usare con la proprietà [page:Texture.minFilter minFilter] della texture,
+      definiscono la funzione di minificazione della texture che viene usata ogni volta che il
+      pixel da texturizzare mappa un'area superiore di un elemento della texture (texel).<br /><br />
+
+      Oltre a [page:constant NearestFilter] e [page:constant LinearFilter],
+      le seguenti quattro funzioni possono essere usate per la minificazione:<br /><br />
+
+      [page:constant NearestMipmapNearestFilter] sceglie il mipmap che più si avvicina alle dimensioni del pixel da texturizzare
+      e utilizza il criterio [page:constant NearestFilter] (il texel più vicino al centro del pixel) per produrre
+      un valore di texture.<br /><br />
+
+      [page:constant NearestMipmapLinearFilter] sceglie i due mipmap che più si avvicinano alle dimensioni del pixel da texturizzare
+      e utilizza il criterio [page:constant NearestFilter] per produrre un valore di texture per ogni mipmap. Il valore della texture finale 
+      è una media pesata di questi due valori.<br /><br />
+
+      [page:constant LinearMipmapNearestFilter] sceglie il mipmap che più si avvicina alle dimensioni del pixel da texturizzare
+      e utilizza il criterio [page:constant LinearFilter] ( una media pesata dei quattro texels che più si avvicinano al centro del pixel) per produrre
+      un valore di texture.<br /><br />
+
+      [page:constant LinearMipmapLinearFilter] è l'impostazione predefinita e sceglie i due mipmap che più si avvicinano alle dimensioni del pixel da texturizzare
+      e utilizza il criterio [page:constant LinearFilter] per produrre un valore di texture per ogni mipmap. Il valore della texture finale è una 
+      media pesata di questi due valori.<br /><br />
+
+      Vedi l'esempio [example:webgl_materials_texture_filters materials / texture / filters]
+		</p>
+
+		<h2>Tipi</h2>
+		<code>
+		THREE.UnsignedByteType
+		THREE.ByteType
+		THREE.ShortType
+		THREE.UnsignedShortType
+		THREE.IntType
+		THREE.UnsignedIntType
+		THREE.FloatType
+		THREE.HalfFloatType
+		THREE.UnsignedShort4444Type
+		THREE.UnsignedShort5551Type
+		THREE.UnsignedInt248Type
+		</code>
+		<p>
+      Da usare con la proprietà [page:Texture.type type] della texture, la quale deve corrispondere al formato corretto. Vedi sotto per i dettagli.<br /><br />
+
+      [page:constant UnsignedByteType] è l'impostazione predefinita.
+		</p>
+
+		<h2>Formati</h2>
+		<code>
+		THREE.AlphaFormat
+		THREE.RedFormat
+		THREE.RedIntegerFormat
+		THREE.RGFormat
+		THREE.RGIntegerFormat
+		THREE.RGBAFormat
+		THREE.RGBAIntegerFormat
+		THREE.LuminanceFormat
+		THREE.LuminanceAlphaFormat
+		THREE.DepthFormat
+		THREE.DepthStencilFormat
+		</code>
+		<p>
+      Da usare con la proprietà [page:Texture.format format] della texture, 
+      definiscono come gli elementi di una texture 2d, o `texel`, vengono letti dagli shader.<br /><br />
+
+      [page:constant AlphaFormat] elimina i componenti rosso, verde e blu e legge solo il componente alfa.<br /><br />
+
+      [page:constant RedFormat] elimina i componenti verde e blu e legge solo il componente rosso.<br /><br />
+
+      [page:constant RedIntegerFormat] elimina i componenti verde e blu e legge solo il componente rosso.
+      I texel sono letti come interi invece che come floating point.
+      (può essere utilizzato solo in un contesto di rendering WebGL 2).<br /><br />
+
+      [page:constant RGFormat] elimina i componenti alfa e blu e legge i componenti rosso e verde.
+      (può essere utilizzato solo in un contesto di rendering WebGL 2).<br /><br />
+
+      [page:constant RGIntegerFormat] elimina i componenti alfa e blu e legge i componenti rosso e verde.
+      I texel sono letti come numeri interi invece che come floating point.
+      (può essere utilizzato solo in un contesto di rendering WebGL 2).<br /><br />
+
+      [page:constant RGBAFormat] è l'impostazione predefinita e legge i componenti rosso, verde, blu e alfa.<br /><br />
+
+      [page:constant RGBAIntegerFormat] è l'impostazione di default e legge i componenti rosso, verde, blu e alfa.
+      I texel sono letti come numeri interi invece che come floating point.
+      (può essere utilizzato solo in un contesto di rendering WebGL 2).<br /><br />
+
+      [page:constant LuminanceFormat] legge ogni elemento come un singolo componente di luminanza.
+      Questo viene quindi convertito in floating point, fissato all'intervallo [0,1], e quindi assemblato
+      in un elemento RGBA posizionando il valore di luminanza nei canali rosso, verde e blu, e allegando
+      1.0 al canale alfa.<br /><br />
+
+      [page:constant LuminanceAlphaFormat] legge ogni elemento come un doppio luminanza/alfa. Lo stesso processo si verifica
+      come per [page:constant LuminanceFormat], tranne per il fatto che il canale alfa può avere valori diversi da `1.0`.<br /><br />
+
+      [page:constant DepthFormat] legge ogni elemento come un singolo valore depth, lo converte in floating point e si blocca 
+      nell'intervallo [0,1]. Questa è l'impostazione predefinita per [page:DepthTexture DepthTexture].<br /><br />
+
+      [page:constant DepthStencilFormat] legge ogni elemento come una coppia di valori depth e stencil.
+      Il componente depth della coppia viene interpretato come in [page:constant DepthFormat].
+      Il componente stencil viene interpretato in base al formato interno depth + stencil.<br /><br />
+
+      Si noti che la texture deve avere impostato il [page:Texture.type tipo] corretto, come descritto sopra.
+      Vedi [link:https://developer.mozilla.org/en/docs/Web/API/WebGLRenderingContext/texImage2D WebGLRenderingContext.texImage2D] 
+      per maggiori dettagli.
+		</p>
+
+		<h2>Formati Texture Compressi DDS / ST3C</h2>
+		<code>
+		THREE.RGB_S3TC_DXT1_Format
+		THREE.RGBA_S3TC_DXT1_Format
+		THREE.RGBA_S3TC_DXT3_Format
+		THREE.RGBA_S3TC_DXT5_Format
+		</code>
+		<p>
+      Da usare con la prorietà [page:Texture.format formato] della [page:CompressedTexture CompressedTexture],
+      questi richiedono il supporto per l'estensione 
+      [link:https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_s3tc/ WEBGL_compressed_texture_s3tc].<br /><br />
+
+      Questi sono quattro formati [link:https://en.wikipedia.org/wiki/S3_Texture_Compression S3TC] disponibili tramite questa estensione. Questi sono:<br />
+
+      [page:constant RGB_S3TC_DXT1_Format]: Un'immagine compressa DXT1 in un formato immagine RGB.<br />
+      [page:constant RGBA_S3TC_DXT1_Format]: Un'immagine compressa DXT1 in un formato immagine RGBA con un semplice valore alfa on/off.<br />
+      [page:constant RGBA_S3TC_DXT3_Format]: Un'immagine compressa DXT3 in un formato immagine RGBA. Comparato con una texture 32-bit, offre una compressione 4:1.<br />
+      [page:constant RGBA_S3TC_DXT5_Format]: Un'immagine compressa DXT5 in un formato immagine RGBA. Anche questa costante permette una compressione 4:1,
+      ma differisce dalla compressione DXT3 nel modo in cui viene eseguita la compressione alfa.<br />
+		</p>
+
+		<h2>Formati Texture Compressi PVRTC</h2>
+		<code>
+		THREE.RGB_PVRTC_4BPPV1_Format
+		THREE.RGB_PVRTC_2BPPV1_Format
+		THREE.RGBA_PVRTC_4BPPV1_Format
+		THREE.RGBA_PVRTC_2BPPV1_Format
+		</code>
+		<p>
+      Da usare con la prorietà del [page:Texture.format formato] della [page:CompressedTexture CompressedTexture],
+      questi richiedono il supporto per l'estensione 
+      [link:https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_pvrtc/ WEBGL_compressed_texture_pvrtc].<br />
+
+      PVRTC è in genere disponibile solo su dispositivi mobili con chipset PowerVR, che sono principalmente dispositivi Apple.<br /><br />
+
+      Questi sono quattro formati [link:https://en.wikipedia.org/wiki/PVRTC PVRTC] disponibili tramite questa estensione. Questi sono:<br />
+
+      [page:constant RGB_PVRTC_4BPPV1_Format]: compressione RGB in modalità 4-bit. un blocco per ogni pixel 4×4.<br />
+      [page:constant RGB_PVRTC_2BPPV1_Format]: compressione RGB in modalità 2-bit. un blocco per ogni pixel 8×4.<br />
+      [page:constant RGBA_PVRTC_4BPPV1_Format]: compressione RGBA in modalità 4-bit. un blocco per ogni pixel 4×4.<br />
+      [page:constant RGBA_PVRTC_2BPPV1_Format]: compressione RGBA in modalità 2-bit. un blocco per ogni pixel 8×4.<br />
+		</p>
+
+		<h2>Formati Texture Compressi ETC</h2>
+		<code>
+		THREE.RGB_ETC1_Format
+		THREE.RGB_ETC2_Format
+		THREE.RGBA_ETC2_EAC_Format
+		</code>
+		<p>
+      Da usare con la prorietà del [page:Texture.format formato] della [page:CompressedTexture CompressedTexture],
+      questi richiedono il supporto per le estensioni 
+      [link:https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_etc1/ WEBGL_compressed_texture_etc1] (ETC1) o
+      [link:https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_etc/ WEBGL_compressed_texture_etc]
+		  (ETC2).<br /><br />
+		</p>
+
+		<h2>Formati Texture Compressi ASTC</h2>
+		<code>
+		THREE.RGBA_ASTC_4x4_Format
+		THREE.RGBA_ASTC_5x4_Format
+		THREE.RGBA_ASTC_5x5_Format
+		THREE.RGBA_ASTC_6x5_Format
+		THREE.RGBA_ASTC_6x6_Format
+		THREE.RGBA_ASTC_8x5_Format
+		THREE.RGBA_ASTC_8x6_Format
+		THREE.RGBA_ASTC_8x8_Format
+		THREE.RGBA_ASTC_10x5_Format
+		THREE.RGBA_ASTC_10x6_Format
+		THREE.RGBA_ASTC_10x8_Format
+		THREE.RGBA_ASTC_10x10_Format
+		THREE.RGBA_ASTC_12x10_Format
+		THREE.RGBA_ASTC_12x12_Format
+		</code>
+		<p>
+      Da usare con la prorietà del [page:Texture.format formato] della [page:CompressedTexture CompressedTexture],
+      questi richiedono il supporto per l'estensione 
+      [link:https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/ WEBGL_compressed_texture_astc].<br />
+		</p>
+
+		<h2>Formato Texture Compresso BPTCt</h2>
+		<code>
+		THREE.RGBA_BPTC_Format
+		</code>
+		<p>
+      Da usare con la prorietà del [page:Texture.format formato] della [page:CompressedTexture CompressedTexture],
+      questi richiedono il supporto per l'estensione 
+      [link:https://www.khronos.org/registry/webgl/extensions/EXT_texture_compression_bptc/ EXT_texture_compression_bptc].<br />
+		</p>
+
+		<h2>Formati Interni</h2>
+		<code>
+		'ALPHA'
+		'RGB'
+		'RGBA'
+		'LUMINANCE'
+		'LUMINANCE_ALPHA'
+		'RED_INTEGER'
+		'R8'
+		'R8_SNORM'
+		'R8I'
+		'R8UI'
+		'R16I'
+		'R16UI'
+		'R16F'
+		'R32I'
+		'R32UI'
+		'R32F'
+		'RG8'
+		'RG8_SNORM'
+		'RG8I'
+		'RG8UI'
+		'RG16I'
+		'RG16UI'
+		'RG16F'
+		'RG32I'
+		'RG32UI'
+		'RG32F'
+		'RGB565'
+		'RGB8'
+		'RGB8_SNORM'
+		'RGB8I'
+		'RGB8UI'
+		'RGB16I'
+		'RGB16UI'
+		'RGB16F'
+		'RGB32I'
+		'RGB32UI'
+		'RGB32F'
+		'RGB9_E5'
+		'SRGB8'
+		'R11F_G11F_B10F'
+		'RGBA4'
+		'RGBA8'
+		'RGBA8_SNORM'
+		'RGBA8I'
+		'RGBA8UI'
+		'RGBA16I'
+		'RGBA16UI'
+		'RGBA16F'
+		'RGBA32I'
+		'RGBA32UI'
+		'RGBA32F'
+		'RGB5_A1'
+		'RGB10_A2'
+		'RGB10_A2UI'
+		'SRGB8_ALPHA8'
+		'DEPTH_COMPONENT16'
+		'DEPTH_COMPONENT24'
+		'DEPTH_COMPONENT32F'
+		'DEPTH24_STENCIL8'
+		'DEPTH32F_STENCIL8'
+		</code>
+
+		<p>
+      Attenzione: la modifica di un formato interno di una texture avrà effetto solo 
+      quando si utilizza un contesto di rendering WebGL 2.<br /><br />
+
+      Da usare con la proprietà [page:Texture.internalFormat internalFormat] della texture,
+      definiscono come gli elementi della texture, o `toxel`, sono memorizzati nella GPU.<br /><br />
+
+      [page:constant R8] memorizza il componente rosso su 8 bit.<br /><br />
+
+  		[page:constant R8_SNORM] memorizza il componente rosso su 8 bit. Il componenete viene archiviato come normalizzato. <br /><br />
+
+		[page:constant R8I] memorizza il componente rosso su 8 bit. Il componenete viene archiviato come un intero. <br /><br />
+
+		[page:constant R8UI] memorizza il componente rosso su 8 bit. Il componenete viene archiviato come un intero senza segno. <br /><br />
+
+		[page:constant R16I] memorizza il componente rosso su 16 bit. Il componenete viene archiviato come un intero. <br /><br />
+
+		[page:constant R16UI] memorizza il componente rosso su 16 bit. Il componenete viene archiviato come un intero senza segno. <br /><br />
+
+		[page:constant R16F] memorizza il componente rosso su 16 bit. Il componenete viene archiviato come un floating point. <br /><br />
+
+		[page:constant R32I] memorizza il componente rosso su 32 bit. Il componenete viene archiviato come un intero. <br /><br />
+
+		[page:constant R32UI] memorizza il componente rosso su 32 bit.Il componenete viene archiviato come un intero senza segno. <br /><br />
+
+		[page:constant R32F] memorizza il componente rosso su 32 bit. Il componenete viene archiviato come un floating point. <br /><br />
+
+		[page:constant RG8] memorizza i componenti rosso e verde su 8 bit ciascuno.<br /><br />
+
+		[page:constant RG8_SNORM] memorizza i componenti rosso e verde su 8 bit ciascuno.
+		Ogni componente viene archiviato come normalizzato.
+		<br /><br />
+
+		[page:constant RG8I] memorizza i componenti rosso e verde su 8 bit ciascuno.
+		Ogni componente viene archiviato come un intero.
+		<br /><br />
+
+		[page:constant RG8UI] memorizza i componenti rosso e verde su 8 bit ciascuno.
+		Ogni componente viene archiviato come un intero senza segno.
+		<br /><br />
+
+		[page:constant RG16I] memorizza i componenti rosso e verde su 16 bit ciascuno.
+		Ogni componente viene archiviato come un intero.
+		<br /><br />
+
+		[page:constant RG16UI] memorizza i componenti rosso e verde su 16 bit ciascuno.
+		Ogni componente viene archiviato come un intero senza segno.
+		<br /><br />
+
+		[page:constant RG16F] memorizza i componenti rosso e verde su 16 bit ciascuno.
+	  Ogni componente viene archiviato come un floating point.
+		<br /><br />
+
+		[page:constant RG32I] memorizza i componenti rosso e verde su 32 bit ciascuno.
+		Ogni componente viene archiviato come un intero.
+		<br /><br />
+
+		[page:constant RG32UI] memorizza i componenti rosso e verde su 32 bit ciascuno.
+		Ogni componente viene archiviato come un intero senza segno.
+		<br /><br />
+
+		[page:constant RG32F] memorizza i componenti rosso e verde su 32 bit ciascuno.
+		Ogni componente viene archiviato come un floating point.
+		<br /><br />
+
+		[page:constant RGB8] memorizza i componenti rosso, verde e blu su 8 bit ciascuno.
+    <br /><br />
+
+		[page:constant RGB8_SNORM] memorizza i componenti rosso, verde e blu su 8 bit ciascuno.
+		Ogni componente viene archiviato come normalizzato.
+		<br /><br />
+
+		[page:constant RGB8I] memorizza i componenti rosso, verde e blu su 8 bit ciascuno.
+		Ogni componente viene archiviato come un intero.
+		<br /><br />
+
+		[page:constant RGB8UI] memorizza i componenti rosso, verde e blu su 8 bit ciascuno.
+		Ogni componente viene archiviato come un intero senza segno.
+		<br /><br />
+
+		[page:constant RGB16I] memorizza i componenti rosso, verde e blu su 16 bit ciascuno.
+		Ogni componente viene archiviato come un intero.
+		<br /><br />
+
+		[page:constant RGB16UI] memorizza i componenti rosso, verde e blu su 16 bit ciascuno.
+		Ogni componente viene archiviato come un intero senza segno.
+		<br /><br />
+
+		[page:constant RGB16F] memorizza i componenti rosso, verde e blu su 16 bit ciascuno.
+		Ogni componente viene archiviato come un floating point
+		<br /><br />
+
+		[page:constant RGB32I] memorizza i componenti rosso, verde e blu su 32 bit ciascuno.
+		Ogni componente viene archiviato come un intero.
+		<br /><br />
+
+		[page:constant RGB32UI] memorizza i componenti rosso, verde e blu su 32 bit ciascuno.
+		Ogni componente viene archiviato come un intero senza segno.
+		<br /><br />
+
+		[page:constant RGB32F] memorizza i componenti rosso, verde e blu su 32 bit ciascuno.
+		Ogni componente viene archiviato come un floating point
+		<br /><br />
+
+		[page:constant R11F_G11F_B10F] memorizza i componenti rosso, verde e blu rispettivamente 11 bit, 11 bit, e 10bit.
+		Ogni componente viene archiviato come un floating point.
+		<br /><br />
+
+		[page:constant RGB565] memorizza i componenti rosso, verde e blu rispettivamente su 5 bit, 6 bit, e 5 bit.<br /><br />
+
+		[page:constant RGB9_E5] memorizza i componenti rosso, verde e blu su 9 bit ciascuno.<br /><br />
+
+		[page:constant RGBA8] memorizza i componenti rosso, verde, blu e alfa su 8 bit ciascuno.<br /><br />
+
+		[page:constant RGBA8_SNORM] memorizza i componenti rosso, verde, blu e alfa su 8 bit ciascuno.
+		Ogni componente viene archiviato come normalizzato.
+		<br /><br />
+
+		[page:constant RGBA8I] memorizza i componenti rosso, verde, blu e alfa su 8 bit ciascuno.
+		Ogni componente viene archiviato come un intero.
+		<br /><br />
+
+		[page:constant RGBA8UI] memorizza i componenti rosso, verde, blu e alfa su 8 bit ciascuno.
+		Ogni componente viene archiviato come un intero senza segno.
+		<br /><br />
+
+		[page:constant RGBA16I] memorizza i componenti rosso, verde, blu e alfa su 16 bit ciascuno.
+		Ogni componente viene archiviato come un intero.
+		<br /><br />
+
+		[page:constant RGBA16UI] memorizza i componenti rosso, verde, blu e alfa su 16 bit ciascuno.
+		Ogni componente viene archiviato come un intero senza segno.
+		<br /><br />
+
+		[page:constant RGBA16F] memorizza i componenti rosso, verde, blu e alfa su 16 bit ciascuno.
+		Ogni componente viene archiviato come un floating point.
+		<br /><br />
+
+		[page:constant RGBA32I] memorizza i componenti rosso, verde, blu e alfa su 32 bit ciascuno.
+		Ogni componente viene archiviato come un intero.
+		<br /><br />
+
+		[page:constant RGBA32UI] memorizza i componenti rosso, verde, blu e alfa su 32 bit ciascuno.
+		Ogni componente viene archiviato come un intero senza segno.
+		<br /><br />
+
+		[page:constant RGBA32F] memorizza i componenti rosso, verde, blu e alfa su 32 bit ciascuno.
+		Ogni componente viene archiviato come un floating point.
+		<br /><br />
+
+		[page:constant RGB5_A1] memorizza i componenti rosso, verde, blu e alfa rispettivamente su 5 bit, 5 bit, 5 bit e 1 bit.<br /><br />
+
+		[page:constant RGB10_A2] memorizza i componenti rosso, verde, blu e alfa rispettivamente su 10 bit, 10 bit, 10 bit e 2 bit.<br /><br />
+
+		[page:constant RGB10_A2UI] memorizza i componenti rosso, verde, blu e alfa rispettivamente su 10 bit, 10 bit, 10 bit e 2 bit.
+		Ogni componente viene archiviato come un intero senza segno.
+		<br /><br />
+
+		[page:constant SRGB8] memorizza i componenti rosso, verde e blu su 8 bit ciascuno.<br /><br />
+
+		[page:constant SRGB8_ALPHA8] memorizza i componenti rosso, verde, blu e alfa su 8 bit ciascuno.<br /><br />
+
+		[page:constant DEPTH_COMPONENT16] memorizza il componente depth su 16 bit.<br /><br />
+
+		[page:constant DEPTH_COMPONENT24] memorizza il componente depth su 24 bit.<br /><br />
+
+		[page:constant DEPTH_COMPONENT32F] memorizza il componente depth su 32 bit. Il componente viene archiviato come un floating point.<br /><br />
+
+		[page:constant DEPTH24_STENCIL8] memorizza i componenti depth e stencil rispettivamente su 24 bit e 8 bit.
+    Il componente stencil viene archiviato come un intero senza segno.
+		<br /><br />
+
+		[page:constant DEPTH32F_STENCIL8] memorizza i componenti depth e stencil rispettivamente su 32 bit e 8 bit.
+		Il componente depth viene archiviato come un floating point, il componente stencil viene archiviato come un intero senza segno.
+		<br /><br />
+
+    Si noti che la texture deve avere impostato il corretto [page:Texture.type tipo],
+    come anche il [page:Texture.format formato] corretto.
+
+		Vedi [link:https://developer.mozilla.org/en/docs/Web/API/WebGLRenderingContext/texImage2D WebGLRenderingContext.texImage2D], e
+		[link:https://developer.mozilla.org/en-US/docs/Web/API/WebGL2RenderingContext/texImage3D WebGL2RenderingContext.texImage3D],
+		per maggiori informazioni relativamente alle possibili combinazioni del [page:Texture.format formato], dell'[page:Texture.internalFormat internalFormat],
+		e del [page:Texture.type tipo].<br /><br />
+
+    Per informazioni più approfondite sui formati interni, puoi anche fare riferimento direttamente alla 
+    [link:https://www.khronos.org/registry/webgl/specs/latest/2.0/ Specifica WebGL2] e alla 
+    [link:https://www.khronos.org/registry/OpenGL/specs/es/3.0/es_spec_3.0.pdf Specifica OpenGL ES 3.0].
+		</p>
+
+		<h2>Encoding</h2>
+		<code>
+		THREE.LinearEncoding
+		THREE.sRGBEncoding
+		THREE.BasicDepthPacking
+		THREE.RGBADepthPacking
+		</code>
+		<p>
+      Da usare con la proprietà [page:Texture.encoding encoding] della Texture.<br /><br />
+
+      Se il tipo di encoding viene modificato dopo che la texture è già stata utilizzata dal materiale,
+      sarà necessario impostare il valore [page:Material.needsUpdate Material.needsUpdate] a `true` per fare in modo
+      che il materiale venga ricompilato.<br /><br />
+      
+      [page:constant LinearEncoding] è l'impostazione predefinita.
+      Valori diversi da questo sono validi solo per la mappa di un materiale, envMap ed emissiveMap.
+		</p> 
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
+		</p>
+	</body>
+</html>

+ 236 - 0
docs/api/it/core/BufferAttribute.html

@@ -0,0 +1,236 @@
+<!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>[name]</h1>
+
+		<p class="desc">
+      Questa classe memorizza i dati per un attributo (come le posizioni dei vertici, gli indici delle facce, le normali,
+      i colori, le coordinate UV e alcuni attributi personalizzati) associato ad una [page:BufferGeometry],
+      che consente un passaggio più efficiente dei dati alla GPU. Consulta questa pagina per i dettagli ed un esempo di
+      utilizzo. Quando si lavora con dati di tipo vettoriale, i metodi helper <i>.fromBufferAttribute( attribute, index )</i>
+      sulle classi [page:Vector2.fromBufferAttribute Vector2],
+      [page:Vector3.fromBufferAttribute Vector3],
+      [page:Vector4.fromBufferAttribute Vector4] e [page:Color.fromBufferAttribute Color] possono essere utili.
+		</p>
+
+		<h2>Costruttore</h2>
+		<h3>[name]( [param:TypedArray array], [param:Integer itemSize], [param:Boolean normalized] )</h3>
+		<p>
+		  [page:TypedArray array] -- Deve essere un [link:https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/TypedArray TypedArray].
+		  Utilizzato per istanziare il buffer. <br />
+      Questo array dovrebbe avere gli elementi <code>itemSize * numVertices</code>
+      dove numVertices è il numero di vertici della [page:BufferGeometry BufferGeometry] associata.<br /><br />
+
+      [page:Integer itemSize] -- il numero di valori dell'array che deve essere associato ad un particolare vertice.
+      Per esempio, se questo atttibuto memorizza un vettore a 3 componenti (come posizione, normale o colore), 
+      itemSize dovrebbe essere 3.<br /><br />
+
+      [page:Boolean normalized] -- (opzionale) Si applica solo ai dati interi. Indica il modo in cui i dati sottostanti 
+      del buffer si adattano ai valori del codice GLSL. Ad esempio, se l'[page:TypedArray array] è un'istanza di UInt16Array,
+      e [page:Boolean normalized] è a true, i valori `0 - +65535` nei dati dell'array saranno mappati su 0.0f - +1.0f nell'attributo GLSL.
+      Un Int16Array (con segno) sarà mappato da -32768 - +32767 a -1.0f - +1.0f. Se [page:Boolean normalized] è a false, i valori 
+      verranno convertiti in float non modificati, p.e. 32767 diventa 32767.0f.
+		</p>
+
+		<h2>Proprietà</h2>
+
+		<h3>[property:TypedArray array]</h3>
+		<p>
+      L'[page:TypedArray array] contente i dati memorizzati nel buffer.
+		</p>
+
+		<h3>[property:Integer count]</h3>
+		<p>
+      Memorizza la lunghezza dell'[page:BufferAttribute.array array] divisa per [page:BufferAttribute.itemSize itemSize].<br /><br />
+
+      Se il buffer memorizza un vettore a 3 componenti (come una posizione, una normale o un colore),
+      questo conterà il numero dei vettori memorizzati.
+		</p>
+
+		<h3>[property:Boolean isBufferAttribute]</h3>
+		<p>
+      Flag di sola lettura per verificare se un dato oggetto è di tipo [name].
+		</p>
+
+		<h3>[property:Integer itemSize]</h3>
+		<p>
+      La lunghezza dei vettori che vengono memorizzati nell'[page:BufferAttribute.array array].
+    </p>
+
+		<h3>[property:String name]</h3>
+		<p>
+      Un nome opzionale per questa istanza dell'attributo. Il valore predefinito è una stringa vuota.
+		</p>
+
+		<h3>[property:Boolean needsUpdate]</h3>
+		<p>
+      Flag che indica che questo attributo è stato modificato e deve essere rinviato alla GPU.
+      Impostalo a true quando modifichi il valore dell'array.<br /><br />
+
+      Impostando questa proprietà a true incrementa, inoltre, la [page:BufferAttribute.version versione].
+		</p>
+
+		<h3>[property:Boolean normalized]</h3>
+		<p>
+      Indica il modo in cui i dati sottostanti del buffer si adattano ai valori del codice shader GLSL.
+      Vedi il costruttore sopra per i dettagli.
+		</p>
+
+		<h3>[property:Function onUploadCallback]</h3>
+		<p>
+      Una funzione di callback che viene eseguita dopo che il Renderer ha trasferito i dati dell'array dell'attributo
+      alla GPU. 
+		</p>
+
+		<h3>[property:Object updateRange]</h3>
+		<p>Oggetto contenente:<br />
+			[page:Integer offset]: Il valore predefinito è `0`. Posizione da cui inizia l'aggiornamento.<br />
+			[page:Integer count]: Il valore predefinito è `-1`, il che significa non utilizzare intervalli di aggiornamento. <br /><br />
+
+      Può essere utilizzato solo per aggiornare alcuni componenti dei vettori memorizzati (per esempio, solo
+      il componente relativo al colore).
+		</p>
+
+		<h3>[property:Usage usage]</h3>
+		<p>
+      Definisce il modello di utilizzo previsto per l'archivio dati a fini di ottimizzazione. Corrisponde al paramentro `usage`
+      di [link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/bufferData WebGLRenderingContext.bufferData]().
+      Il valore predefinito è [page:BufferAttributeUsage StaticDrawUsage]. Vedi le [page:BufferAttributeUsage costanti] di utilizzo 
+      per tutti i valori possibili. <br /><br />
+
+      Nota: Dopo l'utilizzo iniziale di un buffer, il suo utilizzo non può essere modificato. Invece, istanziane uno nuovo e imposta
+      l'utilizzo desiderato prima del rendering successivo.
+		</p>
+
+		<h3>[property:Integer version]</h3>
+		<p>
+      Un numero di versione, incrementato ogni volta che la proprietà [page:BufferAttribute.needsUpdate needsUpdate] viene impostata a true.
+    </p>
+
+		<h2>Metodi</h2>
+
+		<h3>[method:this applyMatrix3]( [param:Matrix3 m] )</h3>
+		<p>
+      Applica la matrice [page:Matrix3 m] ad ogni elemento Vector3 di questo BufferAttribute.
+    </p>
+
+		<h3>[method:this applyMatrix4]( [param:Matrix4 m] )</h3>
+		<p>
+      Applica la matrice [page:Matrix4 m] ad ogni elemento Vector3 di questo BufferAttribute.  
+    </p>
+
+		<h3>[method:this applyNormalMatrix]( [param:Matrix3 m] )</h3>
+		<p>
+      Applica la matrice normale [page:Matrix3 m] ad ogni elemento Vector3 di questo BufferAttribute.
+    </p>
+
+		<h3>[method:this transformDirection]( [param:Matrix4 m] )</h3>
+		<p>
+      Applica la matrice [page:Matrix4 m] ad ogni elemento Vector3 di questo BufferAttribute, interpretando gli elementi come vettori direzionali.
+    </p>
+
+		<h3>[method:BufferAttribute clone]() </h3>
+		<p>Restituisce una copia di questo bufferAttribute.</p>
+
+		<h3>[method:this copy]( [param:BufferAttribute bufferAttribute] )</h3>
+		<p>Copia un altro BufferAttribute in questo BufferAttribute.</p>
+
+		<h3>[method:this copyArray]( array ) </h3>
+		<p>
+      Copia l'array fornito qui (il quale può essere un normale array o un array tipizzato)
+      nell'[page:BufferAttribute.array array].<br /><br />
+
+      Vedi [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/set TypedArray.set]
+      per le note sui requisiti se si copia un TypedArray.
+		</p>
+
+		<h3>[method:this copyAt] ( [param:Integer index1], [param:BufferAttribute bufferAttribute], [param:Integer index2] ) </h3>
+		<p>Copia un vettore da bufferAttribute[index2] a [page:BufferAttribute.array array][index1].</p>
+
+		<h3>[method:this copyColorsArray]( [param:Array colors] ) </h3>
+		<p>Copia un array che rappresenta i valori dei colori RGB nell'[page:BufferAttribute.array array].</p>
+
+		<h3>[method:this copyVector2sArray]( [param:Array vectors] ) </h3>
+		<p>Copia un array che rappresenta [page:Vector2]s nell'[page:BufferAttribute.array array].</p>
+
+		<h3>[method:this copyVector3sArray]( [param:Array vectors] ) </h3>
+		<p>Copia un array che rappresenta [page:Vector3]s nell'[page:BufferAttribute.array array].</p>
+
+		<h3>[method:this copyVector4sArray]( [param:Array vectors] ) </h3>
+		<p>Copia un array che rappresenta [page:Vector4]s nell'[page:BufferAttribute.array array].</p>
+
+		<h3>[method:Number getX]( [param:Integer index] ) </h3>
+		<p>Restituisce il componente x del vettore in corrispondenza dell'indice specificato.</p>
+
+		<h3>[method:Number getY]( [param:Integer index] ) </h3>
+		<p>Restituisce il componente y del vettore in corrispondenza dell'indice specificato.</p>
+
+		<h3>[method:Number getZ]( [param:Integer index] ) </h3>
+		<p>Restituisce il componente z del vettore in corrispondenza dell'indice specificato.</p>
+
+		<h3>[method:Number getW]( [param:Integer index] ) </h3>
+		<p>Restituisce il componente w del vettore in corrispondenza dell'indice specificato.</p>
+
+		<h3>[method:this onUpload]( [param:Function callback] ) </h3>
+		<p>
+      Imposta il valore della proprietà onUploadCallback.<br /><br />
+      Nel [example:webgl_buffergeometry WebGL / Buffergeometry] questo metodo viene utilizzato per 
+      liberare memoria dopo che il buffer è stato trasferito alla GPU.
+		</p>
+
+		<h3>[method:this set] ( [param:Array value], [param:Integer offset] ) </h3>
+		<p>
+		  value -- un [page:Array] o [page:TypedArray] dal quale copiare i valori. <br />
+		  offset -- (opzionale) indice dell'[page:BufferAttribute.array array] da cui iniziare la copia.<br /><br />
+
+      Chiama [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/set TypedArray.set]( [page:Array value], [page:Integer offset] )
+      sull'[page:BufferAttribute.array array].<br /><br />
+
+      In particolare, si veda questa pagina per i requisiti sul [page:Array value]
+      che deve essere un [page:TypedArray].
+		</p>
+
+		<h3>[method:this setUsage] ( [param:Usage value] ) </h3>
+		<p>
+      Imposta [page:BufferAttribute.usage usage] a value. Vedi le [page:BufferAttributeUsage costanti] di utilizzo per tutti i possibili valori di input.<br /><br />
+
+      Nota: Dopo l'utilizzo iniziale di un buffer, il suo utilizzo non può cambiare. Invece, istanziane uno nuovo e 
+      imposta l'utilizzo desiderato prima del rendering successivo.
+		</p>
+
+		<h3>[method:this setX]( [param:Integer index], [param:Float x] ) </h3>
+		<p>Imposta il componente x del vettore in corrispondenza dell'indice specificato.</p>
+
+		<h3>[method:this setY]( [param:Integer index], [param:Float y] ) </h3>
+		<p>Imposta il componente y del vettore in corrispondenza dell'indice specificato.</p>
+
+		<h3>[method:this setZ]( [param:Integer index], [param:Float z] ) </h3>
+		<p>Imposta il componente z del vettore in corrispondenza dell'indice specificato.</p>
+
+		<h3>[method:this setW]( [param:Integer index], [param:Float w] ) </h3>
+		<p>Imposta il componente w del vettore in corrispondenza dell'indice specificato.</p>
+
+		<h3>[method:this setXY]( [param:Integer index], [param:Float x], [param:Float y] ) </h3>
+		<p>Imposta i componenti x e y del vettore in corrispondenza dell'indice specificato.</p>
+
+		<h3>[method:this setXYZ]( [param:Integer index], [param:Float x], [param:Float y], [param:Float z] ) </h3>
+		<p>Imposta i componenti x, y e z del vettore in corrispondenza dell'indice specificato.</p>
+
+		<h3>[method:this setXYZW]( [param:Integer index], [param:Float x], [param:Float y], [param:Float z], [param:Float w] ) </h3>
+		<p>Imposta i componenti x, y, z e w del vettore in corrispondenza dell'indice specificato.</p>
+
+
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 319 - 0
docs/api/it/core/BufferGeometry.html

@@ -0,0 +1,319 @@
+<!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>[name]</h1>
+
+		<p>
+      Una rappresentazione della geometria di mesh, di linee o di punti. Include posizioni di vertici, indici della faccia,
+      normali, colori, coordinate UV, e attributi personalizzati all'interno dei buffer, riducendo il costo del passaggio
+      di tutti questi dati alla GPU.
+		</p>
+		<p>
+      Per leggere e modificare dati negli attributi della BufferGeometry, vedi la documentazione di [page:BufferAttribute].
+		</p>
+
+		<h2>Codice di Esempio</h2>
+		<code>
+		const geometry = new THREE.BufferGeometry();
+		// crea una semplice figura quadrata. Duplichiamo i vertici top left e bottom right
+		// perché ogni vertice ha bisogno di apparire una volta per triangolo.
+		const vertices = new Float32Array( [
+			-1.0, -1.0,  1.0,
+			 1.0, -1.0,  1.0,
+			 1.0,  1.0,  1.0,
+
+			 1.0,  1.0,  1.0,
+			-1.0,  1.0,  1.0,
+			-1.0, -1.0,  1.0
+		] );
+
+		// itemSize = 3 perché ci osno 3 valori (componenti) per vertice
+		geometry.setAttribute( 'position', new THREE.BufferAttribute( vertices, 3 ) );
+		const material = new THREE.MeshBasicMaterial( { color: 0xff0000 } );
+		const mesh = new THREE.Mesh( geometry, material );
+		</code>
+
+		<h2>Esempi</h2>
+		<p>
+			[example:webgl_buffergeometry Mesh with non-indexed faces]<br />
+			[example:webgl_buffergeometry_indexed Mesh with indexed faces]<br />
+			[example:webgl_buffergeometry_lines Lines]<br />
+			[example:webgl_buffergeometry_lines_indexed Indexed Lines]<br />
+			[example:webgl_buffergeometry_custom_attributes_particles Particles]<br />
+			[example:webgl_buffergeometry_rawshader Raw Shaders]
+		</p>
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name]()</h3>
+		<div>
+      Crea un nuovo [name]. Inoltre imposta alcune proprietà al valore predefinito.
+		</div>
+
+
+		<h2>Proprietà</h2>
+
+		<h3>[property:Object attributes]</h3>
+		<p>
+      Questo hashmap ha come id il nome dell'attributo da impostare e come valore il [page:BufferAttribute buffer] su cui impostarlo.
+      Piuttosto che accedere a questa proprietà direttamente, usa [page:.setAttribute] e [page:.getAttribute] per accedere agli attributi
+      della geometria.
+		</p>
+
+		<h3>[property:Box3 boundingBox]</h3>
+		<p>
+      Bounding box per la bufferGeometry, che può essere calcolato con 
+      [page:.computeBoundingBox](). Il valore predefinito è `null`.
+		</p>
+
+		<h3>[property:Sphere boundingSphere]</h3>
+		<p>
+      Bounding sphere per la bufferGeometry, che può essere calcolato con 
+      [page:.computeBoundingSphere](). Il valore predefinito è `null`.
+		</p>
+
+		<h3>[property:Object drawRange]</h3>
+		<p>
+      Determina la parte della geometria da visualizzare. Non dovrebbe essere impostato
+      direttamente, usa invece [page:.setDrawRange]. Il valore predefinito è
+			<code>
+				{ start: 0, count: Infinity }
+			</code>
+      Per la BufferGeometry non indicizzata, count è il numero di vertici da visualizzare.
+      Per la BufferGeometry indicizzata, count è il numero di indici da visualizzare.
+		</p>
+
+		<h3>[property:Array groups]</h3>
+		<p>
+      Divide la geometria in gruppi, ognuno dei quali verrà renderizzato in una chimata draw WebGL separata.
+      Ci permette che un array di materiali venga usato con una geometria.<br /><br />
+
+      Ogni gruppo è un oggetto della forma:
+      <code>{ start: Integer, count: Integer, materialIndex: Integer }</code>
+      dove start specifica il primo elemento nella chiamata draw - il primo vertice per la geometria non
+      indicizzata, altrimenti il primo indice del triangolo. Count specifica quanti vertici (o indici) sono
+      inclusi, e materialIndex specifica l'indice dell'array del materiale da utilizzare.<br /><br />
+
+      Usa [page:.addGroup] per aggiungere gruppi, piuttosto che modificare questo array direttamente.<br /><br />
+
+      Ogni vertice e indice deve appartenere esattamente ad un gruppo - i gruppi non devono condividere vertici o
+      indici, e non devono lasciare vertici o indici inutilizzati.
+		</p>
+
+
+		<!-- Note: groups used to be called drawCalls
+
+		<h3>[property:Array drawcalls]</h3>
+		<p>
+		For geometries that use indexed triangles, this Array can be used to split the object
+		into multiple WebGL draw calls. Each draw call will draw some subset of the vertices
+		in this geometry using the configured [page:Material shader]. This may be necessary if,
+		for instance, you have more than 65535 vertices in your object.
+		</p> -->
+
+
+		<h3>[property:Integer id]</h3>
+		<p>Numero univoco per questa istanza della bufferGeometry.</p>
+
+		<h3>[property:BufferAttribute index]</h3>
+		<p>
+      Consente di riutilizzare i vertici su più triangoli; viene chiamato "indexed triangles".
+      Ogni triangolo è associato con gli indici di tre vertici. Questo attributo quindi memorizza 
+      l'indice di ogni vertice per ogni faccia del triangolo.
+
+      Se questo attributo non è impostato, il [page:WebGLRenderer renderer] assume che ogni 3 posizioni contigue
+      rappresentano un singolo triangolo.
+
+      Il valore predefinito è `null`.
+		</p>
+
+		<h3>[property:Boolean isBufferGeometry]</h3>
+		<p>
+      Flag di sola lettura per verificare se un dato oggetto è di tipo [name].
+		</p>
+
+		<h3>[property:Object morphAttributes]</h3>
+		<p>
+      Hashmap di BufferAttribute contenente i dettagli dei target morph delle geometrie.<br />
+      Nota: Una volta che la geometria è stata renderizzata, i dati dell'attributo morph non possono essere modificati.
+      Dovrai chiamare [page:.dispose](), e creare una nuova istanza della [name].
+		</p>
+
+		<h3>[property:Boolean morphTargetsRelative]</h3>
+		<p>
+      Usato per controllare il comportamento del target morph: quando è impostato a true, i dati del target morph vengono
+      trattati come offset relativi, anziché come posizioni/normali assoluti. 
+      
+      L'impostazione predefinita è `false`.
+		</p>
+
+		<h3>[property:String name]</h3>
+		<p>
+      Nome opzionale per questa istanza di bufferGeometry. Il valore predefinito è una stringa vuota.
+		</p>
+
+		<h3>[property:Object userData]</h3>
+		<p>
+      Un oggetto che può essere utilizzato per memorizzare i dati relativi alla BufferGeometry.
+      Non dovrebbe contenere i riferimenti alle funzioni poiché queste non verranno clonate. 
+		</p>
+
+		<h3>[property:String uuid]</h3>
+		<p>
+		[link:http://en.wikipedia.org/wiki/Universally_unique_identifier UUID] di questa istanza.
+    Viene assegnato automaticamente e non deve essere modificato.
+		</p>
+
+		<h2>Metodi</h2>
+
+		<p>[page:EventDispatcher EventDispatcher] i metodi sono disponibili in questa classe.</p>
+
+		<h3>[method:undefined addGroup]( [param:Integer start], [param:Integer count], [param:Integer materialIndex] )</h3>
+		<p>
+      Aggiunge un gruppo a questa geometria; vedi la proprietà [page:BufferGeometry.groups groups]
+      per maggiori dettagli.
+		</p>
+
+		<h3>[method:this applyMatrix4]( [param:Matrix4 matrix] )</h3>
+		<p>Applica la matrice di trasformazione alla geometria.</p>
+
+		<h3>[method:this applyQuaternion]( [param:Quaternion quaternion] )</h3>
+		<p>Applica la rotazione rappresentata dal quaternione alla geometria.</p>
+
+		<h3>[method:this center] ()</h3>
+		<p>Centra la geometria basandosi sul bounding box.</p>
+
+		<h3>[method:undefined clearGroups]( )</h3>
+		<p>Cancella tutti i gruppi.</p>
+
+		<h3>[method:BufferGeometry clone]()</h3>
+		<p>Crea un clone di questa BufferGeometry.</p>
+
+		<h3>[method:undefined computeBoundingBox]()</h3>
+		<p>
+      Calcola il bounding box della geometria, aggiornando l'attributo [page:.boundingBox]. <br />
+      I Bounding box non sono calcolati per impostazione predefinita. Devono essere calcolati esplicitamente,
+      altrimenti sono `null`.
+		</p>
+
+		<h3>[method:undefined computeBoundingSphere]()</h3>
+		<p>
+      Calcola il bounding sphere della geometria, aggiornando l'attributo [page:.boundingSphere]. <br />
+      I Bounding sphere non sono calcolati per impostazione predefinita. Devono essere calcolati esplicitamente,
+      altrimenti sono `null`.
+		</p>
+
+		<h3>[method:undefined computeTangents]()</h3>
+		<p>
+      Calcola e aggiunge un attributo tangent a questa geometria.<br />
+      Il calcolo è supportato solo per geometrie indicizzate e se la posizione, la normale e gli attributi uv sono definiti.
+      Quando si usa una mappa normale dello spazio tangente, meglio usare l'algoritmo MikkTSpace fornito da [page:BufferGeometryUtils.computeMikkTSpaceTangents].
+		</p>
+
+		<h3>[method:undefined computeVertexNormals]()</h3>
+		<p>Calcola la normale dei vertici calcolando la media delle normali delle facce.</p>
+
+		<h3>[method:this copy]( [param:BufferGeometry bufferGeometry] )</h3>
+		<p>Copia un'altra BufferGeometry in questa BufferGeometry.</p>
+
+		<h3>[method:BufferAttribute deleteAttribute]( [param:String name] )</h3>
+		<p>Cancella l'[page:BufferAttribute attributo] con il nome specificato.</p>
+
+		<h3>[method:undefined dispose]()</h3>
+		<p>
+      Elimina l'oggetto dalla memoria.<br />
+      È necessario chiamarlo quando si desidera rimuovere BufferGeometry mentre l'applicazione è in esecuzione.
+		</p>
+
+		<h3>[method:BufferAttribute getAttribute]( [param:String name] )</h3>
+		<p>Restituisce l'[page:BufferAttribute attributo] con il nome specificato.</p>
+
+		<h3>[method:BufferAttribute getIndex] ()</h3>
+		<p>Restituisce il buffer di [page:.index].</p>
+
+		<h3>[method:Boolean hasAttribute]( [param:String name] )</h3>
+		<p>Restituisce `true` se l'attributo con il nome specificato esiste.</p>
+
+		<h3>[method:this lookAt] ( [param:Vector3 vector] )</h3>
+		<p>
+      vector - Un vettore world da guardare.<br /><br />
+
+      Ruota la geometria in modo che sia rivolta verso un punto dello spazio. In genere, questa operazione viene 
+      eseguita una sola volta e non durante un ciclo. 
+      Usare [page:Object3D.lookAt] per l'uso tipico della mesh in tempo reale.
+		</p>
+
+		<h3>[method:undefined normalizeNormals]()</h3>
+		<p>
+      Ogni vettore normale, in una geometria, deve avere magnitudine 1.
+      Ciò correggerà l'illuminazione sulle superfici geometriche.
+		</p>
+
+		<h3>[method:this rotateX] ( [param:Float radians] )</h3>
+		<p>
+      Ruota la geometria attorno all'asse X. In genere, questa operazione viene eseguita una sola volta e non durante un ciclo. 
+      Usare [page:Object3D.rotation] per la tipica rotazione della mesh in tempo reale.
+		</p>
+
+		<h3>[method:this rotateY] ( [param:Float radians] )</h3>
+		<p>
+      Ruota la geometria attorno all'asse Y. In genere, questa operazione viene eseguita una sola volta e non durante un ciclo.
+      Usare [page:Object3D.rotation] per la tipica rotazione della mesh in tempo reale.
+		</p>
+
+		<h3>[method:this rotateZ] ( [param:Float radians] )</h3>
+		<p>
+      Ruota la geometria attorno all'asse Z. In genere, questa operazione viene eseguita una sola volta e non durante un ciclo.
+      Usare [page:Object3D.rotation] per la tipica rotazione della mesh in tempo reale.
+		</p>
+
+		<h3>[method:this scale] ( [param:Float x], [param:Float y], [param:Float z] )</h3>
+		<p>
+      Scala i dati della geometria. In genere, questa operazione viene eseguita una sola volta e non durante un ciclo.
+      Usare [page:Object3D.scale] per il tipico ridimensionamento della mesh in tempo reale.
+		</p>
+
+		<h3>[method:this setAttribute]( [param:String name], [param:BufferAttribute attribute] )</h3>
+		<p>
+      Imposta un attributo per questa geometria. Utilizzare questo metodo piuttosto che la proprietà attributes,
+      perché viene mantenuta una hashmap interna di .attributes per accelerare l'iterazione sugli attributi. 
+		</p>
+
+		<h3>[method:undefined setDrawRange] ( [param:Integer start], [param:Integer count] )</h3>
+		<p>
+      Imposta la proprietà [page:.drawRange]. Per BufferGeometry non indicizzate, count è il numero di vertici da visualizzare.
+      Per BufferGeometry indicizzate, count è il numero di indici da visualizzare.
+    </p>
+
+		<h3>[method:this setFromPoints] ( [param:Array points] )</h3>
+		<p>Imposta gli attributi per questa BufferGeometry da un array di punti.</p>
+
+		<h3>[method:this setIndex] ( [param:BufferAttribute index] )</h3>
+		<p>Imposta il buffer [page:.index].</p>
+
+		<h3>[method:Object toJSON]()</h3>
+		<p>Converte la buffer geometry al formato three.js [link:https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 JSON Object/Scene].</p>
+
+		<h3>[method:BufferGeometry toNonIndexed]()</h3>
+		<p>Restituisce una versione non indicizzata di una BufferGeometry indicizzata.</p>
+
+		<h3>[method:this translate] ( [param:Float x], [param:Float y], [param:Float z] )</h3>
+		<p>
+      Trasla la geometria. In genere, questa operazione viene eseguita una sola volta e non durante un ciclo.
+      Usare [page:Object3D.position] per la tipica traslazione della mesh in tempo reale.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 82 - 0
docs/api/it/core/Clock.html

@@ -0,0 +1,82 @@
+<!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>[name]</h1>
+
+		<p class="desc">
+      Oggetto per tenere traccia del tempo. Questa classe utilizza [link:https://developer.mozilla.org/en-US/docs/Web/API/Performance/now performance.now]
+      se disponibile, altrimenti utilizza il meno accurato [link:https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Date/now Date.now].
+		</p>
+
+		<h2>Costruttore</h2>
+
+		<h3>[name]( [param:Boolean autoStart] )</h3>
+		<p>
+		  autoStart — (opzionale) indica se avviare automaticamente l'orologio quando .getDelta() viene chiamato per la prima volta. L'impostazione predefinita è `true`.
+		</p>
+
+		<h2>Proprietà</h2>
+
+		<h3>[property:Boolean autoStart]</h3>
+		<p>
+      Se impostato, avvia l'orologio automaticamente quando [page:.getDelta]() viene chiamato per la prima volta. Il valore predefinito è `true`.
+		</p>
+
+		<h3>[property:Float startTime]</h3>
+		<p>
+      Contiene il tempo al quale è stato chiamato l'ultima volta il metodo [page:Clock.start start] dell'orologio. Il valore predefinito è `0`.
+ 		</p>
+
+		<h3>[property:Float oldTime]</h3>
+		<p>
+      Contiene il tempo in cui i metodi [page:Clock.start start], [page:.getElapsedTime]() o [page:.getDelta]() dell'orologio sono stati chiamati per l'ultima volta.
+      Il valore predefinito è `0`.
+ 		</p>
+
+		<h3>[property:Float elapsedTime]</h3>
+		<p>
+      Tiene traccia del tempo totale di esecuzione dell'orologio. Il valore predefinito è `0`.
+ 		</p>
+
+		<h3>[property:Boolean running]</h3>
+		<p>
+      Indica se l'orologio è in esecuzione o meno. Il valore predefinito è `false`.
+ 		</p>
+
+		<h2>Metodi</h2>
+
+		<h3>[method:undefined start]()</h3>
+		<p>
+      Avvia l'orologio. Inoltre imposta [page:.startTime] e [page:.oldTime] sull'ora corrente, imposta [page:.elapsedTime] a `0` e [page:.running] a `true`.
+		</p>
+
+		<h3>[method:undefined stop]()</h3>
+		<p>
+      Ferma l'orologio e imposta [page:Clock.oldTime oldTime] sull'ora corrente.
+		</p>
+
+		<h3>[method:Float getElapsedTime]()</h3>
+		<p>
+      Ottiene i secondi trascorsi da quando l'orologio è stato avviato e imposta [page:.oldTime] sull'ora corrente.<br />
+      Se [page:.autoStart] è `true` e l'orologio non è in esecuzione, avvia anche l'orologio.
+		</p>
+
+		<h3>[method:Float getDelta]()</h3>
+		<p>
+      Ottiene i secondi trascorsi dall'ora in cui è stato impostato [page:.oldTime] e imposta [page:.oldTime] sull'ora corrente.<br />
+      Se [page:.autoStart] è `true` e l'orologio non è in esecuzione, avvia anche l'orologio.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 97 - 0
docs/api/it/core/EventDispatcher.html

@@ -0,0 +1,97 @@
+<!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>[name]</h1>
+
+		<p class="desc">
+      Eventi JavaScript per oggetti personalizzati.<br />
+			[link:https://github.com/mrdoob/eventdispatcher.js EventDispatcher on GitHub]
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		// Aggiungere eventi ad un oggetto custom
+
+		class Car extends EventDispatcher {
+
+			start() {
+
+				this.dispatchEvent( { type: 'start', message: 'vroom vroom!' } );
+
+			}
+
+		};
+
+		// Usare gli eventi con l'oggetto custom
+
+		const car = new Car();
+
+		car.addEventListener( 'start', function ( event ) {
+
+			alert( event.message );
+
+		} );
+
+		car.start();
+		</code>
+
+		<h2>Costruttore</h2>
+
+		<h3>[name]()</h3>
+		<p>
+      Crea un oggetto EventDispatcher.
+		</p>
+
+
+		<h2>Metodi</h2>
+
+		<h3>[method:undefined addEventListener]( [param:String type], [param:Function listener] )</h3>
+		<p>
+		  type - Il tipo di evento da ascoltare.<br />
+		  listener - La funzione che viene chiamata quando viene generato l'evento.
+		</p>
+		<p>
+      Aggiunge un listener ad un tipo di evento.
+		</p>
+
+		<h3>[method:Boolean hasEventListener]( [param:String type], [param:Function listener] )</h3>
+		<p>
+		  type - Il tipo di evento da ascoltare.<br />
+		  listener - La funzione che viene chiamata quando viene generato l'evento.
+		</p>
+		<p>
+      Verifica se il listener è aggiunto ad un tipo di evento.
+		</p>
+
+		<h3>[method:undefined removeEventListener]( [param:String type], [param:Function listener] )</h3>
+		<p>
+		  type - Il tipo di listener che viene rimosso.<br />
+		  listener - La funzione listener che viene rimossa.
+		</p>
+		<p>
+      Rimuove un listener da un tipo di evento.
+		</p>
+
+		<h3>[method:undefined dispatchEvent]( [param:Object event] )</h3>
+		<p>
+		  event - L'evento che viene lanciato.
+		</p>
+		<p>
+      Lancia un tipo di evento.
+		</p>
+
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 115 - 0
docs/api/it/core/GLBufferAttribute.html

@@ -0,0 +1,115 @@
+<!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>[name]</h1>
+
+		<p class="desc">
+      Questa classe di attributi del buffer non costruisce un VBO. Invece, 
+      utilizza qualsiasi VBO che gli viene passato nel costruttore e può essere
+      successivamente alterato tramite la proprietà `buffer`.<br /><br />
+      È necessario passare parametri aggiuntivi insieme a VBO. I quali sono:
+      il contesto GL, il tipo di dati GL, il numero di componenti per vertice,
+      il numero di byte per componente, e il numero di vertici. <br /><br />
+      Il caso d'uso più comune per questa classe è quando un qualche tipo di 
+      calcolo GPGPU interferisce o addirittura produce i VBO in questione.
+		</p>
+
+		<h2>Costruttore</h2>
+		<h3>[name]( [param:WebGLBuffer buffer], [param:GLenum type], [param:Integer itemSize], [param:Integer elementSize], [param:Integer count] )</h3>
+		<p>
+		`buffer` — Deve essere un <a href="https://developer.mozilla.org/en-US/docs/Web/API/WebGLBuffer" target="_blank">WebGLBuffer</a>.
+		<br />
+		`type` — Uno dei <a href="https://developer.mozilla.org/en-US/docs/Web/API/WebGL_API/Constants#Data_types" target="_blank">Tipi di dati WebGL</a>.
+		<br />
+		`itemSize` — Il numero dei valori dell'array che devono essere associati con un particolare vertice. Ad esempio, 
+    se questo attributo memorizza un vettore a 3 componenti (come una posizione, una normale, un colore), allora itemSize dovrebbe essere 3.
+		<br />
+		`elementSize` — 1, 2 o 4. La dimensione corrispondente (in byte) per il parametro "type" passato.
+		<ul>
+			<li>gl.FLOAT: 4</li>
+			<li>gl.UNSIGNED_SHORT: 2</li>
+			<li>gl.SHORT: 2</li>
+			<li>gl.UNSIGNED_INT: 4</li>
+			<li>gl.INT: 4</li>
+			<li>gl.BYTE: 1</li>
+			<li>gl.UNSIGNED_BYTE: 1</li>
+		</ul>
+		`count` — Il numero previsto di vertici in VBO.
+		</p>
+
+		<h2>Proprietà</h2>
+
+		<h3>[property:WebGLBuffer buffer]</h3>
+		<p>
+			L'istanza corrente di <a href="https://developer.mozilla.org/en-US/docs/Web/API/WebGLBuffer" target="_blank">WebGLBuffer</a>.
+		</p>
+
+		<h3>[property:Integer count]</h3>
+		<p>
+      Il numero previsto di vertici in VBO.
+		</p>
+
+		<h3>[property:Integer itemSize]</h3>
+		<p>
+      Quanti valori compongono ogni elemento (vertice).
+		</p>
+
+		<h3>[property:Integer elementSize]</h3>
+		<p>
+      Memorizza la dimensione corrispondente in byte per il valore della proprietà del `type` corrente.
+		</p>
+		<p>
+      Vedi sopra (costruttore) per un elenco di dimensioni di type conosciute.
+		</p>
+
+		<h3>[property:GLenum type]</h3>
+		<p>
+      Un <a href="https://developer.mozilla.org/en-US/docs/Web/API/WebGL_API/Constants#Data_types" target="_blank">WebGL Data Type</a> 
+      che descrive i contenuti VBO.
+		</p>
+		<p>
+      Imposta questa proprietà insieme a `elementSize`. Il modo consigliato è 
+      di usare il metodo `setType`.
+		</p>
+
+		<h3>[property:Boolean isGLBufferAttribute]</h3>
+		<p>
+      Solo lettura. Sempre `true`.
+		</p>
+
+		<h2>Metodi</h2>
+
+		<h3>[method:this setBuffer]( buffer ) </h3>
+		<p>Imposta la proprietà `buffer`.</p>
+
+		<h3>[method:this setType]( type, elementSize ) </h3>
+		<p>Imposta entrambe le proprietà `type` e `elementSize`.</p>
+
+		<h3>[method:this setItemSize]( itemSize ) </h3>
+		<p>Imposta la proprietà `itemSize`.</p>
+
+		<h3>[method:this setCount]( count ) </h3>
+		<p>Imposta la proprietà `count`.</p>
+
+		<h3>[property:Integer version]</h3>
+		<p>
+      Un numero di versione, incrementato ogni volta che la proprietà needsUpdate è impostata a true.
+		</p>
+
+		<h3>[property:Boolean needsUpdate]</h3>
+		<p>
+      Il valore predefinito è `false`. Impostando questo metodo a true incrementa la [page:GLBufferAttribute.version versione].
+		</p>
+
+		<h2>Source</h2>
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 43 - 0
docs/api/it/core/InstancedBufferAttribute.html

@@ -0,0 +1,43 @@
+<!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>
+		[page:BufferAttribute] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+		  Una versione istanziata di [page:BufferAttribute].
+		</p>
+
+		<h2>Costruttore</h2>
+		<h3>[name]( [param:TypedArray array], [param:Integer itemSize], [param:Boolean normalized], [param:Number meshPerAttribute] )</h3>
+		<p>
+		</p>
+
+		<h2>Proprietà</h2>
+		<p>Vedi [page:BufferAttribute] per le prorietà ereditate.</p>
+
+		<h3>[property:Number meshPerAttribute]</h3>
+		<p>
+      Definisce la frequenza con cui un valore di questo attributo del buffer deve essere ripetuto.
+      Un valore di uno significa che ogni valore dell'attributo istanziato è usato per una singola istanza.
+      Un valore di due significa che ogni valore è utilizzato per due istanze consecutive (e così via).
+      Il valore predefinito è `1`.
+		</p>
+
+		<h2>Metodi</h2>
+		<p>Vedi [page:BufferAttribute] per i metodi ereditati.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 48 - 0
docs/api/it/core/InstancedBufferGeometry.html

@@ -0,0 +1,48 @@
+<!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>
+		[page:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Una versione istanziata di [page:BufferGeometry].
+		</p>
+
+		<h2>Costruttore</h2>
+		<h3>[name]( )</h3>
+		<p>
+		</p>
+
+		<h2>Properties</h2>
+		<p>Vedi [page:BufferGeometry] per le prorietà ereditate.</p>
+
+		<h3>[property:Number instanceCount]</h3>
+		<p>
+      Il valore predefinito è `Infinity`.
+		</p>
+
+		<h3>[property:Boolean isInstancedBufferGeometry]</h3>
+		<p>
+      Flag di sola lettura per verificare se un dato oggetto è di tipo [name].
+		</p>
+
+		<h2>Metodi</h2>
+		<p>Vedi [page:BufferGeometry] per i metodi ereditati.</p>
+
+		<h3>[method:this copy]( [param:InstancedBufferGeometry source] )</h3>
+		<p>Copia l'oggetto [name] specificato in questa istanza.</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 44 - 0
docs/api/it/core/InstancedInterleavedBuffer.html

@@ -0,0 +1,44 @@
+<!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>
+		[page:InterleavedBuffer] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+      Una versione istanziata di [page:InterleavedBuffer].
+		</p>
+
+		<h2>Costruttore</h2>
+		<h3>[name]( [param:TypedArray array], [param:Integer itemSize], [param:Number meshPerAttribute] )</h3>
+		<p>
+		</p>
+
+		<h2>Proprietà</h2>
+		<p>
+      Vedi [page:InterleavedBuffer] per le prorietà ereditate.
+		</p>
+
+		<h3>[property:Number meshPerAttribute]</h3>
+		<p>
+      Il valore predefinito è `1`.
+		</p>
+
+		<h2>Metodi</h2>
+		<p>
+      Vedi [page:InterleavedBuffer] per i metodi ereditati.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 116 - 0
docs/api/it/core/InterleavedBuffer.html

@@ -0,0 +1,116 @@
+<!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>[name]</h1>
+
+		<p class="desc">
+			"Interleaved" significa che più attributi, possibilmente di tipo differente, (ad esempio, posizione, normale, uv, colore) 
+      sono impacchettati in un unico array buffer.
+			<br/><br/>
+      Qui trovi un'introduzione agli array interleaved: [link:https://blog.tojicode.com/2011/05/interleaved-array-basics.html Interleaved array basics]
+		</p>
+
+		<h2>Esempi</h2>
+
+		<p>[example:webgl_buffergeometry_points_interleaved webgl / buffergeometry / points / interleaved]</p>
+
+		<h2>Costruttore</h2>
+		<h3>[name]( [param:TypedArray array], [param:Integer stride] )</h3>
+		<p>
+			[page:TypedArray array] -- Un array tipizzato con un buffer condiviso. Memorizza i dati della geometria.<br/>
+			[page:Integer stride] -- Il numero di elementi typed-array per vertice.
+		</p>
+
+		<h2>Proprietà</h2>
+
+		<h3>[property:Array array]</h3>
+		<p>
+      Un array tipizzato con un buffer condiviso. Memorizza i dati della geometria.
+		</p>
+
+		<h3>[property:Integer stride]</h3>
+		<p>
+      Il numero di elementi typed-array per vertice.
+		</p>
+
+		<h3>[property:Integer count]</h3>
+		<p>
+      Fornisce il numero totale di elementi in un array.
+		</p>
+
+		<h3>[property:Object updateRange]</h3>
+		<p>
+      Oggetto contente offset e count.<br />
+		  - [page:Number offset]: Il valore predefinito è `0`.<br />
+		  - [page:Number count]: Il valore predefinito è `-1`.<br />
+		</p>
+
+		<h3>[property:String uuid]</h3>
+		<p>
+		[link:http://en.wikipedia.org/wiki/Universally_unique_identifier UUID] di questa istanza. Viene automaticamente assegnato, non deve essere modificato.
+		</p>
+
+		<h3>[property:Integer version]</h3>
+		<p>
+      Un numero di versione, incrementato ogni volta che la proprietà needsUpdate è impostata a true.
+		</p>
+
+		<h3>[property:Boolean needsUpdate]</h3>
+		<p>
+      Il valore predefinito è `false`.Impostando questo valore a true incrementa la [page:InterleavedBuffer.version versione].
+		</p>
+
+		<h3>[property:Usage usage]</h3>
+		<p>
+      Definisce il modello di utilizzo previsto dell'archivio dati a fini di ottimizzazione. Corrisponde al parametro di utilizzo di
+			[link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/bufferData WebGLRenderingContext.bufferData]().
+		</p>
+
+		<h2>Metodi</h2>
+
+		<h3>[method:this copy]( [param:InterleavedBuffer source] ) </h3>
+		<p>
+      Copia un altro [name] in questo [name].
+		</p>
+
+		<h3>[method:this copyAt]( [param:Integer index1], [param:InterleavedBuffer attribute], [param:Integer index2] ) </h3>
+		<p> Copia i dati da `attribute[index2]` a [page:InterleavedBuffer.array array][index1].</p>
+
+		<h3>[method:this set]( [param:TypedArray value], [param:Integer offset] ) </h3>
+		<p>
+			value - L'array (tipizzato) di origine.<br/>
+			offset - L'offset nell'array di destinazione in corrrispondenza del quale iniziare a scrivere i valori dall'array di origine. L'impostazione predefinita è `0`.<br/><br />
+
+      Memorizza più valori nel buffer, leggendo valori di input dall'array specificato.
+		</p>
+
+		<h3>[method:InterleavedBuffer clone]( [param:Object data] ) </h3>
+		<p>
+			data - Questo oggetto contiene buffer di array condivisi necessari per clonare correttamente le geometrie con attributi interleaved.<br/><br />
+
+      Crea un clone di questo [name].
+		</p>
+
+		<h3>[method:this setUsage] ( [param:Usage value] ) </h3>
+		<p>Imposta [page:InterleavedBuffer.usage usage] a value.</p>
+
+		<h3>[method:Object toJSON]( [param:Object data] ) </h3>
+		<p>
+			data - Questo oggetto contiene buffer di array condivisi necessari per serializzare correttamente le geometrie con attributi interleaved.<br/><br />
+
+      Serializza questo [name].
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 125 - 0
docs/api/it/core/InterleavedBufferAttribute.html

@@ -0,0 +1,125 @@
+<!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>[name]</h1>
+
+		<p class="desc">
+
+		</p>
+
+		<h2>Costruttore</h2>
+		<h3>[name]( [param:InterleavedBuffer interleavedBuffer], [param:Integer itemSize], [param:Integer offset], [param:Boolean normalized] )</h3>
+		<p>
+		</p>
+
+		<h2>Proprietà</h2>
+
+		<h3>[property:InterleavedBuffer data]</h3>
+		<p>
+			L'istanza [page:InterleavedBuffer InterleavedBuffer] passata nel costruttore.
+		</p>
+
+		<h3>[property:TypedArray array]</h3>
+		<p>
+      Il valore di [page:InterleavedBufferAttribute.data data].array.
+		</p>
+
+		<h3>[property:Integer count]</h3>
+		<p>
+      Il valore di [page:InterleavedBufferAttribute.data data].count.
+
+      Se il buffer memorizza un elemento a 3 componenti (come una posizione, una normale, o un colore),
+      allora questo conterà il numero di ogni elemento memorizzato.
+		</p>
+
+		<h3>[property:Boolean isInterleavedBufferAttribute]</h3>
+		<p>
+      Flag di sola lettura per verificare se un dato oggetto è di tipo [name].
+		</p>
+
+		<h3>[property:Integer itemSize]</h3>
+		<p>
+			Quanti valori compongono ogni elemento (vertice).
+		</p>
+
+		<h3>[property:String name]</h3>
+		<p>
+      Nome opzionale per questa istanza dell'attributo. Il valore di default è una stringa vuota.
+		</p>
+
+		<h3>[property:Boolean needsUpdate]</h3>
+		<p>
+      Il valore predefinito è `false`. Impostando questa proprietà a `true` invierà di nuovo l'intero 
+      buffer interleaved (non solo i dati dello specifico attributo) alla GPU.
+		</p>
+
+		<h3>[property:Boolean normalized]</h3>
+		<p>
+			Il valore predefinito è `false`.
+		</p>
+
+		<h3>[property:Integer offset]</h3>
+		<p>
+      L'offset nel buffer dell'array sottostante in cui inizia un elemento.
+		</p>
+
+		<h2>Metodi</h2>
+
+		<h3>[method:this applyMatrix4]( [param:Matrix4 m] )</h3>
+    <p>Applica la matrice [page:Matrix4 m] ad ogni elemento Vector3 di questo InterleavedBufferAttribute.</p>
+
+		<h3>[method:this applyNormalMatrix]( [param:Matrix3 m] )</h3>
+		<p>Applica la matrice [page:Matrix3 m] ad ogni elemento Vector3 di questo InterleavedBufferAttribute.</p>
+
+		<h3>[method:this transformDirection]( [param:Matrix4 m] )</h3>
+		<p>Applica la matrice [page:Matrix4 m] ad ogni elemento Vector3 di questo InterleavedBufferAttribute, interpretando gli elementi come vettori direzionali.</p>
+
+		<h3>[method:Number getX]( [param:Integer index] ) </h3>
+		<p>Restituisce il componente x dell'elemento in corrispondenza dell'indice specificato.</p>
+
+		<h3>[method:Number getY]( [param:Integer index] ) </h3>
+		<p>Restituisce il componente y dell'elemento in corrispondenza dell'indice specificato.</p>
+
+		<h3>[method:Number getZ]( [param:Integer index] ) </h3>
+		<p>Restituisce il componente z dell'elemento in corrispondenza dell'indice specificato.</p>
+
+		<h3>[method:Number getW]( [param:Integer index] ) </h3>
+		<p>Restituisce il componente w dell'elemento in corrispondenza dell'indice specificato.</p>
+
+		<h3>[method:this setX]( [param:Integer index], [param:Float x] ) </h3>
+		<p>Imposta il componente x dell'elemento in corrispondenza dell'indice specificato.</p>
+
+		<h3>[method:this setY]( [param:Integer index], [param:Float y] ) </h3>
+		<p>Imposta il componente y dell'elemento in corrispondenza dell'indice specificato.</p>
+
+		<h3>[method:this setZ]( [param:Integer index], [param:Float z] ) </h3>
+		<p>Imposta il componente z dell'elemento in corrispondenza dell'indice specificato.</p>
+
+		<h3>[method:this setW]( [param:Integer index], [param:Float w] ) </h3>
+		<p>Imposta il componente w dell'elemento in corrispondenza dell'indice specificato.</p>
+
+		<h3>[method:this setXY]( [param:Integer index], [param:Float x], [param:Float y] ) </h3>
+		<p>Imposta i componenti x e y dell'elemento in corrispondenza dell'indice specificato.</p>
+
+		<h3>[method:this setXYZ]( [param:Integer index], [param:Float x], [param:Float y], [param:Float z] ) </h3>
+		<p>Imposta i componenti x, y e z dell'elemento in corrispondenza dell'indice specificato.</p>
+
+		<h3>[method:this setXYZW]( [param:Integer index], [param:Float x], [param:Float y], [param:Float z], [param:Float w] ) </h3>
+		<p>Imposta i componenti x, y, z e w dell'elemento in corrispondenza dell'indice specificato.</p>
+
+
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 105 - 0
docs/api/it/core/Layers.html

@@ -0,0 +1,105 @@
+<!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>[name]</h1>
+
+		<p class="desc">
+      Un oggetto [page:Layers] assegna un [page:Object3D] a 1 o più di 32 layer numerati da `0` a `31`
+      - internamente i layer sono memorizzati come una [link:https://en.wikipedia.org/wiki/Mask_(computing) maschera di bit],
+      e, per impostazione predefinita, tutti gli Object3D sono membri del leyer 0.<br /><br />
+
+      Può essere utilizzato per controllare la visibilità - un oggetto deve condividere un layer con una [page:Camera telecamera] per
+      essere visibile quando la vista della telecamera viene renderizzata.<br /><br />
+
+      Tutte le classi che ereditano da [page:Object3D] hanno una proprietà [page:Object3D.layers] che è un'istanza della classe.
+		</p>
+
+		<h2>Esempi</h2>
+
+		<p>
+			[example:webgl_layers WebGL / layers]
+		</p>
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name]()</h3>
+		<p>
+      Crea un nuovo oggetto Layers, con l'appartenenza inizialmente impostata al layer 0.
+		</p>
+
+		<h2>Proprietà</h2>
+
+		<h3>[property:Integer mask]</h3>
+		<p>
+      Una maschera di bit che memorizza a quale dei 32 layer questo oggetto layer è attualmente membro.
+		</p>
+
+
+		<h2>Metodi</h2>
+
+		<h3>[method:undefined disable]( [param:Integer layer] )</h3>
+		<p>
+			layer - un intero da 0 a 31.<br /><br />
+
+      Elimina l'appartenenza a questo `layer`.
+		</p>
+
+		<h3>[method:undefined enable]( [param:Integer layer] )</h3>
+		<p>
+			layer - un intero da 0 a 31.<br /><br />
+
+      Aggiunge l'appartenenza a questo `layer`.
+		</p>
+
+		<h3>[method:undefined set]( [param:Integer layer] )</h3>
+		<p>
+			layer - un intero da 0 a 31.<br /><br />
+
+      Imposta l'appartenza a `layer`, e rimuove l'appartenza a tutti gli altri layer.
+		</p>
+
+		<h3>[method:Boolean test]( [param:Layers layers] )</h3>
+		<p>
+			layers - un oggetto Layers<br /><br />
+
+      Restituisce true se questo e l'oggetto `layers` passato hanno al più un layer in comune.
+		</p>
+
+		<h3>[method:Boolean isEnabled]( [param:Integer layer] )</h3>
+		<p>
+			layer - un intero da 0 a 31.<br /><br />
+
+      Restituisce true se il dato layer è abilitato.
+		</p>
+
+		<h3>[method:undefined toggle]( [param:Integer layer] )</h3>
+		<p>
+			layer - un intero da 0 a 31.<br /><br />
+
+      Attiva/disattiva l'appartenenza al `layer`.
+		</p>
+
+		<h3>[method:undefined enableAll]()</h3>
+		<p>
+      Aggiunge l'appartenza a tutti i layer.
+		</p>
+
+		<h3>[method:undefined disableAll]()</h3>
+		<p>
+      Rimuove l'appartenenza da tutti i layer.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 500 - 0
docs/api/it/core/Object3D.html

@@ -0,0 +1,500 @@
+<!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>[name]</h1>
+
+		<p class="desc">
+      Questa è la classe base di molti oggetti in three.js e fornisce un insieme di proprietà e metodi 
+      per manipolare gli oggetti 3D nello spazio.<br /><br />
+
+      Si noti che questa classe può essere utilizzata per raggruppare gli oggetti tramite il metodo
+      [page:.add]( object ) il quale aggiunge l'oggetto come figlio, tuttavia è meglio usare [page:Group] per questo.
+		</p>
+
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name]()</h3>
+		<p>
+      Il cotruttore non prende argomenti.
+		</p>
+
+
+		<h2>Proprietà</h2>
+
+		<h3>[property:AnimationClip animations]</h3>
+		<p>Array con clip di animazione dell'oggetto.</p>
+
+		<h3>[property:Boolean castShadow]</h3>
+		<p>Se l'oggetto viene renderizzato nella mappa delle ombre. Il valore predefinito è `false`.</p>
+
+		<h3>[property:Array children]</h3>
+		<p>Array con i children dell'oggetto. Vedi [page:Group] per informazioni su come raggrupare manualmente gli oggetti.</p>
+
+		<h3>[property:Material customDepthMaterial]</h3>
+		<p>
+      Materiale depth personalizzato da utilizzare durante il rendering della mappa di depth. Può essere utilizzato solo nel contesto delle mesh.
+      Quando si proietta un'ombra con [page:DirectionalLight] o [page:SpotLight], se si modificano le posizioni dei vertici nello shader dei vertici
+      è necessario specificare un customDepthMaterial per le shadow corrette. Il valore predefinito è `undefined`.
+		</p>
+
+		<h3>[property:Material customDistanceMaterial]</h3>
+		<p>
+      Lo stesso di [page:.customDepthMaterial customDepthMaterial], ma viene utilizzato con [page:PointLight].
+      Il valore predefinito è `undefined`.
+		</p>
+
+		<h3>[property:Boolean frustumCulled]</h3>
+		<p>
+      Quando questo è impostato, controlla ogni fotogramma, se l'oggetto è nel frustrum della telecamera prima renderizzare l'oggetto.
+      Se è impostato a `false` l'oggetto viene renderizzato ad ogni fotogramma anche se non si trova nel frustrum della telecamera. 
+      Il valore predefinito è `true`.
+		</p>
+
+		<h3>[property:Integer id]</h3>
+		<p>sola lettura – Numero univoco per questa istanza.</p>
+
+		<h3>[property:Boolean isObject3D]</h3>
+		<p>
+      Flag di sola lettura per controllare se un dato oggetto è di tipo [name].
+		</p>
+
+		<h3>[property:Layers layers]</h3>
+		<p>
+      Il layer di appartenenza dell'oggetto. L'oggetto è visibile solo se ha al più un layer in comune
+      con la [page:Camera telecamera] utilizzata. Questa proprietà può anche essere utilizata per filtrare
+      gli oggetti non voluti nell'intersezione di test del reycasting quando si usa il [page:Raycaster].
+		</p>
+
+		<h3>[property:Matrix4 matrix]</h3>
+		<p>La matrice di trasformazione locale.</p>
+
+		<h3>[property:Boolean matrixAutoUpdate]</h3>
+		<p>
+      Quando viene settato calcola la matrice di posizione, (rotazione o quaternione) e 
+      ridimensiona ogni fotogramma ed inoltre ricalcola la  proprietà matrixWorld. L'impostazione predefinita è [page:Object3D.DefaultMatrixAutoUpdate] (true).
+		</p>
+
+		<h3>[property:Matrix4 matrixWorld]</h3>
+		<p>
+      La trasformazione globale dell'oggetto. Se l'Object3D non ha un genitore, è identico al [page:.matrix] della trasformazione locale.
+		</p>
+
+		<h3>[property:Boolean matrixWorldAutoUpdate]</h3>
+		<p>
+      Il valore predefinito è true. Se impostato, il renderer controlla ogni frame se l'oggetto e i suo figli 
+      necessitano di aggiornare la matrice.
+      Quando non lo è, devi mantenere tu stesso tutte le matrici nell'oggetto e i suoi figli.
+		</p>
+
+		<h3>[property:Boolean matrixWorldNeedsUpdate]</h3>
+		<p>
+      Quando viene settato calcola la matrixWorld in quel frame e reimposta questa proprietà a false. Il valore
+      predefinito è `false`.
+		</p>
+
+		<h3>[property:Matrix4 modelViewMatrix]</h3>
+		<p>Questo viene passato allo shader e utilizzato per calcolare la posizione dell'oggetto.</p>
+
+		<h3>[property:String name]</h3>
+		<p>Nome opzionale dell'oggetto (non è necessario che sia univoco). Il valore predefinito è una stringa vuota.</p>
+
+		<h3>[property:Matrix3 normalMatrix]</h3>
+		<p>
+      Questo viene passato allo shader e utilizzato per calcolare l'illuminazione per l'oggetto.
+      È la trasposizione dell'inverso della sottomatrice 3x3 in alto a sinistra di modelViewMatrix di questo oggetto.<br /><br />
+
+      Il motivo di questa matrice speciale è che il semplice utilizzo della matrice modelViewMatrix potrebbe causare una lunghezza non unitaria delle normali 
+      (in caso di scalatura) o una direzione non perpendicolare (in caso di scalatura non uniforme).<br /><br />
+
+      Dall'altra parte, la parte di traslazione della matrice modelViewMatrix non è rilevante per il calcolo delle normali. Quindi una Matrix3 è sufficiente. 
+		</p>
+
+		<h3>[property:Function onAfterRender]</h3>
+		<p>
+      Una callback opzionale che viene eseguita immediatamente dopo che un oggetto 3D è stato renderizzato.
+      Questa funzione è chiamata con i seguenti parametri: renderer, scene, camera, geometry, material, group.
+		</p>
+		<p>
+      Si noti che questa funzione di callback viene eseguita per oggi 3D `renderizzabili` (renderable). Ovvero oggetti 3D che definiscono
+      il loro aspetto visivo con geometrie e materiali come istanze di [page:Mesh], [page:Line], [page:Points] o [page:Sprite].
+      Invece, le istanze di [page:Object3D], [page:Group] o [page:Bone] non sono renderizzabili e quindi questa callback non viene eseguita su questi oggetti.
+		</p>
+
+		<h3>[property:Function onBeforeRender]</h3>
+		<p>
+      Una callback opzionale che viene eseguita immediatamente prima che un oggetto 3D è stato renderizzato.
+      Questa funzione è chiamata con i seguenti parametri: renderer, scene, camera, geometry, material, group.
+		</p>
+		<p>
+      Si noti che questa funzione di callback viene eseguita per oggi 3D `renderizzabili` (renderable). Ovvero oggetti 3D che definiscono
+      il loro aspetto visivo con geometrie e materiali come istanze di [page:Mesh], [page:Line], [page:Points] o [page:Sprite].
+      Invece, le istanze di [page:Object3D], [page:Group] o [page:Bone] non sono renderizzabili e quindi questa callback non viene eseguita su questi oggetti.
+		</p>
+
+		<h3>[property:Object3D parent]</h3>
+		<p>Genitore dell'oggetto nel [link:https://en.wikipedia.org/wiki/Scene_graph grafo della scena]. Un oggetto può avere più
+      di un genitore.</p>
+
+		<h3>[property:Vector3 position]</h3>
+		<p>Un [page:Vector3] che rappresenta la posizione locale dell'oggetto. Il valore predefinito è `(0, 0, 0)`.</p>
+
+		<h3>[property:Quaternion quaternion]</h3>
+		<p>Rotazione locale dell'oggetto come un [page:Quaternion Quaternion].</p>
+
+		<h3>[property:Boolean receiveShadow]</h3>
+		<p>Se il materiale riceve ombre. Il valore predefinito è `false`.</p>
+
+		<h3>[property:Number renderOrder]</h3>
+		<p>
+      Questo valore consente di sovrascrivere l'ordine di rendering predefinito degli oggetti del [link:https://en.wikipedia.org/wiki/Scene_graph grafico di scena]
+      sebbene gli oggetti opachi e trasparenti rimangano ordinati in modo indipendente. Quando questa proprietà viene impostata per un'istanza di [page:Group Group],
+      tutti gli oggetti discendenti saranno ordinati e renderizzati insieme.
+      L'ordinamento è dal più piccolo al più grande renderOrder. Il valore predefinito è `0`.
+		</p>
+
+		<h3>[property:Euler rotation]</h3>
+		<p>
+      La rotazione locale dell'oggetto (vedi [link:https://en.wikipedia.org/wiki/Euler_angles gli angoli di Eulero]), in radianti.
+		</p>
+
+		<h3>[property:Vector3 scale]</h3>
+		<p>
+      La scala locale dell'oggetto. Il valore predefinito è [page:Vector3]( 1, 1, 1 ).
+		</p>
+
+		<h3>[property:Vector3 up]</h3>
+		<p>
+      Questa proprietà viene utilizzata dal metodo [page:.lookAt lookAt], per esempio, per determinare l'orientamento del risultato.<br />
+      L'impostazione predefinita è [page:Object3D.DefaultUp] - che è, `( 0, 1, 0 )`.
+		</p>
+
+		<h3>[property:Object userData]</h3>
+		<p>
+      Un oggetto che può essere utilizzato per memorizzare i dati personalizzati di un Object3D.
+      Non dovrebbe contenere riferimenti a funzioni poiché queste non verranno clonate.
+		</p>
+
+		<h3>[property:String uuid]</h3>
+		<p>
+		[link:http://en.wikipedia.org/wiki/Universally_unique_identifier UUID] dell'istanza dell'oggetto.
+    Viene assegnato automaticamente, non dovrebbe essere modificato.
+		</p>
+
+		<h3>[property:Boolean visible]</h3>
+		<p>L'oggetto viene visualizzato se `true`. Il valore predefinito è `true`.</p>
+
+
+
+
+		<h2>Proprietà Statiche</h2>
+		<p>
+      Le proprietà statiche e i metodi sono definiti per classe piuttosto che per istanza della classe.
+      Questo significa che modificando [page:Object3D.DefaultUp] o [page:Object3D.DefaultMatrixAutoUpdate]
+      verranno modificati i valori di [page:.up up] e [page:.matrixAutoUpdate matrixAutoUpdate] per `ogni`
+      istanza di Object3D (o classi derivate) creata dopo che la modifica è stata fatta 
+      (gli Object3D già creati non saranno interessati).
+		</p>
+
+		<h3>[property:Vector3 DefaultUp]</h3>
+		<p>
+      La direzione predefinita di [page:.up up] per gli oggetti, utilizzata anche come posizione predefinita per [page:DirectionalLight],
+			[page:HemisphereLight] e [page:Spotlight] (che crea luci che brillano dall'alto verso il basso).<br />
+      Impostare su ( 0, 1, 0 ) per impostazione predefinita.
+		</p>
+
+		<h3>[property:Boolean DefaultMatrixAutoUpdate]</h3>
+		<p>
+      L'impostazione predefinita per [page:.matrixAutoUpdate matrixAutoUpdate] per Object3D appena creati.<br />
+		</p>
+
+
+		<h2>Metodi</h2>
+
+		<p>I metodi [page:EventDispatcher EventDispatcher] sono disponibili in questa classe.</p>
+
+		<h3>[method:this add]( [param:Object3D object], ... )</h3>
+		<p>
+      Aggiunge l'`object` come figlio di questo oggetto. È possibile aggiungere un numero arbitrario di oggetti. 
+      Qualsiasi genitore corrente su un oggetto passato qui verrà rimosso, poiché un oggetto può avere al più un genitore.<br /><br />
+
+      Vedi [page:Group] per avere informazioni per raggruppare manualmente gli oggetti.
+		</p>
+
+		<h3>[method:undefined applyMatrix4]( [param:Matrix4 matrix] )</h3>
+		<p>Applica la matrice di trasformazione all'oggetto e aggiorna la posizione, la rotazione e la scala dell'oggetto.</p>
+
+		<h3>[method:this applyQuaternion]( [param:Quaternion quaternion] )</h3>
+		<p>Applica la rotazione rappresentata dal quaternione dell'oggetto.</p>
+
+		<h3>[method:this attach]( [param:Object3D object] )</h3>
+		<p>
+      Aggiunge l'`object` come figlio di questo oggetto, mantenendo la trasformazione world dell'oggetto.<br/><br/>
+      Nota: Questo metodo non supporta i grafici della scena con nodi con scalatura non uniforme.
+		</p>
+
+		<h3>[method:Object3D clone]( [param:Boolean recursive] )</h3>
+		<p>
+		  recursive -- se true, anche i discendenti dell'oggetto vengono clonati. Il valore predefinito è true.<br /><br />
+
+      Restituisce un clone di questo oggetto e opzionalmente tutti i discendenti.
+		</p>
+
+		<h3>[method:this copy]( [param:Object3D object], [param:Boolean recursive] )</h3>
+		<p>
+		  recursive -- se true, anche i discendenti dell'oggetto vengono copiati. Il valore predefinito è true.<br /><br />
+
+      Copia l'oggetto passato in questo oggetto.
+
+      Nota: Gli event listener e le callback definite dall'utente ([page:.onAfterRender] e [page:.onBeforeRender]) non vengono copiate.
+		</p>
+
+		<h3>[method:Object3D getObjectById]( [param:Integer id] )</h3>
+		<p>
+		  id -- Numero univoco dell'istanza dell'oggetto<br /><br />
+
+      Cerca in un oggetto e nei suoi figli, partendo dall'oggetto stesso, e restituisce il primo con l'id corrispondente.<br />
+      Si noti che gli id sono assegnati in ordine cronologico: 1, 2, 3, ..., incrementando di uno per ogni nuovo oggetto.
+		</p>
+
+		<h3>[method:Object3D getObjectByName]( [param:String name] )</h3>
+		<p>
+		  name -- Stringa da abbinare alla proprietà Object3D.name dei figli. <br /><br />
+
+      Cerca in un oggetto e nei suoi figli, partendo dall'oggetto stesso, e restituisce il primo con il nome corrispondente.<br />
+      Si noti che per molti oggetti il nome è una stringa vuota da impostazione predefinita. Dovrai impostarlo manualmente per
+      utilizzare questo metodo.
+		</p>
+
+		<h3>[method:Object3D getObjectByProperty]( [param:String name], [param:Any value] )</h3>
+		<p>
+		  name -- il nome della proprietà da cercare. <br />
+		  value -- il valore della proprietà data. <br /><br />
+
+      Cerca in un oggetto e nei suoi figli, partendo dall'oggetto stesso, e restituisce il primo con la proprietà che corrisponde al valore passato.
+		</p>
+
+		<h3>[method:Vector3 getWorldPosition]( [param:Vector3 target] )</h3>
+		<p>
+		  [page:Vector3 target] — il risultato verrà copiato in questo Vector3. <br /><br />
+
+      Restituisce un vettore che rappresenta la posizione dell'oggetto nello spazio world.
+		</p>
+
+		<h3>[method:Quaternion getWorldQuaternion]( [param:Quaternion target] )</h3>
+		<p>
+  		[page:Quaternion target] — il risultato sarà copiato in questo Quaternione. <br /><br />
+
+      Restituisce un quaternione che rappreseta la rotazione dell'oggetto nello spazio world.
+		</p>
+
+		<h3>[method:Vector3 getWorldScale]( [param:Vector3 target] )</h3>
+		<p>
+		  [page:Vector3 target] — il risultato sarà copiato in questo Vector3. <br /><br />
+
+      Restituisce un vettore dei fattori di scala applicati all'oggetto per ciascun asse nello spazio world.
+		</p>
+
+		<h3>[method:Vector3 getWorldDirection]( [param:Vector3 target] )</h3>
+		<p>
+		  [page:Vector3 target] — il risultato sarà copiato in questo Vector3. <br /><br />
+
+      Restituisce un vettore che rappresenta la direzione dell'asse z positivo dell'oggetto nello spazio world.
+		</p>
+
+
+		<h3>[method:Vector3 localToWorld]( [param:Vector3 vector] )</h3>
+		<p>
+		  vector - Un vettore che rappresenta la posizione nello spazio locale di questo oggetto.<br /><br />
+
+      Converte il vettore dallo spazio locale dell'oggetto allo spazio world.
+		</p>
+
+		<h3>[method:undefined lookAt]( [param:Vector3 vector] )<br />
+		[method:undefined lookAt]( [param:Float x], [param:Float y], [param:Float z] )</h3>
+		<p>
+		  vector - Un vettore che rappresenta la posizione nello spazio world.<br /><br />
+      Facoltativamente, le componenti [page:.x x], [page:.y y] e [page:.z z] della posizione nello spazio world.<br /><br />
+
+      Ruota l'oggetto in modo che sia rivolto verso un punto nello spazio world.<br /><br />
+
+      Questo metodo non supporta oggetti con genitore/i con scalabilità non uniforme.
+		</p>
+
+		<h3>[method:Array raycast]( [param:Raycaster raycaster], [param:Array intersects] )</h3>
+		<p>
+      Metodo astratto (vuoto) per ottenere le intersezioni tra un raggio casted e questo oggetto.
+      Sottoclassi come [page:Mesh], [page:Line], e [page:Points] implementano questo metodo per 
+      utilizzare il raycasting.
+		</p>
+
+		<h3>[method:this remove]( [param:Object3D object], ... )</h3>
+		<p>
+      Rimuove `object` come figlio di questo oggetto. Può essere rimosso un numero arbitrario di oggetti.
+		</p>
+
+		<h3>[method:this removeFromParent]()</h3>
+		<p>
+      Rimuove questo oggetto dal suo attuale genitore.
+		</p>
+
+		<h3>[method:this clear]()</h3>
+		<p>
+      Rimuove tutti i figli dall'oggetto.
+		</p>
+
+		<h3>[method:this rotateOnAxis]( [param:Vector3 axis], [param:Float angle] )</h3>
+		<p>
+		  axis -- Un vettore normalizzato nello spazio dell'oggetto.<br />
+		  angle -- L'angolo in radianti.<br /><br />
+
+      Ruota un oggetto lungo l'asse nello spazio dell'oggetto. Si presume che l'asse sia normalizzato.
+		</p>
+
+		<h3>[method:this rotateOnWorldAxis]( [param:Vector3 axis], [param:Float angle] )</h3>
+		<p>
+		  axis -- Un vettore normalizzato nello spazio world. <br />
+		  angle -- L'angolo in radianti.<br /><br />
+
+		  Ruota un oggetto lungo l'asse nello spazio world. Si presume che l'asse sia normalizzato.
+      Presuppone che nessun genitore sia ruotato.
+		</p>
+
+		<h3>[method:this rotateX]( [param:Float rad] )</h3>
+		<p>
+		  rad - l'angolo di rotazione in radianti.<br /><br />
+
+      Ruota l'oggetto attorno all'asse x nello spazio locale.
+		</p>
+
+		<h3>[method:this rotateY]( [param:Float rad] )</h3>
+		<p>
+		  rad - l'angolo di rotazione in radianti.<br /><br />
+
+      Ruota l'oggetto attorno all'asse y nello spazio locale.
+		</p>
+
+		<h3>[method:this rotateZ]( [param:Float rad] )</h3>
+		<p>
+		  rad - l'angolo di rotazione in radianti.<br /><br />
+
+      Ruota l'oggetto attorno all'asse z nello spazio locale.
+		</p>
+
+		<h3>[method:undefined setRotationFromAxisAngle]( [param:Vector3 axis], [param:Float angle] )</h3>
+		<p>
+			axis -- Un vettore normalizzato nello spazio dell'oggetto.<br />
+			angle -- l'angolo in radianti<br /><br />
+
+			Chiama [page:Quaternion.setFromAxisAngle setFromAxisAngle]( [page:Float axis], [page:Float angle] )
+			sul [page:.quaternion quaternione].
+		</p>
+
+		<h3>[method:undefined setRotationFromEuler]( [param:Euler euler] )</h3>
+		<p>
+			euler -- L'angolo di Eulero che specifica la quantità di rotazione.<br />
+
+			Chiama [page:Quaternion.setRotationFromEuler setRotationFromEuler]( [page:Euler euler] )
+			sul [page:.quaternion quaternione].
+		</p>
+
+		<h3>[method:undefined setRotationFromMatrix]( [param:Matrix4 m] )</h3>
+		<p>
+			m -- ruota il quaternione della componente rotazione della matrice.<br />
+
+			Chiama [page:Quaternion.setFromRotationMatrix setFromRotationMatrix]( [page:Matrix4 m] )
+			sul [page:.quaternion quaternione].<br /><br />
+
+      Si noti che questo presuppone che il 3x3 superiore di m è una matrice di rotazione pura (cioè non ridimnsionata).
+		</p>
+
+		<h3>[method:undefined setRotationFromQuaternion]( [param:Quaternion q] )</h3>
+		<p>
+			q -- Quaternione normalizzato.<br /><br />
+
+      Copia il quaternione passato nel [page:.quaternion quaternione].
+		</p>
+
+		<h3>[method:Object toJSON]( [param:Object meta] )</h3>
+		<p>
+		  meta -- oggetto contentene metadati come i materiali, le texture o le immagini per l'oggetto.<br />
+      Converte l'oggetto al formato three.js [link:https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 JSON Object/Scene].
+		</p>
+
+		<h3>[method:this translateOnAxis]( [param:Vector3 axis], [param:Float distance] )</h3>
+		<p>
+		  axis -- Un vettore normalizzato nello spazio dell'oggetto.<br />
+		  distance -- La distanza da traslare.<br /><br />
+
+      Trasla un oggetto in base alla distanza lungo un asse nello spazio dell'oggetto. Questo asse si presuppone sia normalizzato.
+		</p>
+
+		<h3>[method:this translateX]( [param:Float distance] )</h3>
+		<p>Trasla l'oggetto lungo l'asse x nello spazio dell'ogetto per unità di `distance`.</p>
+
+		<h3>[method:this translateY]( [param:Float distance] )</h3>
+		<p>Trasla l'oggetto lungo l'asse y nello spazio dell'ogetto per unità di `distance`.</p>
+
+		<h3>[method:this translateZ]( [param:Float distance] )</h3>
+		<p>Trasla l'oggetto lungo l'asse z nello spazio dell'ogetto per unità di `distance`.</p>
+
+		<h3>[method:undefined traverse]( [param:Function callback] )</h3>
+		<p>
+		  callback - Una funzione con primo argomento un oggetto Object3D.<br /><br />
+
+      Esegue la callback su questo oggetto e tutti i discendenti.<br/>
+      Nota: È sconsigliato modificare il grafico della scena all'interno della callback.
+		</p>
+
+		<h3>[method:undefined traverseVisible]( [param:Function callback] )</h3>
+		<p>
+		  callback -  Una funzione con primo argomento un oggetto Object3D.<br /><br />
+
+      Simile a traverse, ma la callback viene eseguita solo su oggetti visibili.
+      I discendenti di oggetti invisibili non vengono attraversati.<br/>
+      Nota: È sconsigliato modificare il grafico della scena all'interno della callback.
+		</p>
+
+		<h3>[method:undefined traverseAncestors]( [param:Function callback] )</h3>
+		<p>
+		  callback -  Una funzione con primo argomento un oggetto Object3D..<br /><br />
+
+      Esegue la callback su tutti i predecessori.<br/>
+      Nota: È sconsigliato modificare il grafico della scena all'interno della callback.
+		</p>
+
+		<h3>[method:undefined updateMatrix]()</h3>
+		<p>Aggiorna la trasformazione locale.</p>
+
+		<h3>[method:undefined updateMatrixWorld]( [param:Boolean force] )</h3>
+		<p>Aggiorna la trasformazione globale di un oggetto e i suoi discendenti.</p>
+
+		<h3>[method:undefined updateWorldMatrix]( [param:Boolean updateParents], [param:Boolean updateChildren] )</h3>
+		<p>
+      updateParents - aggiorna ricorsivamente la trasformazione globale dei predecessori.<br />
+      updateChildren - aggiorna ricorsivamente la trasformazione globale dei discendenti.<br /><br />
+
+      Aggiorna la trasformazione globale dell'oggetto.
+		</p>
+
+		<h3>[method:Vector3 worldToLocal]( [param:Vector3 vector] )</h3>
+		<p>
+		  vector - Un vettore che rappresenta una posizione nello spazio world.<br /><br />
+
+      Converte il vettore dallo spazio world allo spazio locale di questo oggetto.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 217 - 0
docs/api/it/core/Raycaster.html

@@ -0,0 +1,217 @@
+<!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>[name]</h1>
+
+		<p class="desc">
+      Questa classe è progettata per aiutare il [link:https://en.wikipedia.org/wiki/Ray_casting raycasting].
+      Il raycasting viene utilizzato, tra le altre cose, per il mouse picking (per capire su quali oggetti dello spazio 3d si trova il mouse).
+		</p>
+
+		<h2>Codice di Esempio</h2>
+		<code>
+		const raycaster = new THREE.Raycaster();
+		const pointer = new THREE.Vector2();
+
+		function onPointerMove( event ) {
+
+			// calcolare la posizione del puntatore nelle coordinate del dispositivo normalizzate
+			// (-1 to +1) per entrambi i componenti
+
+			pointer.x = ( event.clientX / window.innerWidth ) * 2 - 1;
+			pointer.y = - ( event.clientY / window.innerHeight ) * 2 + 1;
+
+		}
+
+		function render() {
+
+			// aggiornare il raggio di picking con la telecamera e la posizione del puntatore
+			raycaster.setFromCamera( pointer, camera );
+
+			// calcolare gli oggetti intersecati dal raggio di picking
+			const intersects = raycaster.intersectObjects( scene.children );
+
+			for ( let i = 0; i < intersects.length; i ++ ) {
+
+				intersects[ i ].object.material.color.set( 0xff0000 );
+
+			}
+
+			renderer.render( scene, camera );
+
+		}
+
+		window.addEventListener( 'pointermove', onPointerMove );
+
+		window.requestAnimationFrame(render);
+
+		</code>
+
+		<h2>Esempi</h2>
+
+		<p>
+			[example:webgl_interactive_cubes Raycasting to a Mesh]<br />
+			[example:webgl_interactive_cubes_ortho Raycasting to a Mesh in using an OrthographicCamera]<br />
+			[example:webgl_interactive_buffergeometry Raycasting to a Mesh with BufferGeometry]<br />
+			[example:webgl_instancing_raycast Raycasting to a InstancedMesh]<br />
+			[example:webgl_interactive_lines Raycasting to a Line]<br />
+			[example:webgl_interactive_raycasting_points Raycasting to Points]<br />
+			[example:webgl_geometry_terrain_raycast Terrain raycasting]<br />
+			[example:webgl_interactive_voxelpainter Raycasting to paint voxels]<br />
+			[example:webgl_raycaster_texture Raycast to a Texture]
+		</p>
+
+		<h2>Costruttore</h2>
+
+		<h3>[name]( [param:Vector3 origin], [param:Vector3 direction], [param:Float near], [param:Float far] )</h3>
+		<p>
+      [page:Vector3 origin] — Il vettore di origine da cui viene proiettato il raggio.<br />
+      [page:Vector3 direction] — Il vettore direzione che fornisce la direzione del raggio. Deve essere normalizzato.<br />
+      [page:Float near] — Tutti i risultati restituiti sono più lontani che vicini. Near non può essere negativo. Il valore predefinito è 0.<br />
+      [page:Float far] — Tutti i risultati ottenuti sono più vicini che lontani. Far non può essere minore di near. Il valore predefinito è Infinity.
+		</p>
+		<p>
+      Crea un nuovo oggetto raycaster.<br />
+		</p>
+
+
+		<h2>Proprietà</h2>
+
+		<h3>[property:Float far]</h3>
+		<p>
+      Il fattore `far` del raycaster. Questo valore indica quali oggetti possono essere scartati in base alla distanza.
+      Questo valore non dovrebbe essere negativo e deve essere maggiore del valore della proprietà `near`.
+		</p>
+
+		<h3>[property:Float near]</h3>
+		<p>
+      Il fattore `near` del raycaster. Questo valore indica quali oggetti possono essere scartati in base alla distanza.
+      Questo valore non dovrebbe essere negativo e deve essere minore del valore della proprietà `far`.
+		</p>
+
+		<h3>[property:Camera camera]</h3>
+		<p>
+      La telecamera da utilizzare durante il raycast contro oggetti dipendenti dalla vista, come oggetti su cartelloni pubblicitari 
+      come [page:Sprites]. Questo campo può essere settato manualmente o viene impostato quando si chiama il metodo "setFromCamera".
+
+      L'impostazione predefinita è null.
+		</p>
+
+		<h3>[property:Layers layers]</h3>
+		<p>
+      Utilizzato da [name] per ignorare selettivamente oggetti 3D durante l'esecuzione di test di intersezione. Il seguente codice di esempio
+      assicura che solo gli oggetti 3D sul layer `1` vengano rispettati dall'istanza di [name].
+
+		<code>
+		raycaster.layers.set( 1 );
+		object.layers.enable( 1 );
+		</code>
+
+		</p>
+
+		<h3>[property:Object params]</h3>
+		<p>
+      Un oggetto con le seguenti proprietà:
+
+			<code>
+{
+	Mesh: {},
+	Line: { threshold: 1 },
+	LOD: {},
+	Points: { threshold: 1 },
+	Sprite: {}
+}
+			</code>
+
+      Dove threshold è la precisione del raycaster quando intercetta gli oggetti, in unità di world.
+		</p>
+
+		<h3>[property:Ray ray]</h3>
+		<p>Il [Page:Ray raggio] usato per il raycasting.</p>
+
+
+		<h2>Metodi</h2>
+
+		<h3>[method:undefined set]( [param:Vector3 origin], [param:Vector3 direction] )</h3>
+		<p>
+      [page:Vector3 origin] — Il vettore di origine da cui viene proiettato il raggio.<br />
+      [page:Vector3 direction] — Il vettore di direzione normalizzato che fornisce la direzione al raggio.
+		</p>
+		<p>
+      Aggiorna il raggio con una nuova origine e direzione. Si noti che questo metodo copia solamente i valori dagli argomenti.
+		</p>
+
+		<h3>[method:undefined setFromCamera]( [param:Vector2 coords], [param:Camera camera] )</h3>
+		<p>
+      [page:Vector2 coords] — coordinate 2D del mouse, in coordinate normalizzate del dispositivo (NDC)---i componenti X e Y dovrebbero essere tra -1 e 1.<br />
+      [page:Camera camera] — telecamera da cui dovrebbe provenire il raggio.
+		</p>
+		<p>
+		  Aggiorna il raggio con una nuova origine e direzione.
+		</p>
+
+		<h3>[method:Array intersectObject]( [param:Object3D object], [param:Boolean recursive], [param:Array optionalTarget] )</h3>
+		<p>
+		[page:Object3D object] — L'oggetto da verificare per l'intersezione con il raggio.<br />
+		[page:Boolean recursive] — Se true, controlla anche tutti i discendenti. Altrimenti controlla soltanto 
+    l'intersezione con l'oggetto. Il valore predefinito è true.<br />
+		[page:Array optionalTarget] — (opzionale) obiettivo per impostare il risultato. 
+    Altrimenti viene istanziato un nuovo [page:Array]. Se impostato, è necessario cancellare questo array prima di ogni chiamata (ad esempio, array.length = 0;).
+		</p>
+		<p>
+      Controlla tutte le intersezioni tra il raggio e l'oggetto con o senza i discendenti.
+      Le intersezioni sono restituite ordinate per distanza, le più vicine prima. Viene restituito un array di intersezioni...
+		</p>
+		<code>
+				[ { distance, point, face, faceIndex, object }, ... ]
+		</code>
+		<p>
+			[page:Float distance] – distanza tra l'origine del raggio e l'intersezione<br />
+			[page:Vector3 point] – punto di intersezione, nelle coordinate world<br />
+			[page:Object face] – faccia intersecata<br />
+			[page:Integer faceIndex] – indice della faccia intersecata<br />
+			[page:Object3D object] – l'oggetto intersecato<br />
+			[page:Vector2 uv] - le coordinate U,V nel punto di intersezione<br />
+			[page:Vector2 uv2] - Secondo insieme delle coordinate U,V nel punto di intersezione<br />
+			[page:Integer instanceId] – Il numero di indice dell'istanza in cui il raggio interseca la InstancedMesh.
+		</p>
+		<p>
+      `Raycaster` delega al metodo [page:Object3D.raycast raycast] dell'oggetto passato, 
+      quando valuta se il raggio interseca l'oggetto o no. Ciò permette alle mesh di rispondere 
+      in modo diverso al raycasting rispetto alle linee e alle nuvole di punti.
+		</p>
+		<p>
+      *Nota* per le mesh, le facce devono essere puntate verso l'origine del [page:.ray raggio] per essere rilevate;
+      le intersezioni del raggio passato attraverso il retro della faccia non saranno rilevate. Per eseguire il raycast
+      su entrambe le facce dell'oggetto, ti consigliamo di impostare la proprietà [page:Material.side side] del [page:Mesh.material materiale]
+      a `THREE.DoubleSide`.
+		</p>
+
+		<h3>[method:Array intersectObjects]( [param:Array objects], [param:Boolean recursive], [param:Array optionalTarget] )</h3>
+		<p>
+      [page:Array objects] — Gli oggetti da controllare per l'intersezione con il raggio.<br />
+      [page:Boolean recursive] — Se true, controlla anche i discendenti degli oggetti. Altrimenti controlla soltanto 
+      l'intersezione con gli oggetti. Il valore predefinito è true.<br />
+      [page:Array optionalTarget] — (opzionale) obiettivo per impostare il risultato.
+      Altrimenti viene istanziato un nuovo [page:Array]. Se impostato, è necessario cancellare questo array prima di ogni chiamata (ad esempio, array.length = 0;).
+		</p>
+		<p>
+      Controlla tutte le intersezioni tra il raggio e gli oggetti con o senza i discendenti.
+      Le intersezioni sono restituite ordinate per distanza, prima le più vicine. Le intersezioni 
+      hanno la stessa forma di quelle restituite da [page:.intersectObject].
+		</p>
+
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 274 - 0
docs/api/it/core/Uniform.html

@@ -0,0 +1,274 @@
+<!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>[name]</h1>
+
+		<p class="desc">Le uniform sono delle variabili GLSL globali. Vengono passate ai programmi shader.
+		</p>
+
+		<h2>Codice di Esempio</h2>
+		<p>
+      Quando si dichiara una uniform di uno [page:ShaderMaterial], viene dichiarata per valore o per oggetto.
+		</p>
+		<code>
+		uniforms: {
+			time: { value: 1.0 },
+			resolution: new Uniform( new Vector2() )
+		};
+		</code>
+
+		<h2>Tipi Uniform</h2>
+
+		<p>
+      Ogni uniform deve avere una proprietà `value`. Il tipo di value deve corrispondere al tipo
+      della variabile uniform nel codice GLSL come specificato per i tipi primitivi GLSL nella tabella
+      sotto. Anche le strutture uniform e gli array sono supportati. Gli array GLSL di tipo primitivo 
+      devono essere specificati come un array del corrispondente oggetto THREE o come un array flat
+      contenente i dati di tutti gli oggetti. In altre parole; le primitive GLSL negli array 
+      non devono essere rappresentate dagli array. Questa regola non si applica in modo transitivo.
+      Un array di array `vec2`, ciascuno con una lunghezza di cinque vettori, deve essere un array di array,
+      di cinque oggetti [page:Vector2] o di dieci `numeri`.
+		</p>
+		<table>
+			<caption><a id="uniform-types">Tipi Uniform</a></caption>
+			<thead>
+				<tr>
+					<th>GLSL type</th>
+					<th>JavaScript type</th>
+				</tr>
+			</thead>
+			<tbody>
+
+				<tr>
+					<td>int</td>
+					<td>[page:Number]</td>
+				</tr>
+				<tr>
+					<td>uint (WebGL 2)</td>
+					<td>[page:Number]</td>
+				</tr>
+				<tr>
+					<td>float</td>
+					<td>[page:Number]</td>
+				</tr>
+				<tr>
+					<td>bool</td>
+					<td>[page:Boolean]</td>
+				</tr>
+				<tr>
+					<td>bool</td>
+					<td>[page:Number]</td>
+				</tr>
+
+				<tr>
+					<td>vec2</td>
+					<td>[page:Vector2 THREE.Vector2]</td>
+				</tr>
+				<tr>
+					<td>vec2</td>
+					<td>[page:Float32Array Float32Array] (*)</td>
+				</tr>
+				<tr>
+					<td>vec2</td>
+					<td>[page:Array Array] (*)</td>
+				</tr>
+				<tr>
+					<td>vec3</td>
+					<td>[page:Vector3 THREE.Vector3]</td>
+				</tr>
+				<tr>
+					<td>vec3</td>
+					<td>[page:Color THREE.Color]</td>
+				</tr>
+				<tr>
+					<td>vec3</td>
+					<td>[page:Float32Array Float32Array] (*)</td>
+				</tr>
+				<tr>
+					<td>vec3</td>
+					<td>[page:Array Array] (*)</td>
+				</tr>
+				<tr>
+					<td>vec4</td>
+					<td>[page:Vector4 THREE.Vector4]</td>
+				</tr>
+				<tr>
+					<td>vec4</td>
+					<td>[page:Quaternion THREE.Quaternion]</td>
+				</tr>
+				<tr>
+					<td>vec4</td>
+					<td>[page:Float32Array Float32Array] (*)</td>
+				</tr>
+				<tr>
+					<td>vec4</td>
+					<td>[page:Array Array] (*)</td>
+				</tr>
+
+				<tr>
+					<td>mat2</td>
+					<td>[page:Float32Array Float32Array] (*)</td>
+				</tr>
+				<tr>
+					<td>mat2</td>
+					<td>[page:Array Array] (*)</td>
+				</tr>
+				<tr>
+					<td>mat3</td>
+					<td>[page:Matrix3 THREE.Matrix3]</td>
+				</tr>
+				<tr>
+					<td>mat3</td>
+					<td>[page:Float32Array Float32Array] (*)</td>
+				</tr>
+				<tr>
+					<td>mat3</td>
+					<td>[page:Array Array] (*)</td>
+				</tr>
+				<tr>
+					<td>mat4</td>
+					<td>[page:Matrix4 THREE.Matrix4]</td>
+				</tr>
+				<tr>
+					<td>mat4</td>
+					<td>[page:Float32Array Float32Array] (*)</td>
+				</tr>
+				<tr>
+					<td>mat4</td>
+					<td>[page:Array Array] (*)</td>
+				</tr>
+
+				<tr>
+					<td>ivec2, bvec2</td>
+					<td>[page:Float32Array Float32Array] (*)</td>
+				</tr>
+				<tr>
+					<td>ivec2, bvec2</td>
+					<td>[page:Array Array] (*)</td>
+				</tr>
+				<tr>
+					<td>ivec3, bvec3</td>
+					<td>[page:Int32Array Int32Array] (*)</td>
+				</tr>
+				<tr>
+					<td>ivec3, bvec3</td>
+					<td>[page:Array Array] (*)</td>
+				</tr>
+				<tr>
+					<td>ivec4, bvec4</td>
+					<td>[page:Int32Array Int32Array] (*)</td>
+				</tr>
+				<tr>
+					<td>ivec4, bvec4</td>
+					<td>[page:Array Array] (*)</td>
+				</tr>
+
+				<tr>
+					<td>sampler2D</td>
+					<td>[page:Texture THREE.Texture]</td>
+				</tr>
+				<tr>
+					<td>samplerCube</td>
+					<td>[page:CubeTexture THREE.CubeTexture]</td>
+				</tr>
+
+			</tbody>
+		</table>
+
+		<p>
+		  (*) Lo stesso per un array (dimensione) (più interno) dello stesso tipo GLSL, contenente i componenti di tutti i vettori o le matrici nell'array.
+		</p>
+
+		<h2>Uniform Strutturate</h2>
+
+		<p>
+      A volte vuoi organizzare le uniform come `structs` nel tuo codice shader. 
+      È necessario utilizzare lo stile seguente in modo che three.js sia in grado di elaborare dati strutturati uniform.
+		</p>
+		<code>
+		uniforms = {
+			data: {
+				value: {
+					position: new Vector3(),
+					direction: new Vector3( 0, 0, 1 )
+				 }
+			}
+		};
+		</code>
+    Questa definizione può essere mappata con il seguente codice GLSL:
+		<code>
+		struct Data {
+			vec3 position;
+			vec3 direction;
+		};
+
+		uniform Data data;
+		</code>
+
+		<h2>Uniforms Strutturate con Array</h2>
+
+		<p>
+      È anche possibile gestire `structs` negli array. La sintassi per questo caso d'uso appare così:
+		</p>
+		<code>
+		const entry1 = {
+			position: new Vector3(),
+			direction: new Vector3( 0, 0, 1 )
+		};
+		const entry2 = {
+			position: new Vector3( 1, 1, 1 ),
+			direction: new Vector3( 0, 1, 0 )
+		};
+
+		uniforms = {
+			data: {
+				value: [ entry1, entry2 ]
+			}
+		};
+		</code>
+    Questa definizione può essere mappata con il seguente codice GLSL:
+		<code>
+		struct Data {
+			vec3 position;
+			vec3 direction;
+		};
+
+		uniform Data data[ 2 ];
+		</code>
+
+		<h2>Costruttore</h2>
+
+		<h3>[name]( [param:Object value] )</h3>
+		<p>
+		  value -- Un oggetto contenente il valore per impostare la uniform. Il suo tipo deve essere uno dei tipi uniform descritti sopra.
+		</p>
+
+		<h2>Proprietà</h2>
+
+		<h3>[property:Object value]</h3>
+		<p>
+      Il valore corrente della uniform.
+		</p>
+
+		<h2>Metodi</h2>
+
+		<h3>[method:Uniform clone]()</h3>
+		<p>
+      Restituisce un clone della uniform.<br />
+      Se il valore della proprietà uniform è un [page:Object] con un metodo clone(), viene utilizzato, altrimenti il valore è copiato per assegnazione.
+      I valori dell'array sono condivisi tra le [page:Uniform] clonate.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 65 - 0
docs/api/it/core/bufferAttributeTypes/BufferAttributeTypes.html

@@ -0,0 +1,65 @@
+<!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>
+		[page:BufferAttribute] &rarr;
+
+		<h1>Tipi di BufferAttribute</h1>
+
+		<p class="desc">
+      Ci sono nove tipi di [page:BufferAttribute] disponibili in three.js. Questi corrispondono ai 
+      [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray#Syntax Typed Array] JavaScript.
+		</p>
+
+		<code>
+		THREE.Float64BufferAttribute
+		THREE.Float32BufferAttribute
+		THREE.Float16BufferAttribute
+		THREE.Uint32BufferAttribute
+		THREE.Int32BufferAttribute
+		THREE.Uint16BufferAttribute
+		THREE.Int16BufferAttribute
+		THREE.Uint8ClampedBufferAttribute
+		THREE.Uint8BufferAttribute
+		THREE.Int8BufferAttribute
+		</code>
+
+		<h2>Costruttore</h2>
+
+		<p>Tutti i precedenti sono chiamati allo stesso modo.</p>
+
+		<h3>TypedBufferAttribute( [param:Array_or_Integer array], [param:Integer itemSize], [param:Boolean normalized] )</h3>
+		<p>
+			array -- può essere un array tipizzato o non tipizzato (normale) o una lunghezza intera.
+      Un valore dell'array sarà convertito nel Tipo specificato.
+      Se viene data una lunghezza sarà creato un nuovo TypedArray, inizializzato con tutti gli elementi impostati a zero.<br /><br />
+
+      itemSize -- il numero di valori dell'array che dovrebbe essere associato ad un particolare vertice.<br /><br />
+
+      normalized -- (opzionale) indica come i dati sottostanti nel buffer vengono mappati ai valori nel codice GLSL.
+		</p>
+
+		<h2>Proprietà</h2>
+
+		<p>
+			Vedi [page:BufferAttribute] per le prorietà ereditate.
+		</p>
+
+		<h2>Metodi</h2>
+
+		<p>
+			Vedi [page:BufferAttribute] per i metodi ereditati.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/core/BufferAttribute.js src/core/BufferAttribute.js]
+		</p>
+	</body>
+</html>

+ 48 - 2
docs/list.json

@@ -1166,10 +1166,56 @@
 				"QuaternionKeyframeTrack": "api/it/animation/tracks/QuaternionKeyframeTrack",
 				"QuaternionKeyframeTrack": "api/it/animation/tracks/QuaternionKeyframeTrack",
 				"StringKeyframeTrack": "api/it/animation/tracks/StringKeyframeTrack",
 				"StringKeyframeTrack": "api/it/animation/tracks/StringKeyframeTrack",
 				"VectorKeyframeTrack": "api/it/animation/tracks/VectorKeyframeTrack"
 				"VectorKeyframeTrack": "api/it/animation/tracks/VectorKeyframeTrack"
-			}
+			},
 
 
-		}
+      "Audio": {
+        "Audio": "api/it/audio/Audio",
+        "AudioAnalyser": "api/it/audio/AudioAnalyser",
+        "AudioContext": "api/it/audio/AudioContext",
+        "AudioListener": "api/it/audio/AudioListener",
+        "PositionalAudio": "api/it/audio/PositionalAudio"
+		  },
+
+      "Telecamere": {
+				"ArrayCamera": "api/it/cameras/ArrayCamera",
+				"Camera": "api/it/cameras/Camera",
+				"CubeCamera": "api/it/cameras/CubeCamera",
+				"OrthographicCamera": "api/it/cameras/OrthographicCamera",
+				"PerspectiveCamera": "api/it/cameras/PerspectiveCamera",
+				"StereoCamera": "api/it/cameras/StereoCamera"
+			},
+
+      "Costanti": {
+				"Animazione": "api/it/constants/Animation",
+				"Core": "api/it/constants/Core",
+				"CustomBlendingEquation": "api/it/constants/CustomBlendingEquations",
+				"BufferAttributeUsage": "api/it/constants/BufferAttributeUsage",
+				"Materiali": "api/it/constants/Materials",
+				"Renderer": "api/it/constants/Renderer",
+				"Texture": "api/it/constants/Textures"
+			},
+
+      "Core": {
+				"BufferAttribute": "api/it/core/BufferAttribute",
+				"BufferGeometry": "api/it/core/BufferGeometry",
+				"Clock": "api/it/core/Clock",
+				"EventDispatcher": "api/it/core/EventDispatcher",
+				"GLBufferAttribute": "api/it/core/GLBufferAttribute",
+				"InstancedBufferAttribute": "api/it/core/InstancedBufferAttribute",
+				"InstancedBufferGeometry": "api/it/core/InstancedBufferGeometry",
+				"InstancedInterleavedBuffer": "api/it/core/InstancedInterleavedBuffer",
+				"InterleavedBuffer": "api/it/core/InterleavedBuffer",
+				"InterleavedBufferAttribute": "api/it/core/InterleavedBufferAttribute",
+				"Layers": "api/it/core/Layers",
+				"Object3D": "api/it/core/Object3D",
+				"Raycaster": "api/it/core/Raycaster",
+				"Uniform": "api/it/core/Uniform"
+			},
 
 
+			"Core / BufferAttributes": {
+				"BufferAttribute Types": "api/it/core/bufferAttributeTypes/BufferAttributeTypes"
+			}
+    }
 	},
 	},
 	"pt-br": {
 	"pt-br": {