BartoszPiasecki Napisano 20 Październik 2012 Napisano 20 Październik 2012 Witam, Próbuje rozgryźć temat zastępowania materiałów. Mam wiele scen w moim archiwum które posiadają materiały standardowe Lambert, Phong etc... W większości plików materiały mają podobne nazwy jak np... "Lambert": Drewno, Metal, Cegla, Sciana... W scenie głównej tworze bibliotekę materiałów które najczęściej stosuję o podobnych nazwach tyle tylko że w postaci "Mia_material_x_passes". Za każdym razem kiedy importuje scene Maya zamienia mi "Drewno na Drewno1 Drewno2 etc... ... Czy znacie sposób na to by importowane elementy używały już wcześniej utworzonych materiałów w senie głównej. Ewentualnie by importowanymi materiałami nadpisywać istniejące bazując tylko na nazwie materiału a nie jego typie.... Pozdrawiam i z góry dziękuje z pomoc...
Sebazx6r Napisano 30 Październik 2012 Napisano 30 Październik 2012 Ze zwyklych materialow na mia material sie nieda. A odnosnie drugiego :), ti divre pytanie gdyż sam się zastanawiałem jak to zrobic. Pytanie czy chce zeby byly podpiete tekstury czy tez nie? Bo jak nie to mozesz dla mimaterial pozapisywac presety.
BartoszPiasecki Napisano 30 Październik 2012 Autor Napisano 30 Październik 2012 Szukam cały czas po różnych forach i portalach funkcji w mel-u. Zakładam że jeśli można wyłączyć namespaces przy imporcie materiałów to pewnie też można jakoś wyłączyć auto-zmianę nazwy materiału. W sumie można by napisać skrypt który wykonywałby operacje w stylu [ jeśli widzę material zaczynajacy się na Drewno* -> rozłącz, podłącz materiał w to miejsce materiał istniejący DrewnoMia*x_passes... ] Jak znajdę na to rozwiązanie to opublikuje..
BartoszPiasecki Napisano 30 Październik 2012 Autor Napisano 30 Październik 2012 Więc ( echo prawdę Ci powie....) Jeśli w importowanych scenach mam SG o tych stałych nazwach np ... SG Drewno SG Metal oraz mając w scenie głównej już wcześniej zdefiniowane materiały to można użyć takiej składni: "DrewnoMia" to gotowy materiał mia_x_passes SGDrewno to SG zaimportowanego materiału connectAttr -f DrewnoMia.outColor SGDrewno.surfaceShader; Co w prosty sposób przypisze istniejący materiał do zaimportowanej grupy... ale to nie do końca to o co mi chodzi...
Creator Napisano 30 Październik 2012 Napisano 30 Październik 2012 Taki skrypt do zastępowania materiałów nie jest trudny. Pytanie czy chcesz importować materiały Mentalowe do sceny z normalnymi materiałami, czy importować scenę z mayowymi materiałami do sceny gdzie są już mentalowe materiały (co wydaje się być trochę głupie ;) ).
BartoszPiasecki Napisano 31 Październik 2012 Autor Napisano 31 Październik 2012 Oczywiście importować materiały mentalowe i zastępować normalne. czesto mam do czynienia np z generowanymi plikami z Archicada ( 3ds-) które maja te same nazwy typowych materiałów, więc co aktualizację rys. jestem zmuszony do nakładania materiałów on nowa.
CgBartosz Napisano 31 Październik 2012 Napisano 31 Październik 2012 moze podlacz sobie scene bez materialow przez referencje do jakiejs pustej. zaladuj materialy i podepnij a w kazdej kolejnej iteracji podmianiaj te zreferencjonowana scene. Informacje o polaczeniach miedzy nodami pozostana w scenie glownej (te do ktorej ladujesz referencje). Jesli pomiedzy iteracjami nazwy obiektow pozostana niezmienne to wszystko bedzie pieknie działac.
BartoszPiasecki Napisano 1 Listopad 2012 Autor Napisano 1 Listopad 2012 Znalazłem przed chwilą skrypt który całkowicie rozwiązuje temat. Polecam "reducematerial" Wystarczy w importowanej scenie wyłączyć namespaces, podać name "IMP" dla Clashing nodes i gotowe. Nie zależnie od typu materiału zamienia go automatycznie na utworzony wcześniej materiał o identycznej nazwie :D :cool: http://www.thomashamilton.org/MelScript.html
BartoszPiasecki Napisano 3 Listopad 2012 Autor Napisano 3 Listopad 2012 @Creator jeśli znasz inne równie dobre rozwiązanie to proszę... skrypt który znalazłem wymaga by materiały importowane miały identycznyne nazwy jak te w scenie głównej, co stwarza pewne ograniczenia...
beny Napisano 5 Listopad 2012 Napisano 5 Listopad 2012 @Creator jeśli znasz inne równie dobre rozwiązanie to proszę... Ale CgBartosz Ci podał najlepsze rozwiązanie tej kwestii - bez skryptu i nie ogranicza Cie do nazewnictwa - tak się to robi produkcyjnie.
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się