Konvertor z glTF Binary na glTF JSON
Konverze formátu GLB na GLTF rozbaluje jeden binární kontejner do samostatných textových souborů a souborů prostředků, což vývojářům umožňuje snadno upravovat textury a kód 3D geometrie.
Porovnání formátů a technické specifikace
| Specifikace | GLB | GLTF |
|---|---|---|
| MIME typ | model/gltf-binary | model/gltf+json |
| Typ | self-contained binary 3D container | runtime 3D asset transmission |
| Komprese | binary packaged JSON, buffers, and textures | lossless JSON manifest + external binary buffers |
| Standardní specifikace | Khronos glTF 2.0 Binary Container | Khronos glTF 2.0 Specification |
| Hlavička souboru (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) |
Přehled formátu a použití
Formát GLB sdružuje 3D scény, animace, materiály a textury do jednoho přehledného binárního balíčku. Ačkoliv je to skvělé pro rychlé načítání objektů do webových stránek a her, komplikuje to přímou úpravu surových dat. Vývojáři často potřebují rozbalit soubor GLB do formátu GLTF, když chtějí prozkoumat strukturu scény, upravit vlastnosti materiálů v textovém editoru nebo pozměnit parametry vložených shaderů. Práce s rozbalenými prostředky GLTF umožňuje inženýrským týmům spravovat verze specifických komponent 3D sítě pomocí standardních pracovních postupů Git. Namísto sledování obřího binárního souboru mohou vývojáři potvrzovat malé textové změny v manifestu JSON a zároveň spravovat samostatné binární vyrovnávací paměti. Tento proces konverze podporuje pokročilé vývojové procesy pro web, kde 3D prostředky vyžadují vlastní injektáž shaderů nebo dynamickou výměnu textur před spuštěním v reálném čase.
Technické specifikace a přehled kodeků
Formát GLB používá typ MIME model/gltf-binary a začíná 12bajtovou hlavičkou obsahující 4bajtové magické číslo (0x46546C67), 4bajtové celé číslo verze a 4bajtovou celkovou délku souboru. Za touto hlavičkou následují bloky obsahující manifest JSON a binární vyrovnávací paměti. Konverze do formátu GLTF, který používá typ MIME model/gltf+json, odděluje manifest do lidsky čitelného textového souboru s příponou .gltf. Data geometrie a mapy pixelů se zapisují do samostatných externích souborů, jako jsou .bin a .png. Žádný z formátů standardně nepoužívá ztrátovou kompresi. Oba zachovávají pozice vrcholů, normály a souřadnice UV s plnou matematickou přesností.
Kompatibilita s operačními systémy a prohlížeči
Rozbalené soubory GLTF fungují hladce ve všech moderních webových prohlížečích včetně Google Chrome, Mozilla Firefox, Apple Safari a Microsoft Edge s využitím vykreslovacích modulů WebGL a WebGPU. Stolní operační systémy jako Windows 10 a 11, macOS a Linux podporují zobrazení formátu GLTF prostřednictvím nativních nástrojů, jako je Prohlížeč 3D ve Windows a Blender. Mobilní operační systémy pro iOS a Android vykreslují prostředky GLTF uvnitř nativních prostředí AR a webových aplikací, přičemž vývojáři musí správně hostovat samostatné soubory .bin a .gltf na svých serverech, aby se předešlo chybám sdílení prostředků mezi zdroji (CORS).
💡 Užitečné informace
Po konverzi uchovávejte mapy textur vždy ve stejné složce jako hlavní soubor .gltf, aby manifest JSON mohl najít své externí závislosti bez chyb způsobených neplatnými cestami.
Porovnání formátů a technické specifikace
Složitý 3D model postavy o velikosti 15 megabajtů ve formátu GLB poskytne podobný celkový objem dat při rozdělení na manifest .gltf a externí soubory .bin. Při standardním připojení 4G rychlostí 30 megabitů za sekundu trvá stažení tohoto prostředku přibližně 4 sekundy. Přechod na síť 5G nebo 300megabitové připojení Fiber zkracuje dobu přenosu na zlomek sekundy, čímž se načítání více souborů na webu stává téměř okamžitým.
Často kladené otázky
Jak převést glTF Binary na glTF JSON bez ztráty kvality?
Konverze z GLB na GLTF je zcela bezztrátová, protože oba formáty využívají stejné podkladové matematické struktury. Proces jednoduše extrahuje blok JSON a binární vyrovnávací paměti z jednoho binárního kontejneru a zapíše je jako samostatné soubory na disk, aniž by došlo ke změně dat vrcholů nebo komprese pixelů.
Jaký je rozdíl mezi formáty glTF Binary a glTF JSON?
GLB je soběstačný binární soubor, který sdružuje popis scény, geometrii a textury do jednoho stahování. GLTF tyto prvky odděluje tím, že ukládá graf scény do čitelného textového souboru, zatímco geometrii a textury uchovává v externích binárních souborech a souborech obrázků.