glTF JSON (.gltf)
ISO/IEC StandardníGL Transmission Format (glTF) je otevřená, licenčně volná specifikace ve formátu JSON pro efektivní přenos a načítání 3D scén a modelů v rozhraních WebGL, WebGPU, herních enginech a nativních aplikacích.
Převést GLTF na GLB
Bezplatný konvertor z GLTF do GLB v prohlížeči. Převeďte soubory okamžitě ve svém zařízení.
Kontrola a metadata
Operační systémy a analyzátory souborů identifikují soubory glTF kontrolou počáteční binární sekvence bajtů:
Podpis hlavičky na úrovni bajtů (Magic Bytes)
Operační systémy a analyzátory souborů identifikují soubory glTF kontrolou počáteční binární sekvence bajtů:
HEXADECIMÁLNÍ PODPIS (POSUN 0):
7B 0A 20 20 22 61 73 73 65 74 22ASCII REPREZENTACE: {\n "asset"
Standardizace: ISO/IEC 12113:2022 / Khronos Open Standard
Technické specifikace
| Architektura kontejneru | Pro člověka čitelný dokument JSON popisující graf scény, uzly, sítě, accessors, materiály a animace s odkazy na externí buffery |
| Komprese | Externí textury (PNG, JPEG, WebP) a volitelná komprese geometrie Draco |
| Pořadí bajtů | Text JSON v UTF-8 (odkazuje na buffery .bin v pořadí little-endian) |
| Barevné prostory | Základní barva sRGB, Lineární drsnost a kovovost |
| Kanály a struktura | Hierarchie scény, uzly, kamery, materiály PBR, kostry pro skinning a cíle morphingu |
| Max. rozměry | Rozsah 3D souřadnic a počet trojúhelníků nejsou omezené |
| Průhlednost | Režim alfa BLEND, MASK s mezní hodnotou nebo objemový přenos světla |
| Streamování a progresivní načítání | Odděluje popis scény od binárních dat geometrie a textur, takže prohlížeč může načítat jednotlivé části podle potřeby, aniž by čekal na jediný monolitický soubor. |
Technická srovnávací matice: glTF vs konkurence
| Technický atribut | glTF (Aktuální) | GLB | OBJ | FBX |
|---|---|---|---|---|
| Architektura souboru | Text scény JSON + doprovodný .bin / textury | Jeden samostatný binární soubor | Prostý text vrcholů a stěn + .mtl | Proprietární binární/ASCII kontejner |
| Standardy materiálu PBR | Standardizovaný model PBR s kovovostí a drsností | Standardizované PBR s kovovostí a drsností | Starší materiály Phong/Lambert | Vlastní proprietární materiály |
| Podpora animací | Skeletální skinning a cíle morphingu | Skeletální skinning a cíle morphingu | Žádná (pouze statická geometrie) | Složitá animace a kosti |
| Výkon za běhu | Optimalizováno pro WebGL a enginy pro zpracování v reálném čase | Optimalizováno pro WebGL a enginy pro zpracování v reálném čase | Vyžaduje pomalé parsování a opětovné sestavení | Vyžaduje složité parsování pomocí desktopového SDK |
Běžné režimy poškození a příručka pro obnovení v hex
Chyba 3D enginu: „Failed to load buffer: URI not found“.
Hlavní příčina: Doprovodný binární soubor .bin nebo obrázky textur nebyly nahrány společně se souborem .gltf.
Obnovení: Zabalte všechny doprovodné soubory dohromady nebo proveďte přímý převod na jediný soubor GLB pomocí File2File.app.
Bezpečnostní analýza a vektory útoků na parser
Soubory glTF JSON odkazují na externí identifikátory URI (datové identifikátory URI nebo vzdálené adresy URL), které mohou vyvolat zranitelnost SSRF (Server-Side Request Forgery) nebo procházení adresářů (path traversal).
Známé vektory útoků
- Útok typu path traversal prostřednictvím relativních URI bufferů (např. „uri: ../../../etc/passwd“).
- SSRF prostřednictvím vzdáleného načítání síťových bufferů v generátorech 3D náhledů na straně serveru.
- Odepření služby (DoS) prostřednictvím chybně vytvořených cyklů rekurzivní hierarchie uzlů.
Doporučené bezpečnostní postupy: Zakázat vzdálené adresy URL a před načtením normalizovat všechny místní cesty k URI bufferů.
Historický vývoj a milníky
Klíčové výhody a přednosti
- Lidsky čitelná struktura JSON umožňuje programové úpravy, skriptování pipeline a vizuální kontrolu.
- Modulární design: odděluje lehká metadata scény od těžké binární geometrie (.bin) a textur.
- Materiály PBR mohou zlepšit konzistenci, výsledek však závisí na rendereru, osvětlení a nastavení.
Technická omezení a nevýhody
- Složitost více souborů: sdílení modelu vyžaduje zabalení souborů .gltf, .bin a obrazových textur dohromady.
- O něco pomalejší počáteční načítání v síti než u jednosouborového formátu GLB kvůli mnoha požadavkům HTTP.
- Závislosti na relativních cestách se mohou porušit, pokud dojde ke změně názvu nebo přesunutí souborů doprovodných textur.
Zajímavé technické drobnosti
- glTF má oficiální přezdívku „JPEG 3D“, protože se zaměřuje výhradně na přenos a zobrazování za běhu, nikoli na tvorbu.
- Skupina Khronos představila glTF, aby zjednodušila přenos 3D prostředků pro webové a mobilní aplikace.
- NASA poskytuje 3D modely vozítek, družic a astronautů ke stažení veřejností ve formátu glTF.
Často kladené technické otázky
Proč mému souboru glTF chybí barvy nebo tvary?
Soubor .gltf obsahuje pouze pokyny pro scénu JSON. Pro 3D tvary spoléhá na doplňkové soubory .bin a pro barvy na soubory .png/.jpg. Ujistěte se, že všechny doplňkové soubory jsou ve stejné složce.
Jak převedu soubor glTF na jediný soubor GLB?
Nahráním souboru .gltf spolu s doplňkovými soubory .bin a texturami do aplikace File2File.app je okamžitě sloučíte do jediného samostatného souboru .glb.
Jaké programy podporují glTF?
Blender, Three.js, Babylon.js, Unity, Unreal Engine, Godot a Windows 3D Viewer podporují glTF bez nutnosti dalšího nastavování.
Související konverzní páry pro glTF
Konverze podkladů glTF JSON do kontejnerů glTF Binary sdružuje samostatné textové manifesty, binární datové bloky a textury do jednoho souboru pro rychlejší doručování na webu.
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 definice 3D geometrie.
Konverze souborů geometrie Wavefront OBJ na manifesty glTF JSON modernizuje statické 3D modely na prostředky připravené pro web, které se okamžitě načítají ve standardních webových prohlížečích.