3r3se7ven Opublikowano 31 Sierpnia 2015 Udostępnij Opublikowano 31 Sierpnia 2015 Mam w stacku zestaw transformacji add. Obróć, obróć, przesuń, obróć, i tak dalej. Na końcu obiekt gdzieś tam jest rysowany gdzie chciałem w tym forward kinematic. A jak zwrócić z tego wyliczenia xyz gdzie to zostało narysowane w d3d world matrix? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kt1117 Opublikowano 31 Sierpnia 2015 Udostępnij Opublikowano 31 Sierpnia 2015 Proponowałbym mnożenie macierzy zaimplementować. Na wiki powinieneś znaleźć jak wygląda macierz translacji, skalowania i rotacji. Potem robisz skalowanie*rotacja*translacja. A na końcu mnożysz przez wektor początkowy i powinieneś otrzymać w wektorze końcowym wyniki. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
3r3se7ven Opublikowano 1 Września 2015 Autor Udostępnij Opublikowano 1 Września 2015 Proponowałbym mnożenie macierzy zaimplementować. Na wiki powinieneś znaleźć jak wygląda macierz translacji, skalowania i rotacji. Potem robisz skalowanie*rotacja*translacja. A na końcu mnożysz przez wektor początkowy i powinieneś otrzymać w wektorze końcowym wyniki. To tak zrobiłem, tylko że jest to ciężkie, jedzie po trygonometrii i zamula bo GMs nie bardzo nadaje się na matlab :) Generalnie to co robią macierze na d3d zdublowane w kodzie zamienia wyświetlanie w kolekcję pocztówek. A ten wynik tam jest w d3d, trzeba go tylko wyciągnąć z matrycy którą sobie d3d buduje zanim go przemnoży przez matrycę kamery. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kt1117 Opublikowano 1 Września 2015 Udostępnij Opublikowano 1 Września 2015 Macierz kamery powinna być chyba łatwa do wyliczenia, jeżeli jest nieosobliwa to podzielisz przez nią. Ale podejrzewam że nie zawsze tak będzie więc to może być trudne. Ewentualnie spróbuj napisać DLL do tego. Co prawda dalej będziesz wykonywał te obliczenia 2 razy, ale w C++ powinno szybciej działać, Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
3r3se7ven Opublikowano 1 Września 2015 Autor Udostępnij Opublikowano 1 Września 2015 Macierz kamery powinna być chyba łatwa do wyliczenia, jeżeli jest nieosobliwa to podzielisz przez nią. Ale podejrzewam że nie zawsze tak będzie więc to może być trudne. Ewentualnie spróbuj napisać DLL do tego. Co prawda dalej będziesz wykonywał te obliczenia 2 razy, ale w C++ powinno szybciej działać, No to właśnie mnie boli., że jak mam sobie biblioteki robić i uruchamiać, to na co mi gms :) Macierz kamery można załadować, ale to są dane do mnożenia world matrix. Kaszan straszny. Zrobiłem to na mnożeniu xrotationM * yrotationM * ... translationxyzM tyle że... Pivot tyłka przez pivot postaci, pivot korpusu przez pivot tyłka pivot postaci, pivot barku przez... pivot ręki czy miecza to brazylijska telenowela o trygonometrii :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
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ę