Pretvornik iz glTF Binary v glTF JSON
Pretvorba iz GLB v GLTF razdeli enoten binarni vsebnik v ločene datoteke z besedilom in sredstvi, kar razvijalcem omogoča enostavno urejanje tekstur in kode 3D-geometrije.
Primerjava formatov in tehnične specifikacije
| Specifikacija | GLB | GLTF |
|---|---|---|
| Vrsta MIME | model/gltf-binary | model/gltf+json |
| Vrsta | self-contained binary 3D container | runtime 3D asset transmission |
| Stiskanje | binary packaged JSON, buffers, and textures | lossless JSON manifest + external binary buffers |
| Standardna specifikacija | Khronos glTF 2.0 Binary Container | Khronos glTF 2.0 Specification |
| Glava magičnih bajtov | 67 6C 54 46 02 00 00 00 (glTF version 2 binary container) | 7B 22 61 73 73 65 74 22 ({"asset" JSON root) |
Pregled formata in uporaba
Format GLB združuje 3D-prizore, animacije, materiale in teksture v en sam urejen binarni paket. Čeprav je to odlično za hitro nalaganje predmetov na spletne strani in v igre, otežuje neposredno urejanje surovi podatkov. Razvijalci morajo pogosto razširiti datoteko GLB v format GLTF, ko želijo pregledati strukturo prizora, prilagoditi lastnosti materialov v urejevalniku besedil ali spremeniti vgrajene parametre senčilnikov. Delo z razširjenimi sredstvi GLTF omogoča inženirskim ekipam upravljanje različic določenih komponent 3D-mrež z običajnimi delovnimi tokovami Git. Namesto sledenja obsežnemu binarnemu bloku lahko razvijalci potrdijo majhne spremembe besedila v manifestu JSON, medtem ko upravljajo ločene binarne datoteke medpomnilnika. Ta postopek pretvorbe podpira napredne razvojne cikle spletnih aplikacij, kjer 3D-sredstva zahtevajo injiciranje senčilnikov po meri ali dinamično zamenjavo tekstur pred izvajanjem.
Tehnične specifikacije in pregled kodekov
Format GLB uporablja vrsto MIME model/gltf-binary in se začne z 12-bajtno glavo, ki vsebuje 4-bajtno čarobno število (0x46546C67), 4-bajtno celo število različice in 4-bajtno skupno dolžino datoteke. Tej glavi sledijo kosi, ki vsebujejo manifest JSON in binarne medpomnilnike. Pretvorba v GLTF, ki uporablja vrsto MIME model/gltf+json, loči manifest v človeku berljivo besedilno datoteko s končnico .gltf. Podatki o geometriji in zemljevidi slikovnih pik se izpišejo v ločene zunanje datoteke, kot sta .bin in .png. Nobeden od formatov privzeto ne uporablja stiskanja z izgubo. Oba ohranjata položaje oglišč, normale in koordinate UV s polno matematično natančnostjo.
Združljivost z OS in brskalniki
Razširjene datoteke GLTF delujejo nemoteno v vseh sodobnih spletnih brskalnikih, vključno z Google Chrome, Mozilla Firefox, Apple Safari in Microsoft Edge, z uporabo upodabljalnikov WebGL in WebGPU. Operacijski sistemi namizij, kot so Windows 10 in 11, macOS ter Linux, podpirajo ogled GLTF prek domačih orodij, kot sta Windows 3D Viewer in Blender. Mobilni operacijski sistemi v sistemih iOS in Android upodabljajo sredstva GLTF v domačih okoljih AR in spletnih aplikacijah, čeprav morajo razvijalci ločeni datoteki .bin in .gltf pravilno gostiti na svojih strežnikih, da se izognejo napakam pri deljenju virov med izvori (CORS).
💡 Uporabne informacije
Po pretvorbi vedno hranite zemljevide tekstur v isti mapi kot glavno datoteko .gltf, da lahko manifest JSON najde svoje zunanje odvisnosti brez napak v poteh.
Primerjava formatov in tehnične specifikacije
Zapleten model 3D-lika velikosti 15 megabajtov v formatu GLB ima podoben skupni odtis podatkov, ko je razdeljen na manifest .gltf in zunanje datoteke .bin. Na standardni povezavi 4G s hitrostjo 30 megabitov na sekundo prenos tega sredstva traja približno 4 sekunde. Nadgradnja na omrežje 5G ali 300-megabitno optično povezavo skrajša čas prenosa na delček sekunde, zaradi česar je nalaganje spletnih mest z več datotekami skoraj hipno.
Pogosto zastavljena vprašanja
Kako pretvoriti glTF Binary v glTF JSON brez izgube kakovosti?
Pretvorba iz GLB v GLTF poteka popolnoma brez izgub, ker oba formata uporabljata iste osnovne matematične strukture. Postopek preprosto izlušči kos JSON in binarne medpomnilnike iz enotnega binarnega vsebnika ter jih zapisuje kot ločene datoteke na disk, ne da bi pri tem spremenil podatke oglišč ali stiskanje slikovnih pik.
Kakšna je razlika med glTF Binary in glTF JSON?
GLB je samostojna binarna datoteka, ki združuje opis prizora, geometrijo in teksture v en sam prenos. GLTF ločuje te elemente s shranjevanjem grafikona prizora v berljivi besedilni datoteki, medtem ko geometrijo in teksture hrani v zunanjih binarnih datotekah in slikovnih datotekah.