Convertire PLY in GLTF

Qui converti PLY in GLTF gratis e senza account: trascina il file qui sopra e in un paio di secondi il risultato è pronto da scaricare. La conversione avviene dentro il tuo browser, quindi il file non viene mai caricato. Funziona allo stesso modo su Windows, macOS e Linux e anche su iPhone e Android, e continua a funzionare anche se stacchi la connessione.

  • Dove gira Nel tuo browser. Il file non viene mai caricato.
  • Ricostruito GLTF funziona in modo diverso da PLY. Non è quindi il degrado graduale di un codec con perdita: quello che GLTF sa esprimere viene riprodotto fedelmente, e quello che lì non ha un equivalente non sopravvive affatto.
  • Limite di dimensione Fino a 100 MB per file, gratis e senza account.
  • Vale la pena saperlo Solo la geometria. Materiali, colori, texture e animazione non passano, e un modello collocato più volte torna con ogni copia fissata nella propria posizione.

Fino a 100 file alla volta. Formati diversi insieme non sono un problema.

Un browser non aprirà un PLY, ed è l’intera ragione

Nessun browser renderizza PLY. Navigare verso uno lo scarica, e non c’è elemento, attributo o visualizzatore integrato che lo mostri. glTF è il formato su cui si è assestato il web per il 3D — three.js, Babylon.js e model-viewer lo caricano tutti come prima scelta — quindi mettere una scansione davanti a un visitatore significa prima convertirla.

È una decisione di instradamento piuttosto che di qualità. Il PLY non è un file peggiore; è un file per una stanza diversa. Scanner, CloudCompare, MeshLab e ogni libreria di elaborazione geometrica lo parlano fluentemente, e nulla di ciò aiuta quando il requisito è una pagina che qualcuno apre su un telefono.

Il colore che lo rendeva un PLY non raggiunge il glTF

Va detto per primo perché decide se continuare. Una cattura fotogrammetrica o a luce strutturata è memorizzata come PLY in gran parte perché il formato contiene proprietà red, green e blue su ogni vertice, il modo in cui una scansione porta il proprio aspetto senza bisogno di un atlante texture. Il lettore qui prende x, y e z e ignora ogni altra proprietà, e lo scrittore emette solo posizioni e indici.

Quindi una cattura di una ceramica dipinta arriva nel visualizzatore grigia e senza texture. Per una scansione geometrica — un pezzo di ricambio, uno stampo — è esattamente giusto e nulla si è perso. Per un reperto museale, il colore era il punto, e la strada è un export con texture cotta dal software di scansione o MeshLab, non una conversione di geometria.

Una nuvola di punti PLY viene rifiutata piuttosto che convertita

Gli scanner producono punti prima di produrre superfici, e un PLY con vertici e senza elemento face è una nuvola di punti. La conversione si ferma con la ragione dichiarata: “Questo PLY è una nuvola di punti: contiene punti ma nessuna faccia.”

È un rifiuto piuttosto che un fallimento, ed è la risposta onesta — la ricostruzione implica scelte su smoothing, profondità e riempimento buchi che cambiano sostanzialmente il risultato. La Screened Poisson Surface Reconstruction di MeshLab è la strada usuale.

Densità della scansione contro ciò che una pagina può caricare

Le catture grezze sono dense per progetto: uno scanner portatile produce di routine uno-cinque milioni di triangoli per un oggetto grande come una scarpa. Una pagina web ha un budget molto diverso — un modello che carica prontamente su un telefono di fascia media è misurato in decine di migliaia di triangoli, non milioni.

Decimate prima di convertire, non dopo. La Quadric Edge Collapse Decimation di MeshLab, o il modificatore Decimate di Blender, preservano bene la silhouette e richiedono un passaggio. Fatelo per primo rende anche più veloce ogni passo successivo, inclusa questa conversione.

Il documento glTF scritto da un PLY

Una mesh, una primitiva, modalità 4. Le posizioni diventano un accessore float VEC3 e gli indici un accessore intero senza segno SCALAR, con una vista buffer per ciascuno e un unico buffer che li contiene entrambi. L’accessore posizione porta min e max, richiesti dalla specifica e usati dai visualizzatori per inquadrare il modello.

Quei sei numeri di limite sono anche il controllo di sanità più veloce disponibile. Aprite il JSON, leggete min e max dall’accessore posizione, e avete il riquadro di delimitazione nelle unità della sorgente senza caricare nulla.

Prendete il GLB per la consegna e il glTF per la lettura

Questa conversione produce un file autonomo, perché una conversione produce un download solo e un .gltf con un .bin accanto sarebbero due. I dati vertice sono quindi codificati base64 in un URI dati sul buffer, e base64 costa quattro caratteri ogni tre byte.

Per un file che state per aprire in un editor è un prezzo equo. Per un file che un visitatore scarica non lo è, e la conversione GLB produce la stessa geometria come un file binario senza overhead di codifica. Usate glTF quando volete leggere gli accessori o validare il documento; usate GLB quando la destinazione è una pagina.

I vertici non vengono saldati, perché un PLY arriva già indicizzato

