Penafian: Saya seorang programmer game profesional, dan menggunakan angka empat kali hampir setiap hari, tetapi mereka mendekati ilmu hitam. Saya relatif di rumah dengan matematika tetapi angka imajiner selalu membingungkan saya. Saya cenderung memperlakukan quats sebagai berguna dan akhirnya membalikkan perkalian lebih dari sekali. Saya mencoba untuk beralasan tentang mereka seperti saya lakukan dengan matriks dengan keberhasilan terbatas.
Bagaimanapun....
Yang membuat saya bingung, adalah sebagai berikut. Ketika saya ingin memutar objek di sekitar itu poros lokal saya kalikan rotasinya dengan angka empat yang mewakili rotasi yang ingin saya terapkan. Oleh karena itu, ini adalah rotasi di ruang lokal.
Sekarang jika saya ingin memutarnya di sekitar poros di ruang dunia, alasan saya adalah: Ambil rotasi di ruang dunia sebagai angka empat. Lipat gandakan rotasi objek saya dengan angka empat ini. Ini akan membawa rotasi dunia saya di ruang lokal. Lipat gandakan rotasi saya dengan angka empat baru ini. yaitu: newRot = oldRot * (invers oldRot * worldRot)
Namun, yang perlu saya lakukan adalah newRot = oldRot * (inverse oldRot * worldRot) * oldRot.
Mengapa saya, setelah mengalikan dengan quat terbalik masih perlu mengalikan dengan quat saya sendiri sebelum menerapkannya? Saya tahu pasti ada alasan yang sah dan sempurna, tetapi saya tidak bisa mencari jalan keluar darinya dan itu membuat saya frustrasi. Saya mencoba berbagai faqs dan yang lainnya, tetapi sebagian besar masuk ke dalam matematika, membuatnya kurang jelas bagi saya.
Adakah yang bisa menjelaskan hal ini kepada saya seperti saya berusia 5 tahun?
I try to reason about them like I would with matrices
- maka Anda berada di jalur yang benar. Jika Anda memahami cara memutar sumbu objek dan sumbu dunia menggunakan matriks, Anda dapat melakukan hal yang sama menggunakan angka empat. Urutan perkalian adalah sama untuk keduanya, matriks dan angka empat.