Browse Source

Add Objects italian version (#24850)

Angela Busato 2 years ago
parent
commit
2f2c19b280

+ 58 - 0
docs/api/it/objects/Bone.html

@@ -0,0 +1,58 @@
+<!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">
+			Un osso che è parte di uno [page:Skeleton Scheletro]. Lo scheletro a sua volta viene 
+			utilizzato da [page:SkinnedMesh]. Le ossa sono quasi identiche ad un [page:Object3D] vuoto.
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		const root = new THREE.Bone();
+		const child = new THREE.Bone();
+
+		root.add( child );
+		child.position.y = 5;
+		</code>
+
+		<h2>Costruttore</h2>
+
+		<h3>[name]( )</h3>
+		<p>
+		Crea un nuovo [name].
+		</p>
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe base [page:Object3D] per le proprietà comuni.</p>
+
+		<h3>[property:Boolean isBone]</h3>
+		<p>
+			Flag di sola lettura per verificare se l'oggetto dato è di tipo [name].
+		</p>
+
+
+		<h3>[property:String type]</h3>
+		<p>Impostato su 'Bone', può essere utilizzato per trovare tutte le ossa in una scena.</p>
+
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe base [page:Object3D] 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>

+ 65 - 0
docs/api/it/objects/Group.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:Object3D] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			Questo è quasi identico ad un [page:Object3D Object3D]. 
+			Il suo scopo è rendere sintatticamente più chiaro il lavoro con gruppi di oggetti.
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		const geometry = new THREE.BoxGeometry( 1, 1, 1 );
+		const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
+
+		const cubeA = new THREE.Mesh( geometry, material );
+		cubeA.position.set( 100, 100, 0 );
+
+		const cubeB = new THREE.Mesh( geometry, material );
+		cubeB.position.set( -100, -100, 0 );
+
+		// Crea un gruppo e aggiunge due cubi
+		// Questi cubi possono essere ruotati / ridimensionati etc come gruppo
+		const group = new THREE.Group();
+		group.add( cubeA );
+		group.add( cubeB );
+
+		scene.add( group );
+		</code>
+
+
+		<h2>Costruttore</h2>
+
+		<h3>[name]( )</h3>
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe base [page:Object3D] per le proprietà comuni.</p>
+
+		<h3>[property:Boolean isGroup]</h3>
+		<p>
+			Flag di sola lettura per verificare se l'oggetto dato è di tipo [name].
+		</p>
+
+		<h3>[property:String type]</h3>
+		<p>Una stringa 'Group'. Non deve essere modificata.</p>
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe base [page:Object3D] 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>

+ 133 - 0
docs/api/it/objects/InstancedMesh.html

