Blog STL Viewerstlviewer.swift.id

OBJ prohlížeč s barvami: jak otevřít OBJ + MTL v Androidu

Autor: Ihwan · · 4 min čtení

Dostali jste barevný model ve formátu OBJ, na počítači vypadal skvěle, ale v telefonu je celý šedý. Nebo vám prohlížeč hlásí, že chybí materiály. Hledáte OBJ prohlížeč, který ukáže i barvy. Problém skoro nikdy není v samotném modelu, ale v tom, že barvy nejsou v souboru OBJ. Jsou v druhém souboru, který se jmenuje MTL.

Stručně: OBJ obsahuje tvar, barvy jsou v doprovodném souboru .mtl. V Androidu vyberte při otevírání oba soubory najednou (OBJ i MTL), pak prohlížeč barvy zobrazí. Textury z obrázků (JPG, PNG) bývají vázané na cesty k souborům. Pro samotný tisk je jednobarevné STL nebo 3MF často praktičtější.

Jak funguje OBJ a MTL

OBJ je textový formát starý několik desetiletí, rozšířený hlavně v grafice a 3D modelování. Soubor obsahuje vrcholy (v), plochy (f) a odkazy na materiály. Na začátku bývá řádek jako:

mtllib vaza.mtl

Ten říká: „barvy hledej v souboru vaza.mtl“. Dále v souboru jsou řádky usemtl glazura, které určují, jaký materiál mají následující plochy. A v MTL je pak definice, například Kd 0.80 0.35 0.20, což je difuzní barva v hodnotách RGB od 0 do 1, tady cihlově oranžová.

OBJ i MTL jsou tedy dva samostatné soubory, které musí cestovat spolu. Když pošlete jen OBJ, příjemce uvidí šedý model.

Proč barvy mizí: nejčastější příčiny

PříznakPříčinaŘešení
Model je celý šedýChybí soubor MTLVyžádejte si MTL a otevřete oba soubory
Šedý, i když MTL máteOtevřeli jste jen OBJVe výběru souborů označte OBJ i MTL
Barvy sedí jen zčástiNázev v mtllib neodpovídá skutečnému názvuPřejmenujte MTL podle řádku v OBJ
Chybí textura (vzor, fotka)Obrázek textury chybí nebo má cestu z cizího počítačeZkontrolujte cesty v MTL, např. map_Kd C:\Users\...
Hlášení o souboru materiálůOtevřeli jste jen MTLVyberte i model .obj

Pozor na posílání přes chat: některé aplikace soubory přejmenují nebo pošlou jen jeden z nich. Nejjistější je zabalit OBJ, MTL a textury do jednoho ZIP archivu a ten v telefonu rozbalit.

OBJ prohlížeč v Androidu: otevření i s barvami

Postup v aplikaci STL Viewer:

  1. Uložte oba soubory (např. vaza.obj a vaza.mtl) do stejné složky v telefonu, třeba do Stažených.
  2. V aplikaci klepněte na „Otevřít soubor“.
  3. Ve výběru souborů dlouze podržte první soubor, pak klepněte na druhý, aby byly označené oba. Potvrďte výběr.
  4. Model se otevře s barvami. Pokud ne, klepněte na panelu nástrojů na Barva a zvolte Barvy ze souboru.

Pokud otevřete OBJ bez MTL, aplikace model zobrazí ve vámi zvolené barvě a upozorní, že barvy chybí a je třeba otevřít MTL spolu s OBJ. A pokud omylem otevřete jen MTL, dozvíte se, že jde o soubor materiálů a máte ho vybrat spolu s modelem. Vyzkoušet si to můžete na ukázkovém modelu vázy, který je právě OBJ + MTL. Více v návodu k otevírání souborů.

Poznámka: STL Viewer zobrazuje barvy materiálů z MTL. Fotorealistické textury a složité materiály (lesk, průhlednost, mapy normál) jsou doménou grafických programů; pro kontrolu tvaru a rozměrů před tiskem je ale nepotřebujete.

OBJ a jednotky: pozor na metry

Stejně jako STL, ani OBJ neukládá jednotky. Prohlížeč předpokládá milimetry. Grafické programy ale často pracují v metrech nebo „jednotkách scény“. Model sošky vysoké 15 cm pak může přijít s výškou 0,15 a v milimetrech vypadá jako zrnko prachu. Opačně model z programu v centimetrech bude desetkrát menší, než čekáte.

Prohlížeč umí soubor přepnout jen mezi milimetry a palci. Pokud je OBJ v metrech nebo centimetrech, upravte měřítko při exportu nebo ve sliceru (×1000 pro metry, ×10 pro centimetry). S Premium můžete v aplikaci použít Měřítko a export, zadat cílový rozměr, třeba výšku 150 mm, a uložit výsledek jako binární STL; aplikace přitom ohlídá povolený rozsah měřítka. Postup popisuje článek změna měřítka STL.

Kdy pro tisk raději použít STL nebo 3MF

OBJ je skvělý pro prohlížení barevných modelů, ale pro tisk má slabiny:

Pro jednobarevný tisk proto stačí STL. Pro vícebarevný tisk je lepší 3MF, který nese barvy i jednotky v jednom souboru; viz článek co je 3MF soubor.

Příklad z praxe

Grafička vám pošle e-mailem logo firmy jako logo3d.obj a logo3d.mtl, chcete ho vytisknout jako stojánek. V telefonu otevřete oba soubory a zjistíte: rozměry 0,12 × 0,03 × 0,01 (metry!), Vodotěsný: Ne. Hned víte, že je potřeba požádat o export v milimetrech a s uzavřenou sítí, ještě než model otevřete ve sliceru. Úspora času: jedna zbytečná zpráva tam a zpět místo nepovedeného tisku. Až dorazí opravená verze, porovnejte čísla znovu: výška by teď měla odpovídat skutečnému rozměru stojánku a řádek Vodotěsný by měl ukázat „Ano“.

Na tyhle rychlé kontroly si nainstalujte STL Viewer z Google Play; OBJ, MTL i ostatní formáty otevře offline a nikam je nenahrává. Další podrobnosti najdete na webu STL Vieweru.

Časté otázky

Proč je můj OBJ model šedý?

Barvy jsou v samostatném souboru MTL. Pokud chybí nebo ho neotevřete spolu s OBJ, prohlížeč ukáže model bez barev.

Jak otevřu OBJ i MTL najednou?

Uložte oba soubory do jedné složky a ve výběru souborů označte oba. STL Viewer pak barvy z MTL zobrazí.

Můžu OBJ rovnou tisknout?

Mnoho slicerů OBJ načte, ale modely z grafiky často nejsou vodotěsné a bývají v jiných jednotkách. Zkontrolujte rozměry a uzavřenost sítě.