SimpleMath.h wraps the DirectXMath SIMD vector/matrix math API
with an easier to use C++ interface. It provides the following
types, with similar names, methods, and operator overloads to
the XNA Game Studio math API:   • Vector2   • Vector3   •
Vector4   • Matrix   • Quaternion   • Plane   • Ray   • Color
To use:      #include "SimpleMath.h"      using namespace
DirectX::SimpleMath;  Why wrap DirectXMath?  DirectXMath
provides highly optimized vector and matrix math functions,
which take advantage of SSE SIMD intrinsics when compiled for
x86/x64, or the ARM NEON instruction set when compiled for an
ARM platform such as Windows RT or Windows Phone. The downside
of being designed for efficient SIMD usage is that DirectXMath
can be somewhat complicated to work with. Developers must be
aware of correct type usage (understanding the difference
between SIMD register types such as XMVECTOR vs. memory storage
types such as XMFLOAT4), must take care to maintain correct
alignment for SIMD heap allocations, and must c