SupaVoxel
Formaty plików 3D

GLB vs glTF: na czym polega różnica?

GLB vs glTF to kwestia opakowania, nie danych: .gltf to czytelny JSON z osobnymi plikami, a .glb pakuje wszystko w jeden. Wysyłaj GLB, edytuj glTF, konwertuj bezstratnie.

  • Specyfikacja Khronos glTF 2.0
  • Zmierzone rozmiary plików
  • Konwersja bezstratna
Zaktualizowano październik 2026

GLB vs glTF: krótka odpowiedź

glTF to otwarty format Khronos Group do dostarczania scen 3D do aplikacji i do sieci, a GLB nie jest osobnym formatem, tylko jego binarnym kontenerem. Specyfikacja definiuje oba: plik .gltf to JSON (typ MIME model/gltf+json), a plik .glb (model/gltf-binary) pakuje ten sam JSON plus jeden bufor binarny w jeden plik.

Pytanie GLB vs glTF dotyczy więc opakowania, nie jakości. Siatki, materiały PBR, tekstury, animacje, skóry i morph targety przetrwają identycznie w obu. Zmienia się liczba plików, którymi zarządzasz, możliwość otwarcia opisu sceny w edytorze tekstu oraz to, ile dodatkowego rozmiaru płacisz, jeśli osadzasz dane binarne w JSON-ie.

Dla prawie wszystkich odpowiedź brzmi GLB: jeden plik do wysłania, wysłania mailem lub wrzucenia do three.js, Babylon.js, <model-viewer>, Blendera, Unity lub Unreala. Wybierz glTF z osobnymi plikami, gdy debugujesz, ręcznie edytujesz wartości materiałów albo udostępniasz tekstury między wieloma modelami na CDN.

Tabela porównawcza GLB vs glTF

Oba to glTF 2.0, więc większość wierszy jest identyczna. Różnią się te wiersze, które decydują o wyborze GLB vs glTF w Twoim projekcie.

GLB (.glb)glTF (.gltf)
Typ geometriiSiatki trójkątów (także punkty i linie), hierarchia węzłów, skóry, morph targetyIdentycznie
Kolor / teksturaTekstury PNG lub JPEG zapisane wewnątrz bloku binarnego; kolory wierzchołkówTekstury jako osobne pliki obrazów albo data URI base64 w JSON-ie
JednostkiMetry, układ prawoskrętny, +Y w górę, zgodnie ze specyfikacjąIdentycznie
MateriałyWbudowany PBR metallic-roughness; więcej przez rozszerzenia KHRIdentycznie
Rozmiar plikuNajmniejsza forma jednoplikowa: 12-bajtowy nagłówek plus blok JSON i blok BINTa sama łączna liczba bajtów co osobne pliki; około 33% więcej, jeśli dane binarne są osadzone jako base64
Łatwość edycjiBinarny; do podejrzenia potrzebne narzędzieJSON jest czytelny dla człowieka i daje się diffować w edytorze tekstu
Wsparcie programówthree.js, Babylon.js, model-viewer, Blender, Unity, Unreal, Godot, Windows 3D ViewerTe same loadery; pliki zewnętrzne muszą zostać we właściwym folderze względnym
Zastosowanie w drukuTo nie format do druku; UltiMaker Cura go otworzy, większość slicerów nieTo samo; do druku przekonwertuj na STL lub 3MF
Liczba plików1Od 1 do wielu (.gltf, .bin, obrazy)

Źródło: specyfikacja Khronos glTF 2.0, sekcje o rozszerzeniach plików, układzie współrzędnych i jednostkach oraz formacie pliku GLB.

Jak z glTF powstaje plik GLB

Plik GLB zaczyna się od 12-bajtowego nagłówka: bajty magiczne glTF, wersja (2) i całkowita długość. Potem następują bloki. Pierwszy to blok JSON, dokładnie ten sam opis sceny, który zawierałby .gltf. Drugi to blok BIN, w którym mieszczą się pozycje wierzchołków, normalne, UV, indeksy, klatki kluczowe animacji i — zwykle — same obrazy tekstur.

Plik .gltf trzyma ten JSON jako osobny plik i odwołuje się do danych binarnych na jeden z dwóch sposobów: ścieżkami względnymi do plików .bin i obrazów leżących obok albo data URI, które kodują bajty base64 prosto w JSON-ie. Sama specyfikacja zauważa, że base64 zwiększa długość ładunku w bajtach o 33%, a jego dekodowanie kosztuje dodatkowe przetwarzanie. To główny powód, dla którego GLB istnieje.

  • GLB: nagłówek + blok JSON + blok BIN, jeden plik
  • glTF: JSON plus .bin i obrazy obok siebie
  • glTF z osadzonymi danymi: jeden plik, ale base64 dodaje jedną trzecią