@@ -0,0 +1,133 @@
+<!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:Mesh] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			Una versione speciale di [page:Mesh] con il supporto per il rendering istanziato. Utilizza [name]
+			se devi renderizzare un grande numero di oggetti con la stessa geometria e materiale ma con 
+			diverse trasformazioni world. L'utilizzo di [name] ti aiuterà a ridurre il numero di 
+			chiamate di disegno e quindi migliorare le prestazioni complessive del rendering nell'applicazione.
+		</p>
+
+		<h2>Esempi</h2>
+
+		<p>
+			[example:webgl_instancing_dynamic WebGL / instancing / dynamic]<br />
+			[example:webgl_instancing_performance WebGL / instancing / performance]<br />
+			[example:webgl_instancing_scatter WebGL / instancing / scatter]<br />
+			[example:webgl_instancing_raycast WebGL / instancing / raycast]
+		</p>
+
+		<h2>Costruttore</h2>
+		<h3>[name]( [param:BufferGeometry geometry], [param:Material material], [param:Integer count] )</h3>
+		<p>
+		[page:BufferGeometry geometry] - un'istanza di [page:BufferGeometry].<br />
+		[page:Material material] - un'istanza di [page:Material]. Il valore di default è un nuovo [page:MeshBasicMaterial].<br />
+		[page:Integer count] - il numero di istanze.<br />
+		</p>
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe base [page:Mesh] per le proprietà comuni.</p>
+
+		<h3>[property:Integer count]</h3>
+		<p>
+			Il numero di istanze. Il valore `count` passato nel costruttore rappresenta il numero 
+			massimo di istanze di questa mesh. Puoi modificare il numero di istanze in fase di esecuzione ad un valore intero
+			nell'intervallo [0, count].
+		</p>
+		<p>
+			Se hai bisogno di più istanze del valore count originale, devi creare una nuova [name].
+		</p>
+
+		<h3>[property:InstancedBufferAttribute instanceColor]</h3>
+		<p>
+			Rappresenta i colori di tutte le istanze. Il valore predefinito è `null`.
+			È necessario impostare il suo flag [page:BufferAttribute.needsUpdate needsUpdate] 
+			a true se si modificano i dati di istanza tramite [page:.setColorAt]().
+		</p>
+
+		<h3>[property:InstancedBufferAttribute instanceMatrix]</h3>
+		<p>
+			Rappresenta la trasformazione locale di tutte le istanze.
+			È necessario impostare il suo flag [page:BufferAttribute.needsUpdate needsUpdate] 
+			a true se si modificano i dati di istanza tramite [page:.setMatrixAt]().
+		</p>
+
+		<h3>[property:Boolean isInstancedMesh]</h3>
+		<p>
+			Flag di sola lettura per verificare se l'oggetto dato è di tipo [name].
+		</p>
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe base [page:Mesh] per i metodi comuni.</p>
+
+		<h3>[method:undefined dispose]()</h3>
+		<p>
+			Libera le risorse relative alla GPU allocate da questa istanza.
+			Chiama questo metodo ogni volta che questa istanza non è più utilizzata nella tua applicazione.
+		</p>
+
+		<h3>[method:undefined getColorAt]( [param:Integer index], [param:Color color] )</h3>
+		<p>
+			[page:Integer index]: L'indice di un'istanza. I valori devono essere nell'intervallo [0, count].
+		</p>
+		<p>
+			[page:Color color]: Il colore dell'oggetto sarà impostato al colore dell'istanza definita.
+		</p>
+		<p>
+			Ottieni il colore dell'istanza definita.
+		</p>
+
+		<h3>[method:undefined getMatrixAt]( [param:Integer index], [param:Matrix4 matrix] )</h3>
+		<p>
+			[page:Integer index]: L'indice di un'istanza. I valori devono essere nell'intervallo [0, count].
+		</p>
+		<p>
+			[page:Matrix4 matrix]: Questa matrice 4x4 sarà impostata alla matrice trasformazione locale dell'istanza definita.
+		</p>
+		<p>
+			Ottieni la matrice trasformazione locale dell'istanza definita.
+		</p>
+
+		<h3>[method:undefined setColorAt]( [param:Integer index], [param:Color color] )</h3>
+		<p>
+			[page:Integer index]: L'indice di un'istanza. I valori devono essere nell'intervallo [0, count].
+		</p>
+		<p>
+			[page:Color color]: Il colore di una singola istanza.
+		</p>
+		<p>
+			Imposta il colore dato all'istanza definita.
+			Assicurati di impostare [page:.instanceColor][page:BufferAttribute.needsUpdate .needsUpdate] 
+			a true dopo l'aggiornamento di tutti i colori.
+		</p>
+
+		<h3>[method:undefined setMatrixAt]( [param:Integer index], [param:Matrix4 matrix] )</h3>
+		<p>
+			[page:Integer index]: L'indice di un'istanza. I valori devono essere nell'intervallo [0, count].
+		</p>
+		<p>
+			[page:Matrix4 matrix]: Una matrice 4x4 che rappresenta la trasformazione locale di una singola istanza.
+		</p>
+		<p>
+			Imposta la matrice trasformazione locale data all'istanza definita.
+			Assicurati di impostare [page:.instanceColor][page:BufferAttribute.needsUpdate .needsUpdate] 
+			a true dopo l'aggiornamento di tutte le matrici.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 128 - 0
docs/api/it/objects/LOD.html

