Autor Wątek: Animacje Szkieletowe - Interpolacja obrotu[Quaternion] z przesunięciem[Vector].  (Przeczytany 2153 razy)

Offline sanyol

  • Użytkownik

# Lipiec 14, 2011, 14:43:29
Witam, nadal siedzę nad animacjami szkieletowymi i napotkałem problem który męcze już od wczoraj. Mianowicie chodzi o to, że mam dla klatki animacji quaternion obrotu oraz vector przesunięcia kości. Chcąc interpolować pomiędzy dwoma klatkami szkielet mi się rozjeżdża [ dla uproszczenia 2 kosci jedna przypięta do drugiej].

Co ciekawe interpolacja działa w ten sposób że kości z dobrego ułożenia w klatce "a" rozjeżdżają sie na drodze do klatki "b" plynnie podążając do poprawnego położenia, aż gdy osiągną klatkę "b"gdzie osiągną poprawne położenie.

Szukałem szukałem i znaleść nie potrafie. Teoretycznie kości powinny zachować strukture. Jedyne co mi przychodzi do głowy to 2 różne metody interpolacji: SLERP dla quaterniona i LERP dla vectora.

Z góry dzięki za opinie

- ide myśleć dalej ;p

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline radsun

  • Użytkownik
    • CaRpg

# Lipiec 14, 2011, 16:12:54
Ja używam właśnie Slerp dla kwaterniona i Lerp dla wektora, działa tak jak powinno.

Offline Avaj

  • Użytkownik

# Lipiec 14, 2011, 16:15:20
jaki sens ma zmiana położenia kości? imho w szkieletowej kości się tylko obracają, nie ma przesunięć?

Offline rm-f

  • Użytkownik
    • Tu trolluje

# Lipiec 14, 2011, 16:24:48
jaki sens ma zmiana położenia kości? imho w szkieletowej kości się tylko obracają, nie ma przesunięć?
By animować elementy mechaniczne jak np. zamek w kałaszu lub wymianę magazynka?

Offline Dab

  • Redaktor
    • blog

# Lipiec 14, 2011, 17:34:38
Może w złej kolejności dokonujesz przekształceń?

Offline sanyol

  • Użytkownik

# Lipiec 14, 2011, 18:59:07
w nocy bede kombinowac jeszcze. Skoro

Cytuj
Ja używam właśnie Slerp dla kwaterniona i Lerp dla wektora, działa tak jak powinno.

to znaczy, że ja coś skopałem.

Co do samego przesunięcia kości to wydaje mi się że jest to jedyny sposób żeby zasymulować np. kucnięcie, skok czy jakieś inne podobne akcje - możliwe że robi się to inaczej - jak tak to posłucham.

Wieczorem usiade - jak uda mi sie rozwiązać to napisze o co chodzi

Offline rm-f

  • Użytkownik
    • Tu trolluje

# Lipiec 14, 2011, 19:24:07
@saynol  akurat kucanie i skok to tylko same obroty.

Offline sanyol

  • Użytkownik

# Lipiec 14, 2011, 19:46:01
wsumie faktycznie - kurde zapedziłem sie z tym przesunięciem i stąd chyba problem o którym jest ten temat.

Offline radsun

  • Użytkownik
    • CaRpg

# Lipiec 15, 2011, 09:37:09
@saynol  akurat kucanie i skok to tylko same obroty.
U mnie akurat jakbym nie zmieniał pozycji chociażby głównej kości to by lewitował nad ziemią podczas upadania, siadania. Pewnie można to zrobić inaczej, tylko po co?

Offline sanyol

  • Użytkownik

# Lipiec 15, 2011, 17:54:10
Dokładnie o tym samym myślałem. 

Co do przekombinowania to przekombinowałem bo chce ustawiać też model przez przesówanie jointów a nie tylko obrotu kości i to przesuwanie zaśmieciło mi myślenie, bo każda kość miała swoje własne przesunięcie. Teraz jednak przeprojektowywuje tak, że pojedyncze kości nie będą miały swoich przesunięć ale cały model bedzie mozna przesunąć żeby usiadł na ziemi -> wszystkie kości będą miały to samo przesunięcie.

No, mam nadzieje że w weekend już skończe ten system :)

Offline rm-f

  • Użytkownik
    • Tu trolluje

# Lipiec 15, 2011, 21:17:21
U mnie akurat jakbym nie zmieniał pozycji chociażby głównej kości to by lewitował nad ziemią podczas upadania, siadania.
Ja mam troszkę inne koncept co do głównej kości (a raczej jego jako takiego braku), więc nie mam takiego problemu.