BooM-Bel Napisano 19 Maj 2004 Napisano 19 Maj 2004 Jakiś czas temu napisałem sobie skrypcik dzięki ktormu nie musiałem siedzieć całą noc i włączać render z kolejnej kamery. Teraz chciałem troszkę ten skrypcik zmniejszyć objętościowo i zamiast powtarzających się komend dla każdej kamery, zrobić jednąpętlę. Niestety nie mogę ustawić widoku kamery w ViewPorcie. W czasie wykonywania scryptu wywala mi błąd, że niemoże wybranego obiektu zamienić na . Niżej podaje fragmęt scryptu, przepuszczam że przyczyną problemów może być w sposobie selekcji, ale jak do tej pory nie znalazłem właściwego. c = cameras.count for i = 1 to c do ( Viewport.setCamera (\"Camera0\" + char) )
dr Ug Napisano 19 Maj 2004 Napisano 19 Maj 2004 Tak troche OT: nie mozesz ustawic kolejki w Video Post i stamtad renderowac? :)
BooM-Bel Napisano 19 Maj 2004 Autor Napisano 19 Maj 2004 Mógłbym. Ale po co jeszcze bawić się w ustawianie kolejki w Video Post kiedy moge zreobić to jedym kliknięciem?
lechoo Napisano 19 Maj 2004 Napisano 19 Maj 2004 Niepotrzebnie odwolujesz sie do kamer przez nazwe, przeciez wszystkie sa w tablicy cameras. Wystarczy podac numer elementu. for i = 1 to cameras.count do ( Viewport.setCamera cameras )
BooM-Bel Napisano 21 Maj 2004 Autor Napisano 21 Maj 2004 No i zadziałało. Dzięki Lechoo. Poniżej przedstawiam mój scrypcik. c = cameras.count for i = 1 to c do ( Viewport.setCamera cameras cam = cameras b = BitMap 160 120 filename:(\"D:\\\\RenderFiles\\\\Render_\" + cam.name as string + \".bmp\") render 160 120 camera:cam to:b save b ) Dalej będe w nim dłubał. Chce dożucić mu ustawianie wielkości obrazka, format zapisu, ścieżke itp. Jakby ktoś miał jakieś pomysły co tu jeszcze wrzucić to chętnie posłucham.
BooM-Bel Napisano 7 Czerwiec 2004 Autor Napisano 7 Czerwiec 2004 No i znowu utkęłem w martwym punkcie. W tablicy kameras umieszczane są też \"Camera.target\" i z tej pozycji jest render oczywiście nikomu do niczego nie potrzebny. Nie bardzo wiem jak pominąć render z tego widoku. Odwoływanie się do nich po imieniu mija się z celem. Prubowałem to zrobić za pomocą .type ale to też mi nie wypalilo. Wywala mi błąd typu : Unknown property: \"type\" in $Target:Camera01.Target . Mój główny problem to przedewszystkim to jak sprawdzić czy dany element tablicy cameras jest obiektem TargetCamera.
lechoo Napisano 8 Czerwiec 2004 Napisano 8 Czerwiec 2004 Tak chyba bedzie najprosciej if (classOf cameras == Targetcamera or classOf cameras == Freecamera) then... renderujesz else... nie renderujesz Mozesz tez sprawdzac czy dany obiekt jest targetem. if (classof selection[1] == Targetobject) then... else...
BooM-Bel Napisano 26 Czerwiec 2004 Autor Napisano 26 Czerwiec 2004 Korzystając z chwilki czasu uaktalniłem skrypcik. Może to nie wiele ale powoli zaczyna byc użyteczny. rollout kamera \"Kamera\" ( group\"Rozmiar obrazka\" ( spinner so \"szerokosc\" range:[8,4098,160] scale:1 pos:[40,24] width:80 spinner wo \"wysokosc \" range:[8,4098,120] scale:1 pos:[160,24] width:80 ) group \"lokaliozacja i nazwa renderów\" ( edittext edt1 \"lokalizacja\" text:\"D:/rendery/\" edittext edt2 \"nazwa \" text:\"obrazek\" ) button rnd \"Render\" on rnd pressed do ( nr = 0 c = cameras.count wob = wo.value sob = so.value for i = 1 to c do ( cam = cameras[ i] if classOf cam != Targetobject do ( nr += 1 Viewport.setCamera cam b = BitMap sob wob filename:(edt1.text + edt2.text + nr as string + \".bmp\") render camera:cam to:b save b ) ) ) ) rollfloater = newRolloutFloater \"\" 300 175 addrollout kamera Rollfloater
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ę