You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Notice how the comparison of the scalar values uses this fabsf(left.w - left.w) instead of this fabsf(left.w - right.w) and it also uses this fabsf(left.w + left.w) instead of this fabsf(left.w + right.w)
I believe the return value should be this: return normalized(start * ((inverse(start) * end) ^ t));
Notice how I multiply start from the left instead of from the right. That's necessary because of the way the quaternion product function is implemented.
Again, thank you for this book! 😃
The text was updated successfully, but these errors were encountered:
Hi Gabor! First I wanted to say that I loved your book. Thank you for sharing your knowledge on the topic of animation!
And second I wanted to point out some small bugs related to the quaternion class:
operator==
function:Notice how the comparison of the scalar values uses this
fabsf(left.w - left.w)
instead of thisfabsf(left.w - right.w)
sameOrientation
function:Notice how the comparison of the scalar values uses this
fabsf(left.w - left.w)
instead of thisfabsf(left.w - right.w)
and it also uses thisfabsf(left.w + left.w)
instead of thisfabsf(left.w + right.w)
slerp
function:I believe the return value should be this:
return normalized(start * ((inverse(start) * end) ^ t));
Notice how I multiply
start
from the left instead of from the right. That's necessary because of the way the quaternion product function is implemented.Again, thank you for this book! 😃
The text was updated successfully, but these errors were encountered: