Konvertera glTF till GLB
Konvertering av glTF JSON-filer till glTF Binary-behållare paketerar separata textmanifest, binära buffertar och texturer i en enda fil för snabbare leverans på webben.
Formatjämförelse och tekniska specifikationer
| Specifikation | GLTF | GLB |
|---|---|---|
| MIME-typ | model/ | model/ |
| Typ | överföring av 3D-resurser vid körning | fristående binär 3D-behållare |
| Komprimering | förlustfritt JSON-manifest + externa binära buffertar | binärt paketerade JSON-data, buffertar och texturer |
| Standardspecifikation | Khronos glTF 2.0 Specification | Khronos glTF 2.0 Binary Container |
| Magic Bytes-huvud | 7B 22 61 73 73 65 74 22 ({"asset" JSON root) | 67 6C 54 46 02 00 00 00 (glTF version 2 binary container) |
Formatöversikt och användningsområden
Formatet glTF JSON lagrar 3D-scener med hjälp av en struktur i ren text. Denna textfil pekar på externa binära filer och bildtexturer. Även om detta upplägg hjälper utvecklare att redigera material och geometrinoder direkt i kodredigerare, krävs det att man hanterar flera filer samtidigt för att flytta modellen. Om en texturfil försvinner eller om en filsökväg bryts, misslyckas 3D-modellen med att läsas in korrekt i webbläsare och spelmotorer. Genom att konvertera glTF JSON till glTF Binary buntas alla dessa separata delar ihop till en enda paketerad fil. 3D-artister och webbutvecklare använder detta konverteringssteg innan de publicerar tillgångar på produktionsservrar eller läser in dem i förstärkt verklighetsvisare (AR). Att ha en enda fil minskar antalet HTTP-anrop, vilket ger snabbare laddningstider för besökare på e-handelsidor och interaktiva 3D-webbapplikationer.
Tekniska specifikationer och kodeköversikt
Formatet glTF JSON använder MIME-typen model/gltf+json och förlitar sig på ett textbaserat JSON-manifest ihop med externa bin-filer och bilder. Däremot använder GLB-formatet MIME-typen model/gltf-binary och paketerar allt i en enda binär behållare. En GLB-fil börjar med ett 12 byte stort sidhuvud som innehåller ett 4 byte stort magiskt nummer satt till 0x46546C67, ett 4 byte stort versionsnummer och en 4 byte stor total filstorlek. Detta sidhuvud följs av block (chunks) som lagrar JSON-manifestet och den binära buffertdatan. Ingetdera formatet ändrar den underliggande mesh-geometrin eller texturpixlarna under konverteringen, vilket innebär att processen är strikt förlustfri.
OS- och webbläsarkompatibilitet
Båda formaten fungerar internt i moderna webbläsare med hjälp av WebGL- och WebGPU-renderare utan att kräva tredjepartsinsticksprogram. Operativsystem för datorer som Windows och macOS stöder GLB-visning genom inbyggda förhandsgranskningsverktyg för filer. Mobila plattformar inklusive iOS och Android renderar GLB-filer direkt i AR-applikationer som Quick Look och Scene Viewer.
Användbar information
Behåll dina ursprungliga texturer i PNG- eller JPEG-format innan du paketerar dem i en GLB-fil för att bibehålla den visuella skärpan utan att storleken på behållaren ökar onödigt mycket.
Vanliga frågor
Hur konverterar man glTF JSON till glTF Binary utan kvalitetsförlust?
Konvertering från glTF JSON till GLB är helt förlustfri eftersom processen bara paketerar om det befintliga textmanifestet, de binära buffertarna och bildfilerna i en enda behållare utan att ändra hörnpunktsdata eller komprimera texturpixlarna ytterligare.
Vad är skillnaden mellan glTF JSON och glTF Binary?
glTF JSON använder en läsbar textfil som refererar till externa bin- och bildfiler, medan glTF Binary paketerar textmanifestet, geometridata och texturer i en enda självständig fil med ett magiskt bytes-sidhuvud.