gamemath contains a collection of mathematical functions useful for games and other applications. Included modules: BezierCurve: Some simple functions for working with floating point bezier curves. Intended for graphical effects; not recommended for precise calculations or performance critical code. FixedPoint: Fractional numbers using scalar integer representation. Useful for cross-platform numeric consistency and uniform precision density. IntegerFraction: Fractional numbers using a numerator/denominator pair. Supports only positive numbers and basic arithmetic. Useful for precisely representing non-power-of 2 fractions for small numbers. Interpolation: Floating point values animated over arbitrary curve functions. Intended for graphical effects; not recommended for precise calculations or performance critical code. Matrix: Arbitrary 4x4 transformations. For information on matrices: http://ludobloom.com/tutorials/matrix.html MouseCoordinateTransforms: Specialty functions for converting between different representations of mouse positions. Functions take inputs of mouse coordinates as specified to Shell mouse event callbacks, and output coordinates for commonly used orthographic OpenGL projections. MoveInput: A data structure and functions for working with user inputs for moving in axial directions. Information is encoded in a bitfield, and can be queried in ways that support precision movement control. ParameterSpline: Arbitrary curve functions controlled by a series of bezier curves. Can be used with Interpolation, or on their own. Scalar: Various utility macros and functions for working with floating point numbers. Quaternion: 3D orientations. For information on quaternions: http://ludobloom.com/tutorials/quaternion.html Rect/Box: 2D or 3D axis aligned boundaries. All permutations of int/float/double/fixed are included, with the relevant functions autogenerated for each. Vector: Spatial positions or directions. All permutations of 2/3/4 component and int/float/double/fixed are included, with the relevant functions autogenerated for each. For information on vectors: http://ludobloom.com/tutorials/vector.html