@@ -0,0 +1,128 @@
+<!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">
+			Livello di Dettaglio - mostra mesh con più o meno geometria in base alla distanza dalla telecamera.<br /><br />
+
+			Ogni livello è associato ad un oggetto, e il rendering può essere commutato tra di loro alle distanze specificate.
+			In genere creeresti, per esempio, tre mesh, una per il lontano (dettaglio basse), una per la gamma media (medio dettaglio)
+			e una per i primi piani (alto dettaglio).
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		const lod = new THREE.LOD();
+
+		// Crea sfere con 3 livelli di dettaglio e crea nuovi livelli LOD per loro
+		for( let i = 0; i < 3; i++ ) {
+
+			const geometry = new THREE.IcosahedronGeometry( 10, 3 - i )
+
+			const mesh = new THREE.Mesh( geometry, material );
+
+			lod.addLevel( mesh, i * 75 );
+
+		}
+
+		scene.add( lod );
+		</code>
+
+		<h2>Esempi</h2>
+
+		<p>
+			[example:webgl_lod webgl / lod ]
+		</p>
+
+		<h2>Costruttore</h2>
+		<h3>[name]( )</h3>
+		<p>
+			Crea un nuovo [name].
+		</p>
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe base [page:Object3D] per le proprietà comuni.</p>
+
+		<h3>[property:Boolean autoUpdate]</h3>
+		<p>
+			Indica se l'oggetto LOD viene aggiornato automaticamente dal renderer per frame o no.
+			Se impostato a false, devi chiamare da solo [page:LOD.update]() nel ciclo di rendering.
+			Il valore predefinito è true.
+		</p>
+
+		<h3>[property:Boolean isLOD]</h3>
+		<p>
+			Flag di sola lettura per verificare se l'oggetto dato è di tipo [name].
+		</p>
+
+		<h3>[property:Array levels]</h3>
+		<p>
+			Un array di oggetti [page:Object level].<br /><br />
+
+			Ogni livello è un oggetto con due proprietà:<br />
+			[page:Object3D object] - L'[page:Object3D] da visualizzare a questo livello.<br />
+			[page:Float distance] - La distanza alla quale visualizzare questo livello di dettaglio.
+		</p>
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe base [page:Object3D] per i metodi comuni.</p>
+
+		<h3>[method:this addLevel]( [param:Object3D object], [param:Float distance] )</h3>
+		<p>
+		[page:Object3D object] - L'[page:Object3D] da visualizzare a questo livello.<br />
+		[page:Float distance] - La distanza alla quale visualizzare questo livello di dettaglio.<br /><br />
+
+		Aggiunge una mesh che sarà visualizzata ad una certa distanza e maggiore. In genere, maggiore è 
+		la distanza, minore è il dettaglio sulla mesh.
+		</p>
+
+		<h3>[method:LOD clone]()</h3>
+		<p>
+			Restituisce un clone di questo oggetto LOD e degli oggetti specifici della distanza ad esso associati.
+		</p>
+
+
+		<h3>[method:Integer getCurrentLevel]()</h3>
+		<p>
+			Ottiene il livello LOD attivo attualmente. Come indice dell'array dei livelli.
+		</p>
+
+		<h3>[method:Object3D getObjectForDistance]( [param:Float distance] )</h3>
+		<p>
+			Ottiene un riferimento al primo [page:Object3D] (mesh) che è maggiore della [page:Float distance].
+		</p>
+
+		<h3>[method:undefined raycast]( [param:Raycaster raycaster], [param:Array intersects] )</h3>
+		<p>
+			Ottiene le intersezioni tra un [page:Ray] lanciato a questo LOD.
+			[page:Raycaster.intersectObject] chiamerà questo metodo.
+		</p>
+
+		<h3>[method:Object toJSON]( meta )</h3>
+		<p>
+			Crea una struttura JSON con i dettagli di questo oggetto LOD.
+		</p>
+
+		<h3>[method:undefined update]( [param:Camera camera] )</h3>
+		<p>
+			Imposta la visibilità di ogni [page:Object3D oggetto] del [page:levels livello] in base 
+			alla distanza dalla [page:Camera telecamera].
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 110 - 0
docs/api/it/objects/Line.html

@@ -0,0 +1,110 @@
+<!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">
+			Una linea continua.<br /><br />
+
+			Questo è quasi lo stesso di [page:LineSegments]; l'unica differenza è che questo viene renderizzato utilizzando
+			[link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/drawElements gl.LINE_STRIP]
+			invece di [link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/drawElements gl.LINES]
+
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		const material = new THREE.LineBasicMaterial({
+			color: 0x0000ff
+		});
+
+		const points = [];
+		points.push( new THREE.Vector3( - 10, 0, 0 ) );
+		points.push( new THREE.Vector3( 0, 10, 0 ) );
+		points.push( new THREE.Vector3( 10, 0, 0 ) );
+
+		const geometry = new THREE.BufferGeometry().setFromPoints( points );
+
+		const line = new THREE.Line( geometry, material );
+		scene.add( line );
+		</code>
+
+
+		<h2>Costruttore</h2>
+
+		<h3>[name]( [param:BufferGeometry geometry], [param:Material material] )</h3>
+
+		<p>
+		[page:BufferGeometry geometry] — vertici che rappresentano il segmento(i) di linea. Il valore predefinito è una nuova [page:BufferGeometry].<br />
+		[page:Material material] — materiale per la linea. Il valore predefinito è una nuova [page:LineBasicMaterial].<br />
+		</p>
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe base [page:Object3D] per le proprietà comuni.</p>
+
+		<h3>[property:BufferGeometry geometry]</h3>
+		<p>Vertici che rappresentano il segmento(i) di linea.</p>
+
+		<h3>[property:Boolean isLine]</h3>
+		<p>
+			Flag di sola lettura per verificare se l'oggetto dato è di tipo [name].
+		</p>
+
+		<h3>[property:Material material]</h3>
+		<p>Materiale per la linea.</p>
+
+		<h3>[property:Array morphTargetInfluences]</h3>
+		<p>
+			Un array di pesi solitamente da 0 a 1 che specifica la quantità di morph applicata.
+			Non definito per impostazione predefinita, ma reimpostato su un array vuoto da [page:.updateMorphTargets]().
+		</p>
+
+		<h3>[property:Object morphTargetDictionary]</h3>
+		<p>
+			Un dizionario di morphTargets basato sulla proprietà morphTarget.name.
+			Non definito per impostazione predefinita, ma ricompilato [page:.updateMorphTargets]().
+		</p>
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe base [page:Object3D] per i metodi comuni.</p>
+
+		<h3>[method:this computeLineDistances]()</h3>
+		<p>
+			Calcola un array di valori di distanza necessari per [page:LineDashedMaterial]. 
+			Per ogni vertice nella geometria, il metodo calcola la lunghezza cumulativa dal punto
+			corrente fino all'inizio della linea.
+		</p>
+
+		<h3>[method:undefined raycast]( [param:Raycaster raycaster], [param:Array intersects] )</h3>
+		<p>
+			Ottiene le intersezioni tra un [page:Ray] lanciato e questa linea.
+			[page:Raycaster.intersectObject] chiamerà questo metodo.
+		</p>
+
+		<h3>[method:Line clone]()</h3>
+		<p>
+			Restituisce un clone di questo oggetto Line e i suoi discendenti.
+		</p>
+
+		<h3>[method:undefined updateMorphTargets]()</h3>
+		<p>
+			Aggiorna i morphTargets in modo che non abbiano alcuna influenza sull'oggetto. 
+			Reimposta le proprietà [page:.morphTargetInfluences] e [page:.morphTargetDictionary].
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 52 - 0
docs/api/it/objects/LineLoop.html

