Convertitore da GLB a glTF
La conversione da GLB a GLTF estrae un singolo contenitore binario in file di testo e asset separati, consentendo agli sviluppatori di modificare facilmente le texture e il codice della geometria 3D.
Confronto formati e specifiche tecniche
| Specifica | GLB | GLTF |
|---|---|---|
| Tipo MIME | model/ | model/ |
| Tipo | contenitore binario 3D autonomo | trasmissione di risorse 3D in fase di esecuzione |
| Compressione | JSON, buffer e texture confezionati in formato binario | manifesto JSON senza perdita + buffer binari esterni |
| Specifica standard | Khronos glTF 2.0 Binary Container | Khronos glTF 2.0 Specification |
| Intestazione Magic Bytes | 67 6C 54 46 02 00 00 00 (glTF version 2 binary container) | 7B 22 61 73 73 65 74 22 ({"asset" JSON root) |
Panoramica del formato e applicazioni
Il formato GLB raccoglie scene 3D, animazioni, materiali e texture in un unico pacchetto binario compatto. Sebbene questo sia ideale per caricare oggetti rapidamente su pagine Web e videogiochi, rende difficile la modifica dei dati grezzi. Gli sviluppatori spesso devono estrarre un file GLB nel formato GLTF quando vogliono ispezionare la struttura della scena, modificare le proprietà dei materiali in un editor di testo o alterare i parametri degli shader incorporati. Lavorare con asset GLTF estratti consente ai team di ingegneri di gestire il controllo di versione di componenti di mesh 3D specifici utilizzando i flussi di lavoro standard di Git. Invece di tracciare un enorme blocco binario, gli sviluppatori possono effettuare il commit di piccole modifiche di testo al file manifest JSON gestendo al contempo file di buffer binari separati. Questo processo di conversione supporta i flussi di lavoro avanzati per lo sviluppo Web in cui gli asset 3D richiedono l'iniezione di shader personalizzati o lo scambio dinamico di texture prima della messa in produzione.
Specifiche tecniche e analisi dei codec
GLB utilizza il tipo MIME model/gltf-binary e inizia con un'intestazione di 12 byte contenente un numero magico di 4 byte (0x46546C67), un intero di versione di 4 byte e una lunghezza totale del file di 4 byte. Questa intestazione è seguita da blocchi contenenti un file manifest JSON e buffer binari. La conversione in GLTF, che utilizza il tipo MIME model/gltf+json, separa il file manifest in un file di testo leggibile dall'uomo con estensione .gltf. I dati della geometria e le mappe dei pixel vengono scritti su file esterni separati come .bin e .png. Nessuno dei due formati utilizza la compressione con perdita di dati per impostazione predefinita. Entrambi preservano le posizioni dei vertici, le normali e le coordinate UV con la massima precisione matematica.
Compatibilità con sistemi operativi e browser
I file GLTF estratti vengono eseguiti senza problemi su tutti i browser Web moderni, inclusi Google Chrome, Mozilla Firefox, Apple Safari e Microsoft Edge, utilizzando i renderer WebGL e WebGPU. I sistemi operativi desktop come Windows 10 e 11, macOS e Linux supportano la visualizzazione di GLTF tramite strumenti nativi come Windows 3D Viewer e Blender. I sistemi operativi mobili su iOS e Android renderizzano gli asset GLTF all'interno di ambienti AR nativi e applicazioni Web, sebbene gli sviluppatori debbano ospitare correttamente i file .bin e .gltf separati sui propri server per evitare errori di condivisione delle risorse tra origini diverse (CORS). Il supporto varia anche in base ad app, dispositivo, sistema operativo e versione.
Informazioni utili
Mantieni sempre le mappe delle texture nella stessa cartella del file .gltf principale dopo la conversione, in modo che il file manifest JSON possa individuare le sue dipendenze esterne senza errori dovuti a percorsi non validi.
Domande frequenti
Come convertire glTF Binary in glTF JSON senza perdere qualità?
La conversione da GLB a GLTF è interamente senza perdita di dati perché entrambi i formati utilizzano le stesse strutture matematiche sottostanti. Il processo estrae semplicemente il blocco JSON e i buffer binari dal singolo contenitore binario e li scrive come file separati sul disco senza alterare i dati dei vertici o la compressione dei pixel.
Qual è la differenza tra glTF Binary e glTF JSON?
GLB è un file binario autonomo che racchiude la descrizione della scena, la geometria e le texture in un unico download. GLTF separa questi elementi memorizzando il grafo della scena in un file di testo leggibile, mantenendo al contempo la geometria e le texture in file binari e di immagine esterni.