Freya Holmér
Freya Holmér

@FreyaHolmer

15 Tweets 22 reads Dec 15, 2022
I got excited about quaternion splines, and thought of a really nice way to visualize them
maybe it's time to finally learn quaternions properly
okay - first point of confusion. working with (x,y,z,w) meaning xi+yj+zk+w:
(0,0,0,1) is the identity rotation, but
(0,0,0,-1) has the same orientation
I tried rationalizing it as two rotations ending up at the same place, but, if xyz is 0 there shouldn't be rotation right?
I'm guessing this is what's meant by "double cover" that I keep seeing but not explained in a way I understand
as in, all *orientations* q are equal to -q, but not when you think of them as relative rotations
maybe it's like comparing:
180° around Y vs
-180° around -Y
quaternions really be like 1 = -1 😔
hmmm
it seems almost impossible to find a good way to explain quaternions, and the same goes for the GA variant with rotors
both of them involve lots of weird abstract shenanery that feels really arbitrary *until the very end* where the result makes sense
I feel like rotors have the advantage of being fully explainable in 3D space
but the disadvantage is that its algebra and elements like bivectors, are hard to explain. they're pretty tricky concepts. plus, it's less portable than quaternions because it's less established
Quaternions on the other hand are wayyyy more documented and written about, and I feel like they use less axioms and much less weird algebra
but the visualizations are extremely hard to wrap your head around, even well made ones like 3b1b's, because of their 4D nature
moral of the story: they're both pretty horrible
they're full of what seems like a completely arbitrary tangled mess of a system, just to arrive at a computationally efficient system for composing rotations
sure they're fast, and nice to use once they're implemented
but rotation matrices and axis-angle representations are *far* more tangible and easy to understand (they just happen to not be very efficient computationally as the sole source of rotational information)
I don't think there is a "quaternions/rotors are a better/more intuitive representation of rotation" that could ever work
it literally seems to come down to "cursed math turns out to make rotations compose very efficiently and now we have to deal with all this baggage"
I've been wanting to make a video on rotations in games, and I remain certain there's no need to explain the mathematical internals of quaternions (just how to use them)
it's interesting how the imaginary unit/complex numbers are in a similar space of weird algebra
but the distance between "here's a counterintuitive axiom" to "here's why it's useful" is *much* shorter for complex numbers than for quaternions, as a representation of rotations
yes I know how to *use* quaternions, I've been doing it for several years now, this thread is about a deeper understanding of the internal math
and yes I've seen the 3b1b videos and the marc ten bosch GA stuff since a very long time ago you can stop linking me them now, haha
anyway here are my notes on quaternions now after this little exploration, in case anyone finds it useful!
acegikmo.notion.site

Loading suggestions...