Skocz do zawartości

Zastępowanie materiałów Maya na Mia_x_passes z automatu?


BartoszPiasecki

Rekomendowane odpowiedzi

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...

Odnośnik do komentarza
Udostępnij na innych stronach

  • Odpowiedzi 10
  • Created
  • Ostatniej odpowiedzi

Top Posters In This Topic

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..

Odnośnik do komentarza
Udostępnij na innych stronach

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...

Odnośnik do komentarza
Udostępnij na innych stronach

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 ;) ).

Odnośnik do komentarza
Udostępnij na innych stronach

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.

Odnośnik do komentarza
Udostępnij na innych stronach

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

Odnośnik do komentarza
Udostępnij na innych stronach

@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.

Odnośnik do komentarza
Udostępnij na innych stronach

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ę



×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Wykorzystujemy cookies. Przeczytaj więcej Polityka prywatności