@@ -0,0 +1,52 @@
+<!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:Line] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			Una linea continua che si ricollega alla partenza.<br /><br />
+
+			Questo è quasi lo stesso di [page:Line]; l'unica differenza è che viene
+			renderizzato utilizzando 
+			[link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/drawElements gl.LINE_LOOP]
+			invece di [link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/drawElements gl.LINE_STRIP],
+			il quale disegna una linea retta al vertice successivo, e ricollega l'ultimo vertice al primo.
+		</p>
+
+
+		<h2>Costruttore</h2>
+
+		<h3>[name]( [param:BufferGeometry geometry], [param:Material material] )</h3>
+
+		<p>
+		[page:BufferGeometry geometry] — Elenco di vertici che rappresentano i punti del ciclo della linea.<br />
+		[page:Material material] — Materiale per la linea. Il valore predefinito è [page:LineBasicMaterial LineBasicMaterial].
+		</p>
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe base [page:Line] per le proprietà comuni.</p>
+
+		<h3>[property:Boolean isLineLoop]</h3>
+		<p>
+			Flag di sola lettura per verificare se l'oggetto dato è di tipo [name].
+		</p>
+
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe base [page:Line] 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>

+ 51 - 0
docs/api/it/objects/LineSegments.html

@@ -0,0 +1,51 @@
+<!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:Line] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			Una serie di linee tracciate tra coppie di vertici.<br /><br />
+
+			Questo è quasi lo stesso di [page:Line]; l'unica differenza è che viene
+			renderizzato utilizzando 
+			[link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/drawElements gl.LINES]
+			invece di [link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/drawElements gl.LINE_STRIP].
+		</p>
+
+
+		<h2>Costruttore</h2>
+
+		<h3>[name]( [param:BufferGeometry geometry], [param:Material material] )</h3>
+
+		<p>
+		[page:BufferGeometry geometry] — Coppia(e) di vertici che rappresentano ogni segmento(i) di linea.<br />
+		[page:Material material] — Materiale per la linea. Il valore predefinito è [page:LineBasicMaterial LineBasicMaterial].
+		</p>
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe base [page:Line] per le proprietà comuni.</p>
+
+		<h3>[property:Boolean isLineSegments]</h3>
+		<p>
+			Flag di sola lettura per verificare se l'oggetto dato è di tipo [name].
+		</p>
+
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe base [page:Line] 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>

+ 93 - 0
docs/api/it/objects/Mesh.html

