Konverter GLB til glTF
Konvertering av GLB til GLTF pakker ut en enkel binærbeholder til separate tekst- og ressursfiler slik at utviklere enkelt kan redigere teksturer og 3D-geometrikode.
Format-sammenligning og tekniske spesifikasjoner
| Spesifikasjon | GLB | GLTF |
|---|---|---|
| MIME-type | model/ | model/ |
| Type | selvstendig binær 3D-container | overføring av 3D-ressurser under kjøring |
| Kompresjon | binært pakket JSON, buffere og teksturer | tapsfri JSON-manifest + eksterne binære buffere |
| Standardsesifikasjon | Khronos glTF 2.0 Binary Container | Khronos glTF 2.0 Specification |
| Signatur med magiske byte | 67 6C 54 46 02 00 00 00 (glTF version 2 binary container) | 7B 22 61 73 73 65 74 22 ({"asset" JSON root) |
Oversikt og bruksområder for formatet
GLB-formatet pakker 3D-scener, animasjoner, materialer og teksturer inn i en ryddig binærpakke. Selv om dette fungerer utmerket for rask innlasting av objekter i nettsider og spill, gjør det redigering av rådataene vanskelig. Utviklere må ofte pakke ut en GLB-fil til GLTF-formatet når de ønsker å inspisere scenestrukturen, finjustere materialegenskaper i en teksteditor eller endre innebygde skyggeleggingsparametre (shader-parametre). Arbeid med utpakkede GLTF-ressurser lar ingeniørteam versjonskontrollere spesifikke 3D-mesh-komponenter ved hjelp av standard Git-arbeidsflyter. I stedet for å spore en enorm binærklump kan utviklere sjekke inn små tekstendringer i JSON-manifestet mens de administrerer separate binære bufferfiler. Denne konverteringsprosessen støtter avanserte webutviklingsløsninger der 3D-ressurser krever tilpasset injeksjon av skyggelegging eller dynamisk bytte av teksturer før kjøretidsdistribusjon.
Tekniske spesifikasjoner og kodekoversikt
GLB bruker MIME-typen model/gltf-binary og starter med et 12-byte hode som inneholder et 4-byte magisk tall (0x46546C67), et versjonsheltall på 4 byte og en total fillengde på 4 byte. Dette hodet etterfølges av blokker som inneholder et JSON-manifest og binære buffere. Konvertering av dette til GLTF, som bruker MIME-typen model/gltf+json, skiller manifestet inn i en menneskelig lesbar tekstfil med filtypeendelsen .gltf. Geometridataene og pikselkartene skrives ut til separate eksterne filer som .bin og .png. Ingen av formatene bruker tapsbasert kompresjon som standard. Begge bevarer vertexposisjoner, normaler og UV-koordinater med full matematisk presisjon.
OS- og nettleserkompatibilitet
Utpakkede GLTF-filer fungerer uten problemer i de fleste moderne nettlesere, inkludert Google Chrome, Mozilla Firefox, Apple Safari og Microsoft Edge, ved hjelp av WebGL- og WebGPU-gjengivere. Stasjonære operativsystemer som Windows 10 og 11, macOS og Linux støtter GLTF-visning gjennom innebygde verktøy som Windows 3D-visningsprogram og Blender. På iOS og Android kan GLTF-ressurser vises i innebygde AR-miljøer og nettprogrammer, selv om utviklere må være nøye med å lagre de separate .bin- og .gltf-filene riktig på serverne for å unngå CORS-feil (cross-origin resource sharing).
Nyttig informasjon
Oppbevar alltid teksturkartene dine i samme mappe som hovedfilen med .gltf-endelse etter konvertering, slik at JSON-manifestet kan finne sine eksterne avhengigheter uten feil med brutte baner.
Ofte stilte spørsmål
Hvordan konverterer du glTF Binary til glTF JSON uten å miste kvalitet?
Konverteringen fra GLB til GLTF er fullstendig tapsfri fordi begge formatene bruker de samme underliggende matematiske strukturene. Prosessen trekker ganske enkelt ut JSON-blokken og de binære bufferne fra den enkle binære beholderen og skriver dem ut som separate filer på disken uten å endre vertisedata eller pikselkompresjon.
Hva er forskjellen mellom glTF Binary og glTF JSON?
GLB er en selvstendig binær fil som pakker scenedeskrivelse, geometri og teksturer inn i én enkelt nedlasting. GLTF skiller disse elementene ved å lagre scenegrafen i en lesbar tekstfil samtidig som geometri og teksturer holdes i eksterne binær- og bildefiler.