I really like how you've articulated your entire process. This was a very enriching read. A Well deserved feature!
Great article! Thanks for the awesome read.
Wow, this is so cool! Nice job!
Marc ten Bosch has recently shared his interactive introduction to rotors from geometric algebra. Let’s study it to learn something new.
When representing 3D rotations graphics programmers use quaternions, but they are quite hard to understand as they are taught at face value. “We sort of just accept their odd multiplication tables and other arcane definitions and use them as black boxes that rotate vectors in the ways we want. Why does i2=j2=k2=−1i2=j2=k2=−1 and ij=kij=k? Why do we take a vector and upgrade it to an “imaginary” vector in order to transform it, like q(xi+yj+zk)q∗q(xi+yj+zk)q∗? Who cares as long as it rotates my vectors the right way,” pointed out the author.
Marc ten Bosch states that there’s actually a better way that is called a rotor that is said to subsume both complex numbers (in 2D) and quaternions (in 3D) and generalize to any number of dimensions. They take some time to deal with, but the thing is that they are much easier to understand.
Plus, they do not require the use of the fourth dimension of space in order to be visualized and understood. Are you interested? The author states that this change is simple and the code remains almost the same. What is more, things like Interpolation and avoiding Gimbal lock are possible with a Rotor too. Yeah, the concept might sound quite complex, but it is worth it. Make sure to read the full article here.