@@ -0,0 +1,93 @@
+<!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">
+			Una classe che rappresenta oggetti basati su [link:https://en.wikipedia.org/wiki/Polygon_mesh mesh poligonali] triangolari.
+			Serve anche come base per altre classi come [page:SkinnedMesh].
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		const geometry = new THREE.BoxGeometry( 1, 1, 1 );
+		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
+		const mesh = new THREE.Mesh( geometry, material );
+		scene.add( mesh );
+		</code>
+
+		<h2>Costruttore</h2>
+
+		<h3>[name]( [param:BufferGeometry geometry], [param:Material material] )</h3>
+		<p>
+		[page:BufferGeometry geometry] — (opzionale) un'istanza di [page:BufferGeometry]. Il valore predefinito è una nuova [page:BufferGeometry].<br />
+		[page:Material material] — (opzionale) un singolo o un array di [page:Material Material]. Il valore predefinito è una nuova [page:MeshBasicMaterial].
+		</p>
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe base [page:Object3D] per le proprietà comuni.</p>
+
+		<h3>[property:BufferGeometry geometry]</h3>
+		<p>
+			Un'istanza di [page:BufferGeometry] (o classi derivate), che definisce la struttura dell'oggetto.
+		</p>
+
+		<h3>[property:Boolean isMesh]</h3>
+		<p>
+			Flag di sola lettura per verificare se l'oggetto dato è di tipo [name].
+		</p>
+
+		<h3>[property:Material material]</h3>
+		<p>
+			Un'istanza di materiale derivata dalla classe base [page:Material] o un array di materiali, che definisce
+			l'aspetto dell'oggetto. Il valore predefinito è [page:MeshBasicMaterial].
+		</p>
+
+		<h3>[property:Array morphTargetInfluences]</h3>
+		<p>
+			Un array di pesi solitamente da 0 a 1 che specifica la quantità di morph applicata.
+			Non definito per impostazione predefinita, ma reimpostato su un array vuoto da [page:Mesh.updateMorphTargets updateMorphTargets].
+		</p>
+
+		<h3>[property:Object morphTargetDictionary]</h3>
+		<p>
+			Un dizionario di morphTargets basato sulla proprietà morphTarget.name.
+			Non definito per impostazione predefinita, ma ricompilato [page:Mesh.updateMorphTargets updateMorphTargets].
+		</p>
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe base [page:Object3D] per i metodi comuni.</p>
+
+		<h3>[method:Mesh clone]()</h3>
+		<p>Restituisce un clone di questo oggetto [name] e i suoi discendenti.</p>
+
+		<h3>[method:undefined raycast]( [param:Raycaster raycaster], [param:Array intersects] )</h3>
+		<p>
+			Ottiene le intersezioni tra un raggio lanciato e questa mesh.
+			[page:Raycaster.intersectObject] chiamerà questo metodo, ma i risultati non saranno ordinati.
+		</p>
+
+		<h3>[method:undefined updateMorphTargets]()</h3>
+		<p>
+			Aggiorna i morphTargets in modo che non abbiano influenza sull'oggetto. Reimposta le proprietà
+			[page:Mesh.morphTargetInfluences morphTargetInfluences] e
+			[page:Mesh.morphTargetDictionary morphTargetDictionary].
+		</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/objects/Points.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">
+			Una classe per visualizzare punti.
+			I punti sono renderizzati dal [page:WebGLRenderer] utilizzando
+			[link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/drawElements gl.POINTS].
+		</p>
+
+
+		<h2>Costruttore</h2>
+
+		<h3>[name]( [param:BufferGeometry geometry], [param:Material material] )</h3>
+		<p>
+			[page:BufferGeometry geometry] — (opzionale) un'istanza di [page:BufferGeometry]. Il valore predefinito è una nuova [page:BufferGeometry].<br />
+			[page:Material material] — (opzionale) un [page:Material Materiale]. Il valore predefinito è una nuova [page:PointsMaterial].
+		</p>
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe base [page:Object3D] per le proprietà comuni.</p>
+
+		<h3>[property:BufferGeometry geometry]</h3>
+		<p>
+			Un'istanza di [page:BufferGeometry] (o classi derivate), che definisce la struttura dell'oggetto.
+		</p>
+
+		<h3>[property:Boolean isPoints]</h3>
+		<p>
+			Flag di sola lettura per verificare se l'oggetto dato è di tipo [name].
+		</p>
+
+		<h3>[property:Material material]</h3>
+		<p>
+			Un'istanza di [page:Material], che definisce
+			l'aspetto dell'oggetto. Il valore predefinito è [page:PointsMaterial].
+		</p>
+
+		<h3>[property:Array morphTargetInfluences]</h3>
+		<p>
+			Un array di pesi solitamente da 0 a 1 che specifica la quantità di morph applicata.
+			Non definito per impostazione predefinita, ma reimpostato su un array vuoto da [page:Points.updateMorphTargets updateMorphTargets].
+		</p>
+
+		<h3>[property:Object morphTargetDictionary]</h3>
+		<p>
+			Un dizionario di morphTargets basato sulla proprietà morphTarget.name.
+			Non definito per impostazione predefinita, ma ricompilato [page:Points.updateMorphTargets updateMorphTargets].
+		</p>
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe base [page:Object3D] per i metodi comuni.</p>
+
+		<h3>[method:undefined raycast]( [param:Raycaster raycaster], [param:Array intersects] )</h3>
+		<p>
+			Ottiene le intersezioni tra un raggio lanciato e questo Points.
+			[page:Raycaster.intersectObject] chiamerà questo metodo, ma i risultati non saranno ordinati.
+		</p>
+
+		<h3>[method:Points clone]()</h3>
+		<p>
+			Restituisce un clone di questo oggetto [name] e i suoi discendenti.</p>
+		</p>
+
+		<h3>[method:undefined updateMorphTargets]()</h3>
+		<p>
+			Aggiorna i morphTargets in modo che non abbiano influenza sull'oggetto. Reimposta le proprietà
+			[page:Points.morphTargetInfluences morphTargetInfluences] e
+			[page:Points.morphTargetDictionary morphTargetDictionary].
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+
+	</body>
+</html>

+ 129 - 0
docs/api/it/objects/Skeleton.html

@@ -0,0 +1,129 @@
+<!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">
+			Utilizza un array di [page:Bone ossa] per creare uno scheletro che può essere utilizzato da una
+			[page:SkinnedMesh].
+		</p>
+
+		<h2>Codice di Esempio</h2>
+		<code>
+		// Crea un semplice "braccio"
+
+		const bones = [];
+
+		const shoulder = new THREE.Bone();
+		const elbow = new THREE.Bone();
+		const hand = new THREE.Bone();
+
+		shoulder.add( elbow );
+		elbow.add( hand );
+
+		bones.push( shoulder );
+		bones.push( elbow );
+		bones.push( hand );
+
+		shoulder.position.y = -5;
+		elbow.position.y = 0;
+		hand.position.y = 5;
+
+		const armSkeleton = new THREE.Skeleton( bones );
+		</code>
+
+		<p>
+			Vedi la pagina [page:SkinnedMesh] per un esempio dell'utilizzo con [page:BufferGeometry].
+ 		</p>
+
+		<h2>Costruttore</h2>
+
+
+		<h3>[name]( [param:Array bones], [param:Array boneInverses] )</h3>
+		<p>
+		[page:Array bones] - L'array di [page:Bone ossa]. Il valore predefinito è un array vuoto.<br/>
+		[page:Array boneInverses] - (opzionale) Un array di [page:Matrix4 Matrix4].<br /><br />
+
+		Crea un nuovo [name].
+		</p>
+
+
+		<h2>Proprietà</h2>
+
+		<h3>[property:Array bones]</h3>
+		<p>
+			L'array di [page:Bone ossa]. Si noti che questa è una copia dell'array originale, non un riferimento,
+			quindi puoi modificare l'array originale senza che ci siano effetti su questo.
+		</p>
+
+		<h3>[property:Array boneInverses]</h3>
+		<p>
+			Un array di [page:Matrix4 Matrix4] che rappresenta l'inverso della [page:Matrix4 matrixWorld]
+			delle singole ossa.
+		</p>
+
+		<h3>[property:Float32Array boneMatrices]</h3>
+		<p>
+			Il buffer dell'array che contiene i dati dell'osso quando si utilizza una texture di vertice.
+		</p>
+
+		<h3>[property:DataTexture boneTexture]</h3>
+		<p>
+			Il [page:DataTexture] che contiene i dati dell'osso quando si utilizza una texture di vertice.
+		</p>
+
+		<h3>[property:Integer boneTextureSize]</h3>
+		<p>
+			La dimensione del [page:.boneTexture].
+		</p>
+
+		<h2>Metodi</h2>
+
+		<h3>[method:Skeleton clone]()</h3>
+		<p>
+			Restituisce un clone di questo oggetto Skeleton.
+		</p>
+
+		<h3>[method:undefined calculateInverses]()</h3>
+		<p>Genera l'array [page:.boneInverses boneInverses] se non viene fornito nel costruttore.</p>
+
+		<h3>[method:this computeBoneTexture]()</h3>
+		<p>Calcola un'istanza di [page:DataTexture] in moda da passare i dati dell'osso in modo più efficiente allo shader.
+			La texture viene assegnata a [page:.boneTexture boneTexture].</p>
+
+		<h3>[method:undefined pose]()</h3>
+		<p>Restituisce lo scheletro nella posa di base.</p>
+
+		<h3>[method:undefined update]()</h3>
+		<p>
+			Aggiorna [page:Float32Array boneMatrices] e [page:DataTexture boneTexture] dopo che le ossa sono state modificate.
+			Questo viene chiamato automaticamente dal [page:WebGLRenderer] se lo scheletro viene utilizzato con una [page:SkinnedMesh].
+		</p>
+
+		<h3>[method:Bone getBoneByName]( [param:String name] )</h3>
+		<p>
+		name -- Stringa da abbinare alla proprietà .name di Bone. <br /><br />
+
+		Cerca nell'array osseo dello scheletro e restituisce il primo con un nome corrispondente.<br />
+		</p>
+
+		<h3>[method:undefined dispose]()</h3>
+		<p>
+			Libera le risorse relative alla GPU allocate da questa istanza. Chiama questo metodo ogni 
+			volta che questa istanza non viene più utilizzata nella tua app.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 174 - 0
docs/api/it/objects/SkinnedMesh.html

@@ -0,0 +1,174 @@
+<!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:Mesh] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			Una mesh che ha uno [page:Skeleton scheletro] con [page:Bone ossa] che può essere 
+			utilizzata per animare i vertici della geometria.<br /><br />
+
+			[name] può essere utilizzata solo con WebGL 2. Con WebGL 1 è necessario il supporto delle texture del vertice
+			e `OES_texture_float`.
+		</p>
+
+		<iframe id="scene" src="scenes/bones-browser.html"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			const scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		const geometry = new THREE.CylinderGeometry( 5, 5, 5, 5, 15, 5, 30 );
+
+		// crea manualmente gli indici della pelle e i pesi della pelle
+		// (tipicamente un loader leggerebbe questi dati da un modello 3D per te)
+
+		const position = geometry.attributes.position;
+
+		const vertex = new THREE.Vector3();
+
+		const skinIndices = [];
+		const skinWeights = [];
+
+		for ( let i = 0; i < position.count; i ++ ) {
+
+			vertex.fromBufferAttribute( position, i );
+
+			// calcola skinIndex e skinWeight in base ad alcuni dati di configurazione
+
+			const y = ( vertex.y + sizing.halfHeight );
+
+			const skinIndex = Math.floor( y / sizing.segmentHeight );
+			const skinWeight = ( y % sizing.segmentHeight ) / sizing.segmentHeight;
+
+			skinIndices.push( skinIndex, skinIndex + 1, 0, 0 );
+			skinWeights.push( 1 - skinWeight, skinWeight, 0, 0 );
+
+		}
+
+		geometry.setAttribute( 'skinIndex', new THREE.Uint16BufferAttribute( skinIndices, 4 ) );
+		geometry.setAttribute( 'skinWeight', new THREE.Float32BufferAttribute( skinWeights, 4 ) );
+
+		// crea skinned mesh e skeleton
+
+		const mesh = new THREE.SkinnedMesh( geometry, material );
+		const skeleton = new THREE.Skeleton( bones );
+
+		// vedi esempio da THREE.Skeleton
+
+		const rootBone = skeleton.bones[ 0 ];
+		mesh.add( rootBone );
+
+		// lega lo scheletro alla mesh
+
+		mesh.bind( skeleton );
+
+		// muove le ossa e manipola il modello
+
+		skeleton.bones[ 0 ].rotation.x = -0.1;
+		skeleton.bones[ 1 ].rotation.x = 0.2;
+		</code>
+
+		<h2>Costruttore</h2>
+		<h3>[name]( [param:BufferGeometry geometry], [param:Material material] )</h3>
+		<p>
+		[page:BufferGeometry geometry] - un'istanza di [page:BufferGeometry].<br />
+		[page:Material material] - (opzionale) un'istanza di [page:Material]. Il valore predefinito è un nuovo [page:MeshBasicMaterial].
+		</p>
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe base [page:Mesh] per le proprietà comuni.</p>
+
+		<h3>[property:String bindMode]</h3>
+		<p>
+			O "attached" o "detached". "attached" utilizza la proprietà [page:SkinnedMesh.matrixWorld]
+			per la matrice di trasformazione delle ossa. "detached" utilizza [page:SkinnedMesh.bindMatrix]. Il valore predefinito è "attached".
+		</p>
+
+		<h3>[property:Matrix4 bindMatrix]</h3>
+		<p>
+			La matrice di base che viene utilizzata per le trasformazioni ossee vincolate.
+		</p>
+
+		<h3>[property:Matrix4 bindMatrixInverse]</h3>
+		<p>
+			La matrice di base che viene utilizzata per reimpostare le trasformazioni ossee vincolate.
+		</p>
+
+		<h3>[property:Boolean isSkinnedMesh]</h3>
+		<p>
+			Flag di sola lettura per verificare se l'oggetto dato è di tipo [name].
+		</p>
+
+		<h3>[property:Skeleton skeleton]</h3>
+		<p>
+			[page:Skeleton] che rappresenta la gerarchia ossea della skinned mesh.
+		</p>
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe base [page:Mesh] per i metodi comuni.</p>
+
+		<h3>[method:undefined bind]( [param:Skeleton skeleton], [param:Matrix4 bindMatrix] )</h3>
+		<p>
+		[page:Skeleton skeleton] - [page:Skeleton] creato da un albero di [page:Bone Bones].<br/>
+		[page:Matrix4 bindMatrix] - [page:Matrix4] che rappresenta la trasformazione base dello scheletro.<br /><br />
+
+		Lega uno scheletro alla skinned mesh. Il bindMatrix viene salvato nella proprietà .bindMatrix
+		e il .bindMatrixInverse viene calcolato.
+		</p>
+
+		<h3>[method:SkinnedMesh clone]()</h3>
+		<p>
+			Questo metodo attualmente non clona correttamente un'istanza di [name]. Si prega di utilizzare [page:SkeletonUtils.clone]() nel frattempo.
+		</p>
+
+		<h3>[method:undefined normalizeSkinWeights]()</h3>
+		<p>
+			Normalizza i pesi della skin.
+		</p>
+
+		<h3>[method:undefined pose]()</h3>
+		<p>
+			Questo metodo imposta la skinned mesh nella posa di riposo (reimposta la posa).
+		</p>
+
+		<h3>[method:Vector3 boneTransform]( [param:Integer index], [param:Vector3 target] )</h3>
+		<p>
+			Calcola la posizione del vertice in corrispondenza dell'indice specificato rispetto alle attuali trasformazioni ossee.
+			Il vettore target deve essere inizializzato con le coordinate del vertice prima della trasformazione:
+		<code>
+const target = new THREE.Vector3();
+target.fromBufferAttribute( mesh.geometry.attributes.position, index );
+mesh.boneTransform( index, target );
+		</code>
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 89 - 0
docs/api/it/objects/Sprite.html

