Most helpful customer reviews on Amazon. Verified Purchase. If you know nothing about quaternions, and want to get a feel for how they work and what they can be used for, this book is perfect for you. This book is also perfect e. I'm not currently doing any coding that requires it, but I am confident that I could code up quaternion rotations without much trouble should the need arise.

## Quaternion

In fact, that is the purpose of this book more or less, to teach you to be able to do just that. Those that are looking for a mathematically rigorous development of quaternions should look elsewhere. However, even for the more mathematically inclined like I consider myself to be , since there are no difficult proofs to follow, the book can be read blazingly fast just a few hours. If you are mathematically knowledgeable but have no real knowledge of quaternions they aren't covered in any regular courses at my university, for example , this little book it is quite slim!

Some of the stuff covered in the book for the sake of completeness is extremely elementary, so if you are already familiar with these things e. I give this book 5 stars for being the perfect book to get any mathematically adept person up to speed on the somewhat obscure mathematical entities called "quaternions"; if you are additionally a programmer, the book will also prepare you to write code to rotate arbitrary vectors using quaternions. The book also contains a marvelous discussion of complex numbers and their rotational properties, which naturally sets the stage for quaternions and their own rotational properties.

Note that in order to read this book you should at least be familiar with basic vector operations mainly dot product and cross product; Calculus 3 is more than enough , as well as very basic linear algebra i. Very clean, clear introduction. His use of the modern ordered-pair s, v notation makes understanding the derivations very easy.

Anybody coming into this book with a reasonable grasp of vector algebra will leave with a clear understanding of quaternions in a short time. But the reader can prove this as an exercise using the material on pg. Foremost the best buy on quaternions: crystal clear elaborations in a consistent notation. Fuzzy myths like 'gimbal lock' finally defined. Light volume, but as CF Gauss annotated his publications "pauca sed matura". This is a great book on quaternions. Its a superb introduction and an easy read that takes you from the very basics of complex numbers to rotation matrices. Its a pretty short read if you already have some experience with complex numbers and rotation matrices, but I think it should be very accessible if you have little experience with either.

It is well written, the language keeps a good flow and it is a pleasure to read. As a bonus, the author puts quaternions into a historical context with just the right amount of added information. Its neither too much or too little history. I would like to see a couple more illustrations throughout the book, but the most important examples are well illustrated.

- Quaternions for Computer Graphics - PDF Free Download!
- Poodle Training Secrets!
- Home For Christmas?
- Want to add to the discussion??
- Customers who bought this item also bought.

Go to Amazon. Unlimited One-Day Delivery and more. There's a problem loading this menu at the moment. Learn more about Amazon Prime. Back to top. Get to Know Us. See Complete Table of Contents. Amazon Music Stream millions of songs. Audible Download Audiobooks. DPReview Digital Photography. So a 3D dot product is not usually an instruction, it is a multiply and two multiply-adds.

Additionally, counting primitive operations like multiply-add, transforming a vector by a quaternion is more expensive than transforming a vector by a matrix. Transforming a vector by a 3x3 matrix is 3 multiplies and 6 multiply-adds, and transforming a vector by a quaternion is two quaternion multiplies, each of which consist of 4 multiplies and 12 multiply-adds.

## ELI5: quaternions from the perspective of computer science. : explainlikeimfive

However, performance is not always determined simply by counting the number of ALU operations it performs. This is often important in animation which is conveniently also often where the nice interpolation properties of quaternions show up. A lot of information here I shamelessly borrowed from joojaa's and ratchet freak's answers, with some notes of my own.

If Quaternions are still mystical voodoo to you, try this web series on them. Matrices offer more possible transforms than quaternions, it is possible to skew, mirror and non uniformly scale the matrix. There is nothing that states you can not make your engine do just quaternion based transforms, if you have no need for the additional transform features.

Matrices are just very convenient when you need to build spaces where you know the basis vectors.

## Follow the Author

Such as when doing projections into orthographic. Also doing perspective transform in a matrix space is easy. Matrices are superior when it comes to projecting stuff. In a way matrices are usually used because they represent the most common denomination and aren't too complicated to master and understand.

The benefits of standardization far outweighs the benefit you get form a custom workflow.

- Welcome to Reddit,;
- The Patient?
- WAS JUSTICE SERVED? - For the Brutal Murder of Former TIME Magazine Writer/Report Julie R. Grace?

Its well known how to do the matrix operations. Whereas quats are not something most get immediate introduction to in uni. Just ask around how many know how to invert a quaternion, whereas you dont find many students in higher education who dont know how to invert a matrix. A quaternion can only represent uniform scaling and rotation so if you need anything else you would need to add something to represent that.

- Quaternion Advantages?
- Rage of the Innocent.
- Father and Son At War.
- Rethinking Quaternions;
- Review of Complex Numbers.
- Quaternions for Computer Graphics | John Vince | Springer.

Translation can be done with a single additional vec3 or using dual quaternions. However non-uniform scaling and sheering is represented better by a mat4.

### Helping you build your dream game engine

Projection transforms essentially non-uniform scaling and swapping z and w cannot be represented by a quaternion. Quaternions have a major advantage when interpolating. The slerp is most easily calculated using quaternions. Applying a quaternion or dual quaternion is not built into the GPU so you would need to implement that using the vector operations. Most quaternion libraries assume that you won't be using the quaternion to represent scale so that's something to look out for.