Co to jest format pliku MTL?
.mtl to plik konfiguracyjny materiałów używany przez aplikacje do modelowania 3D jako dodatek do formatu siatki OBJ. Pierwotnie opracowany przez Wavefront Technologies pod koniec lat 80. XX wieku, plik .mtl przechowuje informacje o wyglądzie powierzchni - kolorach rozproszonych (diffuse), otoczenia (ambient) i lustrzanych (specular), a także o połysku, nieprzezroczystości i odniesieniach do map tekstur - dla każdego nazwanego materiału w scenie.
Definicje materiałów są pogrupowane w bloki wprowadzane słowem kluczowym newmtl <nazwa>, po którym następują instrukcje właściwości, takie jak Ka (kolor otoczenia), Kd (kolor rozproszony), Ks (kolor lustrzany), Ns (wykładnik lustrzany), d lub Tr (przezroczystość/rozpuszczenie) oraz map_Kd (ścieżka do obrazu tekstury rozproszonej). Pliki .mtl przechowują dane w formacie tekstowym, więc można je otworzyć w dowolnym edytorze tekstu. Chociaż ręczna edycja pliku .mtl jest możliwa, należy zachować ostrożność, aby zachować poprawną składnię, ponieważ błędy mogą wpłynąć na sposób ładowania ustawień materiałów w aplikacji macierzystej.
Siatka .obj odwołuje się do swoich materiałów poprzez dyrektywę mtllib, wskazującą na jeden lub więcej towarzyszących plików .mtl. Mapy tekstur wymienione w blokach materiałów zazwyczaj odnoszą się do obrazów PNG lub JPG za pomocą ścieżki względnej z katalogu pliku .mtl. Ze względu na swoją tekstową, otwartą strukturę, format ten jest szeroko obsługiwany przez narzędzia 3D, w tym Blender i MeshLab.
Bezpieczeństwo
RYZYKO: LOWPlik MTL to zwykły tekst bez kodu wykonywalnego, więc jest bezpieczny do otwierania i odczytu. Jedyne praktyczne zastrzeżenia: linie map_* wskazują na zewnętrzne pliki obrazów, więc błędna lub brakująca tekstura powoduje załadowanie modelu na szaro (problem z danymi, nie z bezpieczeństwem); a spreparowana ścieżka tekstury to w teorii tylko względna nazwa pliku, której aplikacja 3D będzie szukać. W formacie nie istnieją funkcje makr ani skryptów. Jak zawsze, pobieraj modele 3D z wiarygodnych źródeł.
Szczegóły formatu
w pigułceProgramy otwierające pliki MTL
Szczegóły techniczne
specyfikacja| Typ formatu | Zwykły tekst ASCII; brak struktury binarnej lub magicznych bajtów |
| Format towarzyszący | Wavefront OBJ (.obj); plik .obj łączy się ze swoim .mtl poprzez dyrektywę mtllib |
| Słowo kluczowe bloku materiału | newmtl <nazwa> - rozpoczyna każdą nazwaną definicję materiału w pliku |
| Kolor rozproszony (Diffuse) | Kd r g b - wartości zmiennoprzecinkowe RGB w zakresie 0.0-1.0 |
| Kolor otoczenia (Ambient) | Ka r g b - wartości zmiennoprzecinkowe RGB w zakresie 0.0-1.0 |
| Kolor lustrzany i wykładnik | Ks r g b dla koloru lustrzanego; Ns 0-1000 dla rozmiaru odblasku (połysku) |
| Przezroczystość | d (dissolve): 1.0 = w pełni nieprzezroczysty, 0.0 = w pełni przezroczysty; Tr = 1 − d (konwencja odwrotna) |
| Mapa tekstury rozproszonej | map_Kd <ścieżka> - odwołuje się do zewnętrznego pliku obrazu PNG, JPG lub BMP |
| Dodatkowe kanały tekstur | map_Ks (mapa lustrzana), map_Bump / bump (mapa normalnych/wypukłości), map_d (mapa przezroczystości/rozpuszczenia) |
| Model oświetlenia | illum 0-10 - wybiera cieniowanie płaskie, Lambertowskie, Phonga, odblaskowe, ray-traced lub przezroczyste |
| Identyfikacja pliku | Brak binarnych magicznych bajtów; identyfikowany przez słowo kluczowe newmtl w zwykłym tekście |
| Typ MIME | model/mtl |
| Obsługa ścieżek tekstur | Ścieżki względne lub bezwzględne; ścieżki względne są rozwiązywane względem katalogu pliku .mtl |
| Obsługa wielu materiałów | Pojedynczy plik .mtl może definiować dowolną liczbę nazwanych materiałów; jeden .obj może odwoływać się do wielu plików .mtl |
| Wydano | Late 1980s (alongside the Wavefront OBJ format) |
| Otwarty standard | Tak · bezpłatny (royalty-free) |
| Specyfikacja | paulbourke.net |
Konwersje MTL
Pytania i odpowiedzi społeczności
pytania użytkownikówBrak pytań - bądź pierwszą osobą, która zapyta o pliki MTL.