Alcune sorgenti su questo sito vengono saldate all’ingresso — un STL memorizza tre vertici non condivisi per triangolo. Un PLY memorizza già una lista vertici indicizzata, quindi posizioni e facce vengono portate come erano.

Il conteggio vertici nel glTF corrisponde quindi al conteggio nell’intestazione PLY, il che rende la conversione facile da verificare. Le facce con più di tre angoli sono triangolate a ventaglio, corretto per i quad convessi che produce la ricostruzione e problematico su un poligono concavo.

Né il PLY né il glTF registrano scala o quale direzione sia in alto

PLY non dichiara unità né orientamento. glTF non dichiara unità nemmeno, sebbene tutto il suo ecosistema assuma che un’unità sia un metro e ogni visualizzatore sia Y-up. Il software di scansione non è coerente su nessuno dei due — millimetri sono comuni, Z-up è comune.

Aspettatevi quindi di ruotare e scalare all’arrivo, e fatelo nella scena del visualizzatore piuttosto che modificando il file. In model-viewer un attributo orientation e uno scale risolvono in due righe; in three.js sono due chiamate sull’oggetto caricato.

Illuminare una mesh grigia così che la scansione si legga ancora come oggetto

Poiché il glTF non ha materiale, tutto ciò che il visitatore vede viene dall’illuminazione del visualizzatore. Grigio piatto sotto una singola luce si legge come una macchia; la stessa mesh sotto una mappa ambientale con occlusione ambientale si legge come un oggetto scolpito.

model-viewer spedisce illuminazione ambientale neutra e un attributo shadow-intensity che costa una riga. In three.js una mappa ambientale più una luce emisferica è l’equivalente. Poiché la mesh convertita non porta normali per vertice, il visualizzatore le calcola, producendo ombreggiatura sfaccettata su una scansione decimata.

Dove viene letto il PLY mentre diventa un glTF

In questa scheda del browser, con JavaScript ordinario. Nessun modulo WebAssembly viene scaricato, nulla viene caricato, non c’è account né limite giornaliero. Il pannello di rete durante una conversione è il modo per verificarlo.

Le scansioni sono una categoria insolitamente sensibile. Una cattura di un reperto museale è spesso sotto un accordo su dove i dati possano andare, una cattura di una persona è biometrica in tutto tranne il nome. Il limite gratuito è 100 MB per file, un’altra ragione per ridurre prima di convertire.

Come convertire PLY in GLTF

  1. Trascina il tuo file PLY su questa pagina, oppure fai clic per sceglierne uno.
  2. Scegli GLTF come destinazione. La conversione avviene nel tuo browser e il file non viene caricato.
  3. Scarica il file GLTF finito.

PLY o GLTF: cosa cambia

PLY a confronto con GLTF
PLYGLTF
Nome completoPolygon File FormatGL Transmission Format
Estensione del file.ply.gltf
Tipo di mediamodel/plymodel/gltf+json
Prima pubblicazione19942015
Pubblicato daStanford UniversityKhronos Group
SpecificaglTF 2.0
LicenzaStandard apertoStandard aperto
Situazione attualeAttualeAttuale
Si apre nel browserNessun browserNessun browser
Valutato al suo postoOBJ, STLGLB, OBJ

Aprire il risultato

Blender legge sia PLY sia GLTF, quindi puoi confrontare il risultato con l'originale senza un secondo programma.

A che cosa serve ciascun formato

I due puntano a lavori diversi: PLY a la scansione e spostare dati fra programmi, GLTF a il web e consegnare un file finito. Vale la pena valutarlo prima, perché il motivo per cui esiste uno è di solito il motivo per cui l'altro risulta scomodo.

GLTF viene da Khronos Group e risale al 2015, descritto in glTF 2.0. Blender, three.js e Babylon.js lo leggono.

PLY è stato pubblicato nel 1994 e GLTF nel 2015. Il più vecchio è in genere il file più sicuro da consegnare; il più recente fa lo stesso lavoro con meno byte.

Da PLY a GLTF: domande frequenti

Il mio file PLY viene caricato da qualche parte?

No. Questa conversione avviene interamente nel tuo browser, quindi il file non esce dal tuo dispositivo. Puoi controllarlo da solo: apri la scheda di rete degli strumenti per sviluppatori e converti qualcosa. Vedrai la pagina stessa e le richieste di statistica e di pubblicità con cui questo servizio si paga, e nemmeno una che porti il tuo file.

Convertire PLY in GLTF è gratis?

Sì. Senza account, senza filigrana e senza una quota giornaliera da consumare: gira sulla tua macchina, quindi puoi tornare quante volte vuoi. Il browser lavora file fino a 100 MB, 100 per volta.

Si perde qualità convertendo PLY in GLTF?

PLY e GLTF descrivono il contenuto in modi radicalmente diversi. La conversione è quindi una ricostruzione e non una copia: fedele, ma non identica byte per byte. Solo la geometria. Materiali, colori, texture e animazione non passano, e un modello collocato più volte torna con ogni copia fissata nella propria posizione.

Devo installare qualcosa per aprire un file GLTF?

Per la conversione no: avviene nel browser che hai già aperto. Per aprire il risultato ti serve poi il programma con cui il tuo dispositivo mostra di solito GL Transmission Format.

Altro su questi formati