Ka21k Napisano 23 Lipiec 2004 Napisano 23 Lipiec 2004 OK. Mam taki problem. Juz od dawna borykam sie z problemem zanimowania (zrigowania???) gasienicy czolgu. Zrobilem gasienice na podstawie tutoriala http://home.wanadoo.nl/svenvanzoelen/tuorial_tank_tracks.htm , ale chcialbym aby gasienica obracala sie (poruszala po sciezce) uzalezniona od ruchu innego przedmiotu (w moim wypadku korpusu). W mojej scenie testowej zrobilem tylko 40 ogniw zamiast 80 w tutorialu. Jak na razie zrobilem tak: Stworzylem gasienice i boxa imitujacego moj korpus. podpiolem gasienice do boxa za pomoca Select and Link. Dla boxa stworzylem w Wire Parameters-Transform-Position-Y_Position i wskazalem na gasienice z parametrem Modified Object-PathDeform-Percent Along Path. Dla gasienicy wpisalem "-Y_Position/685". Przy takich "parametrach" gasienica na dole (tam gdzie lezy na ziemi) powinna byc nieruchoma podczas przejazdu a na gorze pownna sie poruszac dwa razy szybciej ale nie jest to jeszcze 100% oczekiwanego efektu. Pytanie: Od czego zalezy w Wire Parameter to z jaka szybkoscia bedzie sie poruszac gasienica i jak to ustawic aby ruch wygladal jak najbardziej zblizony do oryginalu (ale zamieszalem).?? Jaka wartosc wpisac zamiast 685 i od czego ona zalezy? Jesli jest to powiazane z dlugoscia sciezki dla PathDeform to jak zmierzyc dlugosc tej sciezki?? Byc moze ktos ma inne rozwiazanie tego problemu bez uzywania PathDeform? Dolaczam screena z Perspectiva: http://republika.pl/ka21k3d/gasienica.gif Jak ktos mialby chwilke to bardzo prosze o pomoc. Pozdrawiam.
Ka21k Napisano 25 Lipiec 2004 Autor Napisano 25 Lipiec 2004 Czy tu nikt nie zaglada czy problem jest za trudny do rozwiazania, a moze zbyt blachy zeby sie nim zajac? POMOCY!!!!
VGT Napisano 25 Lipiec 2004 Napisano 25 Lipiec 2004 Jak na razie zrobilem tak: Stworzylem gasienice i boxa imitujacego moj korpus. podpiolem gasienice do boxa za pomoca Select and Link. Dla boxa stworzylem w Wire Parameters-Transform-Position-Y_Position i wskazalem na gasienice z parametrem Modified Object-PathDeform-Percent Along Path. Dla gasienicy wpisalem "-Y_Position/685". Przy takich "parametrach" gasienica na dole (tam gdzie lezy na ziemi) powinna byc nieruchoma podczas przejazdu a na gorze pownna sie poruszac dwa razy szybciej ale nie jest to jeszcze 100% oczekiwanego efektu. Czyli zrobiłeś wszystko prawidłowo, nie masz tego, czego oczekujesz? Więc czego oczekujesz? Od czego zalezy w Wire Parameter to z jaka szybkoscia bedzie sie poruszac gasienica i jak to ustawic aby ruch wygladal jak najbardziej zblizony do oryginalu (ale zamieszalem).?? Jaka wartosc wpisac zamiast 685 i od czego ona zalezy? Jeżeli chcę aby Box A poruszał się dwa razy szybciej od B, wpisuję: Y_Position * 2, jeżeli 3 razy: Y_Position *3 Jeżeli w Twoim przypadku gąsienica obraca się za szybko lub za wolno, zmieniaj po prostu tą wartość do momentu, aż znajdziesz odpowiednią. Rozważając to teoretycznie: Jeżeli w jednostkach, jakie masz w danej scenie, znasz długość rozłożonej gąsienicy (czyli przed modyfikatorem pathdeform), to musisz w wire parameteres ustawić taką proporcję, aby po przesunięciu korpusu o długość gąsienicy wartość percent w modyfikatorze zwiększyła się o 100. Teraz ja zakręciłem, ale to chyba ma sens.
Ka21k Napisano 26 Lipiec 2004 Autor Napisano 26 Lipiec 2004 Dzieki VGT za zainteresowanie. Wielogodzinne zmagania z ta scena pozwolily mi na opracowanie wzoru z ktorego wynika skad bierze sie ta liczba do wpisania w Wire Parameter - Modified Object-PathDeform-Percent Along Path dla gasienicy (mysle ze wiadomo o co chodzi) VGT: Masz racje. Przesuniecie korpusu o dlugosc gasienicy w rozwinieciu pownno zwiekszyc wartosc percent w modyfikatorze o 100%. Oto wzor: - Y_Position / [((DlugoscGasienicy / 100) x IloscOgniw) - SzerokoscZazebienia) W mojej scenie : Dlugosc gasienicy = 1739,342 cm Ilosc ogniw = 40 SzerokoscZazebienia = 11,744 cm Podstawiajac do wzoru wychodzi = 683,9928 Zaokraglilem to do pelnej liczby w gore i wyszlo 684. Teraz wpisujac zalerznosc dla gasienicy "-Y_Position/684" Gasienica zachowuje sie tak jak powinna. :D Minus przed Y_Position okresla w ktora strone bedzie sie obracac gasienica podczas ruchu korpusu. Mysle ze taki wzor jest uniwersalny i bedzie dzialal dla wszystkich gasienic. W ten "prosty" sposob udalo mi sie poprawnie zrigowac gasienice w moim modelu. Oczywiscie jest to tylko rozwiazanie dla poruszajacego sie korpusu po jednej osi. Zamieszczam jeszcze rys. pogladowy na ustawienia w Wire Parameter jesli ktos chcialby to jakos wykozystac dla swoich celow. http://republika.pl/ka21k3d/wire1.gif Wiec problem wlasciwie rozwiazal sie sam. Pozdrawiam.
Ka21k Napisano 26 Lipiec 2004 Autor Napisano 26 Lipiec 2004 Kolejne kilka godzin spedzone nad zastosowaniem powyzszego wzoru w innych scenach zmusza mnie do zmiany zdania na ten temat. Niestety moj wzor nie sprawdza sie w zadnej innej scenie. Niewiem dlaczego tak sie akurat dzieje. Probowalem z inna iloscia ogniw, inna sciezka itp. jednak za kazdym razem odpowiedz byla tylko jedna. Liczba do wpisania w Wire Parameter - Modified Object-PathDeform-Percent Along Path dla gasienicy to nic innego jak jej dlugosc w rozwinieciu. Jednak w pierwszej scenie to nie dzialalo i nie wiem dlaczego. Kolejne proby utwierdzily mnie w przekonaniu ze jednak ostatecznie trzeba podzielic Y_Position korpusu przez dlugosc gasienicy i tylko w ten sposob uzyskuje sie w miare realny ruch ogniw po sciezce. Trzeba bylo spedzic caly dzien tylko po to zeby dowiedziec sie tego co jest przeciez czywiste :D Pozostaje tylko niesmak z powodu deformacji (rozciaganie) ogniw w momencie zawijania, ale tego juz nie da sie chyba ominac tym sposobem. Jak zwykle pozdrawiam wszystkich czytajacych te dyrdymaly i zycze udanych animacji. :D
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ę