Quaternion Là Gì – Tìm Hiểu Về Quaternion Trong Unity

Quaternion Là Gì – Tìm Hiểu Về Quaternion Trong Unity

Quarternion đc dùng trong phép quay không trung. Trong phần 1 này, tôi sẽ nói về cách thức dùng sơ lược của nó trong phép quay không trung.

Bài Viết: Quaternion là gì

Những bài viết khác trong loạt bài về quaternion:

Quaternion đc định nghĩa như là một số phức có ba thành phần ảo:

*

Đừng mường tượng quaternion là một đồ gì đó bốn chiều, đầu bạn sẽ nổ tung. Những thành phần ảo

*

có thể đc coi như ba vector đơn vị của trục tọa độ x, y, z. And một quaternion có thể đc viết lại như sau:

*

Với

*

là một vector trong không trung 3 chiều, and

*

là một đại lượng vô hướng chỉ độ to (nói tóm lại là một con số). Dễ hình dung hơn rồi đúng không!

Sử dụng vào phép quay không trung của các bạn. Giả sử bạn chứa một vector trục quay

*

(vector 

*

cần là vector đơn vị, tức

*

) and góc quay

*

(dương khi quay cùng chiều với vector, theo nguyên lý nắm tay phải) thì các bạn sẽ chứa một quaternion quay như sau:

*

Ví dụ, bạn có nhu cầu tạo một phép quay một góc 120 độ (tức 2/3 pi radian) quay trục

*

. Trước tiên các bạn sẽ chuẩn hóa (normalize) vector

*

thành vector đơn vị

*

.

*

And từ đó, các bạn có quaternion được phép quay là:

*

Để triển khai phép quay, bạn cần một đồ gì đó để quay. Ví dụ tôi chứa một điểm

*

trong không trung có tọa độ

*

đc khẳng định trong không trung bởi vector

*

thì phép quay điểm

*

theo

*

đc định nghĩa là:

*

Trong đó

*

là vector tọa độ của điểm

*

sau khi xoay. And

*

là nghịch đảo của

*

. Rõ rệt trong điều kiện này:

*

Trong điều kiện này, nghịch đảo bằng lượng liên hợp do trị hoàn toàn của quaternion trong phép quay bằng 1. Nếu bạn khúc mắc tại sao có công thức biến đổi quarternion, xin xem phần sau.

Xem Ngay:  Cupboard Là Gì - Nghĩa Của Từ Cupboard

Xem Ngay: Phim Chính Kịch Là Gì, định Nghĩa Về Phim Chính Kịch

Sau đó, các bạn sẽ dùng phép nhân quartenion. Hãy ghi nhớ phép nhân quaternion không có tính giao hoán. Bạn cũng có thể nghiên giúp thêm về phép nhân quaternion tại đây. Trong blog này tôi chỉ đề cập tới kết quả của phép nhân. Cho 2 quaternion

*

and

*

thì tích

*

là:

*

Dùng công thức trên để ốp vào ví dụ của các bạn (biến đổi

*

theo

*

) and làm phép nhân rất điên cuồng (tôi khuyên bạn nên sử dụng máy vi tính), các bạn sẽ ra đc:

*

*

Hinh bên miêu tả phép quay ví dụ của các bạn. Các bạn có thể cảm thấy nếu các bạn xoay quanh trục

*

một góc 120 độ thì tọa độ

*

sẽ tráo cho nhau thành

*

. Phù hợp với kết quả của phép nhân ở phí a trên.

Xem Ngay: Cho Minh Hỏi Chữ Tiếng Anh Sở Giáo Dục And đào Tạo Tiếng Anh Là Gì

Vừa rồi tôi vừa mới ra mắt sơ lược về cách thức dùng quaternion trong phép quay. Trong phần sau, tôi sẽ nói đi sâu về phần toán, việc tối ưu hóa nó trong lập trình and so sánh với những phép biến đổi khác.

Thể Loại: Giải bày Kiến Thức Cộng Đồng

Bài Viết: Quaternion Là Gì – Tìm Hiểu Về Quaternion Trong Unity

Thể Loại: LÀ GÌ

Nguồn Blog là gì: https://hethongbokhoe.com Quaternion Là Gì – Tìm Hiểu Về Quaternion Trong Unity

Leave a Reply