Game Development Reference
In-Depth Information
Euler angles use the smallest possible representation. Euler angles use
three numbers to describe an orientation. No system can parameterize
3D orientation using fewer than three numbers. If memory is at a
premium, then Euler angles are the most economical way to represent
an orientation.
Another reason to choose Euler angles when you need to save space
is that the numbers you are storing are more easily compressed. It's
relatively easy to pack Euler angles into a smaller number of bits
using a trivial fixed-precision system. Because Euler angles are an-
gles, the data loss due to quantization is spread evenly. Matrices
and quaternions require using very small numbers, because the val-
ues stored are sines and cosines of the angles. The absolute numeric
difference between two values is not proportionate to the perceived
difference, however, as it is with Euler angles. In general, matrices
and quaternions don't pack into a fixed-point system easily.
Bottom line: if you need to store a lot of 3D rotational data in as little
memory as possible, as is very common when handling animation
data, Euler angles (or the exponential map format—to be discussed
in Section 8.4) are the best choices.
Any set of three numbers is valid. If we take any three numbers at
random, they form a valid set of Euler angles that we can interpret
as an expression of an orientation. In other words, there is no such
thing as an invalid set of Euler angles. Of course, the numbers may
not be correct but at least they are valid. This is not the case with
matrices and quaternions.
8.3.4 Disadvantages of Euler Angles
This section discusses some disadvantages of the Euler angle method of
representing orientation; primarily,
The representation for a given orientation is not unique.
Interpolating between two orientations is problematic.
Let's address these points in detail. First, we have the problem that for
a given orientation, there are many different Euler angle triples that can
be used to describe that orientation. This is known as aliasing and can be
somewhat of an inconvenience. These irritating problems are very similar
to those we met dealing with spherical coordinates in Section 7.3.4. Basic
questions such as “Do two Euler angle triples represent the same angular
displacement?” are di cult to answer due to aliasing.
 
Search WWH ::




Custom Search