Rozmiar GLB vs glTF: jeden model spakowany na trzy sposoby

Wzięliśmy teksturowany model wygenerowany przez AI z naszej galerii — steampunkowego rycerza-robota z 500,000 trójkątów, 287,963 wierzchołkami i trzema teksturami PNG 2048 x 2048 — i zmierzyliśmy każde opakowanie.

OpakowaniePlikiRozmiar
GLB126.9 MB
glTF + .bin + tekstury PNG5 (.gltf, .bin, 3 pliki PNG)około 26.9 MB łącznie; sam JSON .gltf to około 2 KB
glTF z osadzonymi danymi base641około 35.9 MB
Z czego składają się bajtyGeometria 15.2 MB, tekstury 11.7 MB

Opakowanie niczego nie zmniejsza. Aby model był mniejszy, skompresuj geometrię (Draco lub meshopt), zmniejsz lub przekoduj tekstury albo zredukuj liczbę trójkątów. Nasz kompresor GLB i upraszczacz siatki robią to w przeglądarce.

glTF vs GLB w sieci, w AR i w Blenderze

W sieci GLB jest praktycznym domyślnym wyborem: jedno żądanie, jeden wpis w cache i każdy liczący się loader go czyta. Osobne pliki glTF mogą wygrać na stronie, która pokazuje wiele modeli dzielących te same tekstury, bo przeglądarka pobiera wspólny obraz tylko raz; same notatki implementacyjne specyfikacji opisują ten kompromis.

W AR Scene Viewer Androida przyjmuje glTF i GLB, natomiast Quick Look na iPhone'ie wymaga USDZ, więc publikuj oba i konwertuj GLB na USDZ dla urządzeń Apple. W Blenderze File > Import > glTF 2.0 czyta każdy z nich, a menu Format eksportera oferuje glTF Binary (.glb) i glTF Separate (.gltf + .bin + tekstury). Wybierz Binary, chyba że masz powód, by zrobić inaczej.

Do druku 3D żaden z nich nie jest właściwym formatem przekazania. Przekonwertuj GLB na STL lub 3MF; tekstury się nie wydrukują, ale kształt tak.

  • Sieć i udostępnianie: GLB
  • Wiele modeli ze wspólnymi teksturami: osobny glTF
  • AR na iPhone'ie: konwertuj na USDZ
  • Druk: konwertuj na STL lub 3MF

GLB vs glTF: kiedy używać którego

Oba są poprawnym glTF 2.0. Wybieraj według swojego workflow.

Udostępnianie modelu komukolwiek

GLB. Jeden plik, nic nie ginie po drodze, otwiera się w Windows 3D Viewer, Blenderze i każdej przeglądarce 3D.

Osadzanie na stronie internetowej

GLB ze skompresowaną geometrią i teksturami. Jedno żądanie HTTP i najmniejszy praktyczny transfer.

Debugowanie zepsutego materiału

glTF Separate. Otwórz JSON, sprawdź baseColorFactor, metallicFactor lub indeksy tekstur, popraw i wczytaj ponownie.

Katalog produktów ze wspólnymi teksturami

glTF Separate, żeby wspólna tekstura tkaniny czy drewna trafiła do cache raz na setki modeli.

Kontrola wersji

glTF Separate. Git potrafi diffować JSON, a duże pliki binarne mogą iść przez LFS.

Unikaj: glTF z osadzonymi danymi

To jeden plik jak GLB, ale około jednej trzeciej większy i wolniejszy w parsowaniu. Rzadko jest powód, by go wybierać.

Konwersja glTF i GLB bez psucia czegokolwiek

Konwersja jest bezstratna w obie strony, pod warunkiem że wszystkie przywoływane pliki są obecne.

Rób
  • Trzymaj .gltf, .bin i obrazy tekstur w tych samych względnych folderach, z którymi je wyeksportowano
  • Wczytaj wynik w przeglądarce i sprawdź, czy tekstury się pokazują, zanim go udostępnisz
  • Pamiętaj, że glTF jest w metrach: figurka 30 mm to 0.03 jednostki, co w niektórych narzędziach wygląda na maleńkie
  • Kompresuj geometrię i tekstury pod sieć; samo przepakowanie nic nie oszczędza
