STL vs OBJ: Který formát použít?
Zvolte STL, když potřebujete jen tisknutelný tvar, a OBJ, když model nese UV, textury nebo barvy. Oba formáty otevře každý slicer a můžete je zdarma převádět.
- Naměřené velikosti souborů
- Ověřené chování slicerů
- Bezplatné prohlížeče a převodníky
STL vs OBJ: stručná odpověď
Pro jednobarevný 3D tisk je STL bezpečnější volbou: je to nejstarší a nejuniverzálněji podporovaný mesh formát a neukládá nic než trojúhelníky, takže slicer nemá co špatně přečíst. Zvolte OBJ, když má stejný soubor vypadat dobře i na obrazovce, v Blenderu, herním enginu nebo rendereru, protože OBJ zachovává texturové souřadnice (UV), vrcholové normály a odkaz na soubor materiálu.
Volba mezi STL a OBJ je vlastně otázka, co potřebujete přenést exportem. Jen tvar? STL. Tvar plus vzhled povrchu? OBJ. Pokud potřebujete barvu přímo na tiskárně, ani jeden není ideální: použijte 3MF, který slicery čtou jako přiřazení filamentů.
Oba formáty mají dvě společná úskalí. Nemají pole jednotek, takže model může dorazit 25.4krát menší (uloženo v palcích) nebo 1,000krát menší (uloženo v metrech). A oba jsou jen trojúhelníkové mesh sítě, takže křivky jsou už rozdělené na facety; ani jeden nezachová přesné CAD plochy jako STEP soubor.
Srovnávací tabulka STL vs OBJ
Co který formát umí a neumí uložit podle popisů formátů a podle toho, jak je dnešní nástroje skutečně čtou.
| STL | OBJ | |
|---|---|---|
| Typ geometrie | Pouze trojúhelníky; každý trojúhelník uvádí vlastní 3 vrcholy plus normálu facety | Polygony (trojúhelníky, quady, n-úhelníky) se sdílenými indexovanými vrcholy; specifikace připouští i NURBS křivky a plochy, které ale málokterý nástroj čte |
| Barva / textura | Ve standardu žádná; dva nekompatibilní výrobcovské hacky ukládají 15bitovou barvu na facetu | UV souřadnice přímo v souboru; barvy a texturové obrázky odkazované přes samostatný soubor .mtl |
| Jednotky | Žádné; slicery předpokládají milimetry | Žádné; rozhoduje přijímající aplikace |
| Materiály | Žádné | Difuzní, spekulární, opacity a texturové mapy v .mtl; PBR metal/roughness jen přes neoficiální rozšíření |
| Velikost souboru | Binární: 84 bajtů + 50 bajtů na trojúhelník. ASCII: zhruba 6x větší | Pouze text; menší než binární STL, pokud jde jen o geometrii, větší jakmile se zapíšou UV a normály |
| Upravitelnost | Těžko upravitelný: změť nespojených trojúhelníků | Snazší: propojená topologie, skupiny a quady zůstávají |
| Podpora v software | Každý slicer, CAD a mesh nástroj | Každý slicer, Blender, Maya, 3ds Max, Unity, Unreal, většina prohlížečů |
| Využití pro tisk | De facto výchozí volba pro jednomateriálové tisky | Pro tisk v pořádku; PrusaSlicer ignoruje jeho materiály, Bambu Studio umí namapovat jeho barvy na filamenty |
Struktura binárního STL podle popisu formátu: 80bajtová hlavička, 4bajtový počet trojúhelníků a poté 50 bajtů na trojúhelník.
Co je uvnitř souboru STL a OBJ
Soubor STL, vytvořený v roce 1987 pro první stereolitografické stroje společnosti 3D Systems, je seznam trojúhelníků. Každý trojúhelník nese normálový vektor a tři rohové body zapsané celé. Protože nic nespojuje sousední trojúhelníky, vrchol sdílený šesti trojúhelníky se uloží šestkrát a přijímající software musí nejprve obnovit propojení, než může cokoli opravit nebo zjednodušit.
Soubor OBJ od Wavefront Technologies je textový soubor s oddělenými seznamy: řádky v pro pozice vrcholů, vt pro texturové souřadnice, vn pro normály a řádky f, které sestavují plochy odkazováním na tyto seznamy. Řádek mtllib pojmenovává soubor .mtl, který obsahuje barvy a cesty k texturovým obrázkům. Právě díky této indexaci zůstává OBJ propojený a může nést UV rozvržení, pro která STL prostě nemá místo.
- STL: jeden záznam na trojúhelník, nic víc
- OBJ: vrcholy, UV a normály uvedené jednou a znovu použité
- Textury OBJ žijí v samostatných souborech, které musíte mít u něj
Velikost souboru STL vs OBJ: jeden model uložený oběma způsoby
Stejný model vygenerovaný AI – steampunkového robotího rytíře z naší galerie s 500,000 trojúhelníky, 287,963 vrcholy a barevnou texturou 2048 x 2048 – jsme exportovali do každé varianty a soubory změřili.
| Export | Co obsahuje | Velikost |
|---|---|---|
| Binární STL | Trojúhelníky a normály facet | 25.0 MB |
| ASCII STL | Stejná data jako čitelný text | 150.9 MB |
| OBJ, pouze geometrie | Pozice vrcholů a plochy | 21.4 MB |
| OBJ s UV a normály | Pozice, UV, normály, plochy | 38.6 MB |
| OBJ s texturou, plná sada | .obj + .mtl (198 bajtů) + PNG textura (5.0 MB) | 43.6 MB ve 3 souborech |
| 3MF, pouze geometrie (pro referenci) | Zazipovaná XML mesh síť v milimetrech | 10.3 MB |
Velikost binárního STL je přesná: 84 + 50 x 500,000 = 25,000,084 bajtů. OBJ vyhrává u samotné geometrie, protože každý z 287,963 vrcholů se zapíše jednou, nikoli jednou na trojúhelník.
OBJ vs STL pro 3D tisk
Slicery oba formáty berou jako mesh síť k rozřezání, takže správný soubor se vytiskne v obou případech stejně. Rozdíly jsou v tom, co se zahodí. Dokumentace PrusaSliceru uvádí, že informace o materiálu a texturách v OBJ se při importu ignorují, a podporuje ASCII i binární STL. UltiMaker Cura uvádí STL a OBJ mezi podporovanými typy modelů spolu s 3MF, PLY a glTF. Bambu Studio umí načíst barvy z OBJ a nabídne jejich namapování na vaše AMS filamenty, díky čemuž je OBJ na tiskárně Bambu užitečnější než STL, i když 3MF je pro vícebarevný tisk stále spolehlivější cestou.
Tisky ve skutečnosti kazí geometrie, ne formát: díry, převrácené normály a samoprotínání. Podezřelý soubor před rozřezáním prožeňte bezplatným nástrojem na opravu STL; přijme mesh a vrátí vodotěsný STL.
- Stejná mesh, stejná dráha nástroje: formát nemění kvalitu tisku
- Textury v OBJ většina slicerů zahodí
- Pro barevný tisk exportujte raději 3MF
Kdy použít STL a kdy OBJ
Rozhodněte mezi STL a OBJ podle toho, kam soubor půjde dál.
Jednobarevný FDM nebo resinový tisk
Model s texturou pro Blender nebo hru
Vícebarevný tisk na Bambu AMS nebo Prusa MMU
Posílání dílu strojaři nebo uživateli CAD
Sdílení rychlého náhledu
Archivace verze připravené k tisku
Převod mezi STL a OBJ bez překvapení
Převod je v jednom směru bezztrátový pro tvar a ve druhém ztrátový pro vzhled.
- Uchovávejte .mtl a texturové obrázky ve stejné složce jako OBJ a při sdílení je zabalte společně do ZIPu
- Zkontrolujte velikost modelu hned po importu; pokud nesedí 25.4krát, bylo uloženo v palcích
- Používejte binární STL, nikdy ASCII, pokud nástroj výslovně nechce text
- Prohlédněte si výsledek v prohlížeči, než ho rozřežete nebo odešlete
- Nečekejte, že převod STL na OBJ vrátí barvy nebo UV; v STL nikdy nebyly
- Neposílejte samotný .obj, když záleží na vzhledu; bez .mtl se otevře šedý
- Nepředpokládejte, že menší soubor znamená nižší kvalitu; geometrie OBJ je menší, protože se vrcholy sdílejí
- Nepřejmenovávejte .obj na .stl; vnitřní struktura je jiná a soubor se nepodaří načíst
Bezplatné prohlížeče a převodníky STL a OBJ
Všechny běží v prohlížeči bez přihlášení a váš soubor nikdy neopustí vaše zařízení.
FAQ
Často kladené dotazy
Je pro 3D tisk lepší STL, nebo OBJ?
Zachovává soubor OBJ barvu a textury?
Proč je můj soubor STL mnohem větší než OBJ?
Můžu převést STL na OBJ bez ztráty kvality?
STL vs OBJ: který formát Blender preferuje?
Proč se mi model naimportuje mrňavý nebo obrovský?
Může mít STL soubor barvu?
Jak získám STL nebo OBJ z fotky?
Související nástroje a návody
Pokračovat
Začít zdarma
STL vs OBJ vyřešeno? Teď vytvořte model
Přeměňte fotku na 3D model, obvykle za méně než minutu, a pak ho v placeném tarifu exportujte jako STL, OBJ nebo 3MF – nebo si soubory zde zdarma prohlédněte a převeďte.
Bez platební karty · 3 kredity zdarma na start