glTF JSON - glTF Binary -muunnin
glTF JSON -resurssien muuntaminen glTF Binary -säilöihin pakkaa erilliset tekstimanifestit, binaaripuskurit ja tekstuurit yhteen tiedostoon nopeampaa verkkotoimitusta varten.
Muotojen vertailu ja tekniset tiedot
| Määritys | GLTF | GLB |
|---|---|---|
| MIME-tyyppi | model/gltf+json | model/gltf-binary |
| Tyyppi | runtime 3D asset transmission | self-contained binary 3D container |
| Pakkaus | lossless JSON manifest + external binary buffers | binary packaged JSON, buffers, and textures |
| Standardimääritys | Khronos glTF 2.0 Specification | Khronos glTF 2.0 Binary Container |
| Tiedostotunniste (Magic Bytes) | 7B 22 61 73 73 65 74 22 ({"asset" JSON root) | 67 6C 54 46 02 00 00 00 (glTF version 2 binary container) |
Muodon yleiskatsaus ja käyttökohteet
glTF JSON -muoto tallentaa 3D-kohtauksia käyttämällä pelkkää tekstirakennetta. Tämä tekstitiedosto osoittaa ulkoisiin binaaritiedostoihin ja kuvatekstuureihin. Vaikka tämä asetus auttaa kehittäjiä muokkaamaan materiaaleja ja geometriakohtia suoraan koodieditoreissa, mallin siirtäminen vaatii useiden tiedostojen hallintaa samanaikaisesti. Jos yksi tekstuuritiedosto katoaa tai tiedostopolku katkeaa, 3D-malli ei lataudu oikein selaimissa ja pelimoottoreissa. glTF JSON -muodon muuntaminen glTF Binaryksi niputtaa kaikki nämä erilliset osat yhteen pakattuun tiedostoon. 3D-taiteilijat ja verkkokehittäjät käyttävät tätä muunnosvaihetta ennen resurssien julkaisemista tuotantopalvelimille tai lataamista lisätyn todellisuuden katseluohjelmiin. Yhden tiedoston olemassaolo vähentää HTTP-pyyntöjä, mikä nopeuttaa latausaikoja verkkokauppojen tuotesivuilla vieraileville käyttäjille ja interaktiivisissa 3D-verkkosovelluksissa.
Tekniset tiedot ja koodekkien erittely
glTF JSON -muoto käyttää MIME-tyyppiä model/gltf+json ja luottaa tekstipohjaiseen JSON-manifestiin, joka on yhdistetty ulkoisten bin-tiedostojen ja kuvien kanssa. Sitä vastoin GLB-muoto käyttää MIME-tyyppiä model/gltf-binary ja pakkaa kaiken yhteen binäärisäilöön. GLB-tiedosto alkaa 12 tavun otsikolla, joka sisältää 4 tavun maagisen numeron (arvo 0x46546C67), 4 tavun versionumeron ja 4 tavun tiedoston kokonaispituuden. Tätä otsikkoa seuraavat lohkot, jotka tallentavat JSON-manifestin ja binaaripuskuritiedot. Kumpikaan muoto ei muuta taustalla olevaa verkkogeometriaa tai tekstuurin pikselidataa muunnoksen aikana, mikä tarkoittaa, että prosessi on täysin häviötön.
Käyttöjärjestelmien ja selaimien yhteensopivuus
Molemmat muodot toimivat natiivisti nykyaikaisissa verkkoselaimissa WebGL- ja WebGPU-renderöijien avulla ilman kolmannen osapuolen liitännäisiä. Työpöytäkäyttöjärjestelmät, kuten Windows ja macOS, tukevat GLB-katselua sisäänrakennettujen tiedoston esikatselutyökalujen kautta. Mobiilialustat, mukaan lukien iOS ja Android, renderöivät GLB-tiedostoja suoraan lisätyn todellisuuden Quick Look- ja Scene Viewer -sovelluksissa.
💡 Hyödyllistä tietoa
Pidä alkuperäiset tekstuurisi PNG- tai JPEG-muodossa ennen niiden pakkaamista GLB-tiedostoon, jotta visuaalinen tarkkuus säilyy ilman säiliön koon kohtuutonta kasvua.
Muotojen vertailu ja tekniset tiedot
Tyypillinen 15 megatavun 3D-resurssi, joka on jaettu glTF JSON -tiedoston ja useiden ulkoisten tekstuurien kesken, latautuu noin 3,0 sekunnissa tavallisella 4G-yhteydellä, 0,8 sekunnissa 5G-yhteydellä ja 0,2 sekunnissa kuituverkolla.
Usein kysytyt kysymykset
Miten glTF JSON -tiedosto muunnetaan glTF Binary -muotoon laatua menettämättä?
glTF JSON -muodon muuntaminen GLB-muotoon on täysin häviötöntä, koska prosessi vain pakkaa olemassa olevan tekstimanifestin, binaaripuskurit ja kuvatiedostot uudelleen yhteen säilöön muuttamatta kärkipistedataa tai pakkaamatta tekstuurin pikseleitä enempää.
Mitä eroa on glTF JSON- ja glTF Binary -muodoilla?
glTF JSON käyttää ihmisen luettavissa olevaa tekstitiedostoa, joka viittaa ulkoisiin bin- ja kuvatiedostoihin, kun taas glTF Binary pakkaa tekstimanifestin, geometriatiedot ja tekstuurit yhteen itsenäiseen tiedostoon, jossa on maagisen tavun otsikko.