Unikaj
  • Wysyłaj tylko plik .gltf; bez .bin i obrazów model wczyta się pusty lub szary
  • Zmieniaj nazwę .gltf na .glb; binarny nagłówek musi zapisać konwerter
  • Używaj glTF z osadzonym base64 do dużych modeli; dodaje około 33% do danych binarnych
  • Oczekuj, że slicer wydrukuje tekstury z GLB; do wydruków wielokolorowych przekonwertuj na 3MF

FAQ

Najczęściej zadawane pytania

GLB vs glTF: który jest lepszy?

Żaden nie jest lepszy pod względem jakości; niosą te same dane glTF 2.0. GLB jest lepszy do dostarczania, bo to jeden plik i unika 33% narzutu base64 osadzonego glTF. Osobny glTF jest lepszy do przeglądania i edycji, bo opis sceny to czytelny JSON. Do udostępniania, sieci i AR na Androidzie wybierz GLB.

Jaka jest różnica między GLB a glTF w jednym zdaniu?

Plik .gltf to opis sceny w JSON, zwykle z osobnymi plikami .bin i obrazów obok, natomiast plik .glb wkłada ten sam JSON i wszystkie dane binarne do jednego kompaktowego binarnego kontenera. Siatki, materiały, tekstury i animacje w środku są identyczne, dlatego można konwertować w obie strony bezstratnie.

Czy konwersja glTF na GLB traci jakość?

Nie. Konwerter kopiuje JSON do bloku JSON w GLB i przenosi bufor oraz obrazy do bloku BIN, niczego nie przekodowując, więc geometria, tekstury i animacje są bit w bit takie same. Jedyny sposób, by coś zgubić, to brakujący plik zewnętrzny: jeśli tekstura przywoływana przez .gltf nie leży w swoim folderze, nie da się jej spakować.

Dlaczego mój GLB jest taki duży?

Zwykle przez tekstury. W naszym modelu testowym z 500,000 trójkątów trzy tekstury PNG 2048 x 2048 zajęły 11.7 MB z 26.9 MB GLB, a geometria pozostałe 15.2 MB. Zmniejsz tekstury lub przekoduj je na JPEG, zastosuj kompresję geometrii Draco lub meshopt albo uprość siatkę. Nasz darmowy kompresor GLB zrobi to w Twojej przeglądarce.

Czy mogę wydrukować w 3D plik GLB lub glTF?

Pośrednio. UltiMaker Cura wymienia glTF Binary i glTF Embedded wśród formatów, które otwiera, ale PrusaSlicer i Bambu Studio już nie, a żaden slicer nie drukuje tekstur. Pewna droga to konwersja GLB na STL przy jednym kolorze lub na 3MF przy wielu kolorach, a potem cięcie. Nasze konwertery w przeglądarce robią jedno i drugie bez wysyłania pliku.

Jakich jednostek używa glTF?

Metry. Specyfikacja glTF 2.0 ustala wszystkie odległości liniowe w metrach, w prawoskrętnym układzie współrzędnych z osią +Y skierowaną do góry. Dzięki temu skala jest przewidywalna między narzędziami — inaczej niż w STL czy OBJ — ale zaskakuje osoby przyzwyczajone do druku 3D: figurka o wysokości 120 mm ma 0,12 jednostki. Konwertery w slicerach same przeliczają metry na milimetry.

Jaki format dostanę w SupaVoxel?

Każdy model SupaVoxel możesz pobrać bezpłatnie jako GLB — także w ramach 3 darmowych kredytów, które otrzymują nowe konta. Płatne plany dodają eksport do STL, OBJ, USDZ i wielokolorowego 3MF, modele z teksturami oraz licencję komercyjną. Jeśli masz tylko darmowy GLB, możesz go obejrzeć, przekonwertować na glTF lub STL albo skompresować za pomocą narzędzi dostępnych na tej stronie.

Czy iPhone'y otwierają pliki GLB?

Nie w AR Quick Look, które wymaga USDZ. Scene Viewer na Androidzie i większość przeglądarek 3D w sieci korzysta z glTF lub GLB. Jeśli publikujesz modele do AR, zachowaj GLB na Androida i do sieci, a dla iPhone'a i iPada przygotuj kopię USDZ. Nasz darmowy konwerter GLB na USDZ działa w przeglądarce.

Zacznij za darmo

GLB vs glTF — już wiesz? Stwórz model

Zamień zdjęcie w model 3D — zwykle w mniej niż minutę. Pobieranie GLB jest darmowe w ramach pierwszych 3 kredytów i nie wymaga karty; modele z teksturami są dostępne w płatnym planie.

Bez karty kredytowej · 3 darmowe kredyty na start