glTF konvertálása GLB formátumba
A glTF JSON-eszközök glTF Binary tárolókká konvertálása egyetlen fájlba csomagolja a különálló szöveges jegyzékeket, bináris puffereket és textúrákat, így gyorsabban szolgáltathatók ki a weben.
Formátum-összehasonlítás és műszaki specifikációk
| Specifikáció | GLTF | GLB |
|---|---|---|
| MIME-típus | model/ | model/ |
| Típus | futtatókörnyezetbeli 3D-s eszközátvitel | önálló bináris 3D-tároló |
| Tömörítés | veszteségmentes JSON jegyzék + külső bináris pufferek | binárisan csomagolt JSON, pufferek és textúrák |
| Szabványos specifikáció | Khronos glTF 2.0 specifikáció | Khronos glTF 2.0 bináris tároló |
| Fájlfejléc azonosító bájtjai | 7B 22 61 73 73 65 74 22 ({"asset" JSON root) | 67 6C 54 46 02 00 00 00 (glTF version 2 binary container) |
A formátum áttekintése és alkalmazási területei
A glTF JSON formátum sima szöveges struktúrával tárolja a 3D jeleneteket. Ez a szöveges fájl külső bináris fájlokra és képfájlokra mutat. Bár ez a beállítás segít a fejlesztőknek közvetlenül a kódszerkesztőkben szerkeszteni az anyagokat és a geometriai csomópontokat, a modell áthelyezése megköveteli több fájl egyidejű kezelését. Ha egy textúrafájl hiányzik vagy egy fájlútvonal megszakad, a 3D modell nem töltődik be megfelelően a böngészőkben és a játékmotorokban. A glTF JSON glTF Binary formátumúvá történő átalakítása egyetlen csomagolt fájlba gyűjti össze ezeket a különálló részeket. A 3D művészek és a webfejlesztők ezt a konverziós lépést használják, mielőtt közzéteszik az eszközöket a produkciós webszervereken, vagy betöltik azokat kiterjesztett valóság megjelenítőkbe. Az egyetlen fájl használata csökkenti a HTTP-kérések számát, ami felgyorsítja a betöltési időt az e-kereskedelmi termékoldalakat és interaktív 3D webes alkalmazásokat látogató felhasználók számára.
Műszaki specifikációk és kodekáttekintés
A glTF JSON formátum a model/gltf+json MIME-típust használja, és egy szövegalapú JSON jegyzékre támaszkodik, amely külső bin-fájlokkal és képekkel párosul. Ezzel szemben a GLB formátum a model/gltf-binary MIME-típust használja, és mindent egyetlen bináris tárolóba csomagol. Egy GLB fájl 12 bájtos fejléccel kezdődik, amely egy 0x46546C67 értékű 4 bájtos varázsszámot, egy 4 bájtos verziószámot és a teljes fájlhosszt jelző 4 bájtot tartalmaz. Ezt a fejlécet olyan darabok (chunkok) követik, amelyek a JSON jegyzéket és a bináris pufferadatokat tárolják. Egyik formátum sem módosítja az alatta lévő hálógeometriát vagy a textúrapixel-adatokat a konverzió során, ami azt jelenti, hogy a folyamat szigorúan veszteségmentes.
Operációs rendszer- és böngésző-kompatibilitás
Mindkét formátum natív módon működik a modern webböngészőkben a WebGL és WebGPU renderelők használatával, harmadik féltől származó bővítmények nélkül. Az olyan asztali operációs rendszerek, mint a Windows és a macOS, beépített fájlelőnézeti eszközökkel támogatják a GLB megtekintését. A mobilplatformok, például az iOS és az Android, közvetlenül a Quick Look és a Scene Viewer kiterjesztettvalóság-alkalmazásokban jelenítik meg a GLB-fájlokat.
Hasznos információk
A vizuális hűség megőrzése érdekében a GLB fájlba csomagolás előtt hagyja meg a textúrákat eredeti PNG vagy JPEG formátumukban, így elkerülheti a tároló fájlméretének túlzott növekedését.
Gyakran ismételt kérdések
Hogyan lehet minőségromlás nélkül konvertálni a glTF JSON formátumot glTF Binary formátumba?
A glTF JSON GLB-vé konvertálása teljesen veszteségmentes, mivel a folyamat pusztán egyetlen tárolóba csomagolja át a meglévő szöveges jegyzéket, a bináris puffereket és a képfájlokat anélkül, hogy megváltoztatná a csúcsadatokat vagy tovább tömörítené a textúrák képpontjait.
Mi a különbség a glTF JSON és a glTF Binary között?
A glTF JSON egy ember által olvasható szöveges fájlt használ, amely külső bin- és képfájlokra hivatkozik, míg a glTF Binary egyetlen, önmagában zárt fájlba csomagolja a szöveges jegyzéket, a geometriai adatokat és a textúrákat egy varázsbájtos fejléccel.