Napisano 18 Lipiec 201311 l Piszę skrypt w maxscripcie do relinkowania plików. Używam funkcji ATSOps.SelectFiles() do wybrania pliku i jego podmiany, tylko że tak funkcja strasznie długo działa jesli scena ma dużo plików. Jest jakiś inny sposób by relinkować? Ktoś już pisał coś podobnego i ma pomysł jak to przyspieszyć? Oto kawałek mojego kodu: tempfiles = #() ATSOps.Refresh() ATSOps.GetFiles &tempfiles ATSOps.ClearSelection() for i = 2 to tempfiles.count do ( file = tempfiles[i] ATSOps.SelectFiles &file ATSOps.RetargetSelection newfiles[i] )
Napisano 18 Lipiec 201311 l http://www.scriptspot.com/3ds-max/scripts/relink-assets a nie lepiej uzyc gotowcow ze scriptspot.com? Ja go uzywam do relinkowania bitmap i dziala swietnie.
Napisano 18 Lipiec 201311 l On nie relinkuje wylacznie bitmap, wciaga wszystko. Trzeba tylko przelaczyc guzik z Bitmaps na asset links.
Napisano 18 Lipiec 201311 l Piszę skrypt w maxscripcie do relinkowania plików. Co do powolnosci AssetTrackera, sproboj restart Maxa lub reinstalacje. Mi tez sie niemilosiernie slimaczyl jak pisalem skrypt a na innym komputerze smigal. Chyba dopiero reinstalacja pomogla (a moze to bylo wywalenie danych z "Users\mantragora\AppData\Local\Autodesk\3dsMax"?), ale nie jestem pewien bo to bylo 100 lat temu i juz nie pamietam. W kazdym badz razie po tym zabiegu zaczol smigac bez problemow. Efekty widac ponizej: PS. Sorry za jakosc dzwieku, dopiero jedno video pozniej obczailem jak dzwiek dobrac tak abym nie musial pluc do mikrofonu aby bylo cos slychac ;). https://vimeo.com/58251975 PS2. I pamietaj ze AssetTracker musi byc zamkniety jak wykonujesz operacje relinkowania, bo ci max moze olac operacje. A moze trzeba bylo otworzyc okienko po wykonaniu operacji, tez juz nie pamietam. Max ma dziwne problemy ze soba wiecczasami trzeba sztuczkki stosowac. Gdzies chyba jest nawet w helpie informacja o tym :). PS3. Z tego co widze w skrypcie, otwieram i zamykam okienko AssetTrackera (obie operacje po sobie od razu) i dopiero wtedy zaczynam glowna akcje skryptu. Bez tego max potrafil olac dzialanie skryptu. Chodzilo chyba glownie o to zeby przynajmniej raz otworzyc okienko AssetTrackera podczas sesji Maxa, pozniej juz chyba nie trzeba bylo ale zostawilem zeby miec pewnosc. PS4. Ja tego nie zaimplementowalem w swoim skrypcie ale mozesz zrobic przeszukiwanie kilku katalogow z roznych dyskow zamiast podania jednej sciezki w ktorej moga sie znajdowac twoje pliki. Nie chodzi o rekursywne przeszukanie katalogu, tylko jak masz czesc plikow na dysku "D:", czesc na dysku sieciowym a jeszcze pare na "C:" to nie musialbys podawac nowej sciezki po zlinkowaniu czesci plikow tak jak ja to robie w video. PS5. Inny sposob relinkowania to przejechac po klasach i zczytac sciezki z kazdego obiektu, wtedy mozesz bez ATSOps zabieg wykonac. Ale z tym jest wiecej zabawy no i musisz zaimplementowac dla kazdego obiektu osobno zczytanie danych, wiec jak cos niestandardowego ci sie trafi nadal musisz recznie zasuwac albo dodac do implementacji. Z ATSOps sie o to nie martwisz. Przyklad: for mat in getClassInstances BitmapTexture do ( if mat.filename != undefined then ( mat.filename = @"C:\TextureMe" ) ) -- albo for obj in lights where iskindof obj light do ( if classof obj == VRayIES do ( obj.ies_file = @"C:\IESMe" ) if classof obj == Target_Light do (obj.webFile = @"C:\TargetMe") ) i to samo dla VRayProxy i co tam jeszcze zostalo. Edytowane 19 Lipiec 201311 l przez mantragora
Napisano 19 Lipiec 201311 l Usunięcie folderu Users\mantragora\AppData\Local\Autodesk\3dsMax trochę pomogło, ale nieznacznie. Wcześniej dla sceny około 600 plików dla jednego pliku wykonywało wybór około nawet 10 sekund, teraz 3s. O otwieraniu i zamykaniu okna AssetTracker wiedziałem. Myślę o relinkowaniu po klasach, ale tym sposobem łatwo ominąć jakiś typ plików i dużo więcej bawienia z tym. Gdzieś jest jakiś spis wszystkich klas plików by nic nie pominąć?
Napisano 19 Lipiec 201311 l Gdzies w helpie sa opisane klasy ale nie pamietam gdzie. Poza tym do pluginow musisz z dokumentacji producentow tych pluginow wysuplac co i jak. 3 sekundy to nie jest zle. Lepiej niz jechanie samemu 600 razy. Usunięcie folderu Users\mantragora\AppData\Local\Autodesk\3dsMax trochę pomogło, ale nieznacznie. Wow, tez uzywasz usera o nazwie "mantragora" ;).
Napisano 19 Lipiec 201311 l Nie no usera mam oczywiście innego :) Chyba będę musiał połączyć metody i część relinkować tak, a część tak by to przyspieszyć.
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto