Jump to content
  • Advertisement
Sign in to follow this  
rrrr

possible alternative to quaternions?

This topic is 4336 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I've been reading about quaternions as used in game programming, and was wondering how the following type of 3D hypercomplex number might work out for representing rotations: The numbers are of the form A + By + Cz There is a real-number axis, and two imaginary ones whose units are y and z. The multiplication rules are y^2 = z z^2 = -y yz or zy = -1 Multiplying by the unit y rotates any number in one direction, touching both sides of every axis, and similarly the unit -z (note the minus) rotates in the other direction. Would it be any use in games programming in 3D? [Edited by - rrrr on August 19, 2006 11:58:37 AM]

Share this post


Link to post
Share on other sites
Advertisement

z^2 = -y <=> z^3 = -yz <=> z^3 = 1 <=> z = 1 <=> y = -1


Therefore "A + By + Cz" simply diminishes to "A - B + C" and there's nothing complex about them.

Coming up with a quantity that can be used to represent 3d rotations is not a trivial task.

Share this post


Link to post
Share on other sites
Yes, I was going to say that. y and z are irreducible imaginaries, like sqrt(-1).

Share this post


Link to post
Share on other sites
Oops, of course not. I replied in a rush and forgot the other 2 roots.
Yes, it could also be -(-1)^(1/3) and (-1)^(2/3)

I just wanted to point out that numbers with that properties are not imaginary units.

Share this post


Link to post
Share on other sites
Well, we would differ on that. Assuming I am right, I would be very interested to have game developers try out these numbers and see if perhaps they might be a contender for expressing rotations.

Anyone want to give it a "whirl"?

Share this post


Link to post
Share on other sites
So what number would you use to represent a 90 degree rotation about the x-axis? The y-axis? The z-axis?

Share this post


Link to post
Share on other sites
My algebra knowledge is not that solid, but doesn't this solution (z = 1, y = -1) mean it's isomorphic to (and thus no more interesting to represent rotations in than) the real numbers?

Share this post


Link to post
Share on other sites
Quote:
Original post by SiCrane
So what number would you use to represent a 90 degree rotation about the x-axis? The y-axis? The z-axis?
Actually that's the sort of question I was hoping others more proficient in math than I am might want to tackle.

However, I'll see what I come up with. Am a bit busy at the moment though. Anyone else is welcome to try.

EDIT: Turns out to be very easy. Will post when I have time.

[Edited by - rrrr on August 19, 2006 5:56:25 PM]

Share this post


Link to post
Share on other sites
I'm willing to give it a try,

i just got my quaternion camera set up, so no biggie to try it out. If i could just get my head straight on how to implement it.

EDIT: will this be able to rotate over all 3 axes?

Greetings.

[Edited by - Limitz on August 19, 2006 8:28:00 PM]

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!