Articles of three.js

Perché gli shader devono essere in un file html per il programma webgl?

Ho visto la seguente domanda in cui qualcuno ha chiesto come rimuovere gli shader da html: WebGL – c’è un’alternativa all’incorporamento degli shader in HTML? Esistono elaborati workaround da caricare in un file contenente lo shader suggerito nelle risposte alla domanda. Nel tutorial che ho visto, il codice dello shader è incorporato direttamente nell’html. Il […]

cattura l’evento click su una mesh specifica nel renderer

Ho impostato un renderer per canvas che contiene due mesh (cubi). Quello che devo fare è catch the click event on each cube per chiamare il metodo conveniente per questo. Finora, ho potuto catturare l’evento click su tutto il renderer, significa che quando clicco su cube1 e cube2, il clic appartiene allo stesso perché è […]

Come creare una mesh personalizzata su THREE.JS?

Ho chiesto questo e ho ottenuto la risposta: var geom = new THREE.Geometry(); var v1 = new THREE.Vector3(0,0,0); var v2 = new THREE.Vector3(0,500,0); var v3 = new THREE.Vector3(0,500,500); geom.vertices.push(new THREE.Vertex(v1)); geom.vertices.push(new THREE.Vertex(v2)); geom.vertices.push(new THREE.Vertex(v3)); var object = new THREE.Mesh( geom, new THREE.MeshNormalMaterial() ); scene.addObject(object); Mi aspettavo che funzionasse, ma non è così.

Three.js: conversione della posizione 3d in posizione 2d dello schermo

Ho un object 3D con la posizione (x, y, z). Come posso calcolare la posizione dello schermo (x, y) di quell’object? L’ho cercato e una soluzione è che devo trovare la matrice di proiezione e quindi moltiplicare il punto di posizione 3D con questa matrice per proiettarla su una superficie di visualizzazione 2D (schermo del […]

Ruota l’object su un asse specifico ovunque in Three.js – incluso all’esterno della mesh

Cercando di ruotare un object attorno a qualsiasi asse. Ad esempio come una cerniera della porta (sul bordo dell’object) o un pianeta attorno al sole (al di fuori dell’object). Il problema sembra essere la definizione dell’asse. Il sottostante vettore unitario risulta in asse rimanente sull’origine dell’object (al centro) quindi identico alla rotazione standard: object2.rotateOnAxis(new THREE.Vector3(1,0,0), […]

Determina se una mesh è visibile sulla vista in base alla telecamera corrente

Ho sviluppato un’app con three.js ma ho riscontrato questo problema e non riesco a trovare alcuna soluzione. Voglio determinare quali mesh sono visibili in questo momento in base a dove sta puntando la fotocamera, quindi posso aggiornare i miei oggetti (i dati provengono da un servizio) o meno a seconda che vengano mostrati nella vista. […]

L’antialiasing non funziona in Three.js

Sono nuovo di three.js e ho iniziato a lavorarci molto recentemente. Mi piace davvero e ho creato cose incredibili. Tuttavia, non sono sicuro del perché ma quando si imposta antialiasing su true non vedo alcuna differenza. renderer = new THREE.WebGLRenderer({ antialiasing: true }); Ho cercato le possibili soluzioni, ma non riesco a trovare o capire […]

Come trovare l’unicode dell’alfabeto di pedice?

Ho trovato alcune lettere ma ho bisogno di trovarne altre come “c”, “m”, “p”, è ansible?

trejs come ruotare attorno al centro dell’object, invece che al centro del mondo

due oggetti nella scena. l’asse di rotazione del cubo dovrebbe essere il centro del cubo, è quello che mi aspetto. ma l’asse di rotazione del modello di scarpa è l’asse y del mondo. il mio codice originale è cube.rotation.y += 0.01; shoe.rotation.y += 0.01; Ho trovato una soluzione in StackOverflow, in questo modo: cube.rotation.y += […]

Three.js più materiali su oggetti caricati tramite OBJMTLLoader

Ho i file “.obj” e “.mtl” di un modello e lo sto caricando tramite OBJMTLLoader . “.mtl” specifica la texture da applicare a un modello, e three.js carica il modello e lo restituisce con la texture applicata. Ma ecco la cosa. Una volta caricato un object, vorrei applicare un’altra texture su di esso. Questo perché […]