@@ -0,0 +1,89 @@
+<!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">
+			Una sprite è un piano che è sempre rivolto verso la telecamera, generalmente con
+			una texture parzialmente trasparente applicata.<br /><br />
+
+			Le sprite non proiettano ombre, impostare <code>castShadow = true</code> non avrà alcun effetto. 
+		</p>
+
+		<h2>Codice di Esempio</h2>
+
+		<code>
+		const map = new THREE.TextureLoader().load( 'sprite.png' );
+		const material = new THREE.SpriteMaterial( { map: map } );
+
+		const sprite = new THREE.Sprite( material );
+		scene.add( sprite );
+		</code>
+
+		<h2>Costruttore</h2>
+
+		<h3>[name]( [param:Material material] )</h3>
+		<p>
+    [page:Material material] - (opzionale) un'istanza di [page:SpriteMaterial]. Il valore predefinito è una [page:SpriteMaterial] bianca.<br /><br />
+
+		Crea una nuova [name].
+		</p>
+
+		<h2>Proprietà</h2>
+		<p>Vedi la classe base [page:Object3D] per le proprietà comuni.</p>
+
+		<h3>[property:Boolean isSprite]</h3>
+		<p>
+			Flag di sola lettura per verificare se l'oggetto dato è di tipo [name].
+		</p>
+
+
+		<h3>[property:SpriteMaterial material]</h3>
+		<p>
+			Un'istanza di [page:SpriteMaterial], che definisce l'aspetto dell'oggetto.
+			Il valore predefinito è una [page:SpriteMaterial] bianca.
+		</p>
+
+
+		<h3>[property:Vector2 center]</h3>
+		<p>
+			Il punto di ancoraggio della sprite, e il punto attorno al quale ruota la sprite. Un valore di (0.5, 0.5) 
+			corrisponde al punto medio della sprite. Un valore di (0, 0) corrisponde all'angolo inferiore sinistro della sprite.
+			Il valore predefinito è (0.5, 0.5).
+		</p>
+
+		<h2>Metodi</h2>
+		<p>Vedi la classe base [page:Object3D] per i metodi comuni.</p>
+
+		<h3>[method:Sprite clone]()</h3>
+		<p>
+			Restituisce un clone di questo oggetto Sprite e i suoi discendenti.
+		</p>
+
+		<h3>[method:this copy]( [param:Sprite sprite] )</h3>
+		<p>
+			Copia le proprietà della sprite passata in questa.
+		</p>
+
+		<h3>[method:undefined raycast]( [param:Raycaster raycaster], [param:Array intersects] )</h3>
+		<p>
+			Ottiene le intersezioni tra un raggio lanciato e questa sprite. [page:Raycaster.intersectObject]() chiamerà questo metodo.
+			Il raycaster deve essere inizializzato chiamando [page:Raycaster.setFromCamera]() prima di eseguire il raycast contro le sprite.
+		</p>
+
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+		</p>
+	</body>
+</html>

+ 15 - 0
docs/list.json

@@ -1381,6 +1381,21 @@
 				"DiscreteInterpolant": "api/it/math/interpolants/DiscreteInterpolant",
 				"LinearInterpolant": "api/it/math/interpolants/LinearInterpolant",
 				"QuaternionLinearInterpolant": "api/it/math/interpolants/QuaternionLinearInterpolant"
+			},
+
+			"Oggetti": {
+				"Bone": "api/it/objects/Bone",
+				"Group": "api/it/objects/Group",
+				"InstancedMesh": "api/it/objects/InstancedMesh",
+				"Line": "api/it/objects/Line",
+				"LineLoop": "api/it/objects/LineLoop",
+				"LineSegments": "api/it/objects/LineSegments",
+				"LOD": "api/it/objects/LOD",
+				"Mesh": "api/it/objects/Mesh",
+				"Points": "api/it/objects/Points",
+				"Skeleton": "api/it/objects/Skeleton",
+				"SkinnedMesh": "api/it/objects/SkinnedMesh",
+				"Sprite": "api/it/objects/Sprite"
 			}
 		}
 	},