Jak uzyskać „standardowe” obroty z three.js podczas używania czwartorzędów?

Nowi uczestnicy stackoverflow, początkujący programista 3D i daleki od kreatora matematyki ... więc postaram się sformułować to pytanie tak jasno, jak tylko mogę, mając nadzieję, że ma to sens i liczę na odpowiedź, która nie jest milą nad moją głową.

Napisałem bardzo fajną aplikację przy użyciu three.js, która pozwala użytkownikowi latać w przestrzeni 3D i badać układ słoneczny. Model lotu jest luźno oparty na przykładzie / rozszerzeniu Fly.Controller w pakiecie three.js, który nauczył mnie używać czwartorzędów, aby utrzymać wszystkie obroty osi rozsądne względem siebie. Część latająca działa świetnie.

Oto mój dylemat: jak używać czwartorzędów, jak wywnioskować „normalne” (nie wiem, jak to nazwać) wartości obrotu, aby określić, w jakim kierunku zmierzam? Podczas używania czwartorzędów struktura „obrotu” wewnątrz obiektu kamery pozostaje na poziomie 0,0,0. Tak więc, podczas gdy mogę swobodnie latać w przestrzeni pod dowolnym kątem, nie wiem, jak określić, w jakim kierunku faktycznie się znajduję. Czy istnieje wbudowana funkcja three.js lub inny łatwy sposób jej przekonwertowania?

Znalazłem kilka podobnych, mylących wskaźników w sieci, ale nic, co mogę odszyfrować i użyć do użycia w three.js. Dzięki.

questionAnswers(2)

yourAnswerToTheQuestion