Skocz do zawartości

Rekomendowane odpowiedzi

Napisano

Witam,

 

Mam irytujacy problem opisany w pierwszym poscie w watku ponizej

 

http://max3d.pl/forum/showthread.php?t=88778

 

Szukam kogos z dobra znajomoscia maxscript'u kto za niewielka oplata (50PLN) napisze prosty skrypt ktory rozwiaze problem.

Zaczalem kombinowac sam ale z moja znajomoscia skryptowania zajelo by mi to zbyt wiele czasu.

 

Skrypt musi wyszukac wszystkie mapy z nazwami zaczynajacymi sie od "Map #" i przenumerowac je zaczynajac od 1. Musi tez zrobic to samo z nie nazwanymi materialami.

Bardzo wazne jest tez przeszukanie takich materialow jak Multi/Sub-Object, VrayOverrideMtl, Blend itp. oraz ich kombinacji.

 

Gotowy dzialajacy skrypt musi zostac udostepniony w tym watku oraz http://max3d.pl/forum/forumdisplay.php?f=139 na ponizszej licencji

 

http://freedomdefined.org/Licenses/CC-BY-3.0

 

 

Place przez PayPal.

  • Odpowiedzi 8
  • Created
  • Ostatniej odpowiedzi

Top Posters In This Topic

Napisano

Wielkie dzieki SUPER_OkO pozostaje tylko dolozenie sprawdzania podmaterialow i czy mapa/material ma nazwe inna niz standardowo przypisaywana przez max'a i powinno mi to wystarczyc.

Napisano (edytowane)

Heja. Zapomnialem dodać linijki odnośnie zmiany tylko wybranych map.. juz dodalem ci w tamtym wątku koljną wersję.

 

Odnośnie zmiany nazw bardzo rozbudowanych materialow to tutaj trzeba by bylo troche posiedziec.. bo materialy moga miec powalone drzewka.

 

 

---- EDIT ------

 

Oj dzisiaj mi się wyjątkowo nudzi. Nie chce mi się już tam wklejać więc dam tutaj. Skrypt penetruje nazwy do pierwszego drzewka, testwałem na zwykłym materiale blend więc nie wiem jak się będzie sprawdzał.

 

 

-------------------------------------------------------------------------------------------

 

scMAll = sceneMaterials

 

fn materialRename scM scMName=

(

 

if (findstring scM.name "Map #") !=undefined then scM.name = "nazwa_" + scMName

 

 

 

for w = 1 to scM.maps.count do

(

if scM.maps[w] != undefined then

(

if (findstring scM.maps[w].name "Map #") !=undefined then scM.maps[w].name = "nazwa_" + scMName + "_" + (w as string)

 

 

)

 

)

 

 

)

 

for x = 1 to scMAll.count do

(

if (getNumSubMtls scMAll[x]) == 0 then materialRename scMAll[x] (x as string)

 

else

(

for q = 1 to (getNumSubMtls scMAll[x]) do

(

aa = getSubMtl scMAll[x] q

materialRename aa ((x as string)+"_D_" + (q as string))

 

)

 

 

 

)

 

 

)

Edytowane przez SUPER_OkO
Napisano (edytowane)

jestem wlasnie na urlopie i bede mogl wyprobowac skrypt dopiero w niedziele. po udanych testach przeleje pieniadze na wskazane konto PayPal :)

 

EDIT(po testach):

dziala prawie idealnie. czy jest mozliwosc szybkiego dodania numeracji materialow ktore maja numer w prefixie a nie w suffixie czyli np. "XXXX - Default"

z gory dzieki.

Edytowane przez t0m3k

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