MathFu
An open source project by FPL.
 All Classes Namespaces Files Functions Variables Typedefs Friends Groups Pages
glsl_mappings.h File Reference

GLSL compatible data types. More...

#include "mathfu/matrix.h"
#include "mathfu/quaternion.h"
#include "mathfu/rect.h"
#include "mathfu/vector.h"

Go to the source code of this file.

Detailed Description

GLSL compatible data types.

Namespaces

 mathfu
 Namespace for MathFu library.
 

Typedefs

typedef Vector< float, 2 > mathfu::vec2
 2-dimensional float Vector.
 
typedef Vector< float, 3 > mathfu::vec3
 3-dimensional float Vector.
 
typedef Vector< float, 4 > mathfu::vec4
 4-dimensional float Vector.
 
typedef Vector< int, 2 > mathfu::vec2i
 2-dimensional int Vector.
 
typedef Vector< int, 3 > mathfu::vec3i
 3-dimensional int Vector.
 
typedef Vector< int, 4 > mathfu::vec4i
 4-dimensional int Vector.
 
typedef Matrix< float, 2, 2 > mathfu::mat2
 2x2 float Matrix.
 
typedef Matrix< float, 3, 3 > mathfu::mat3
 3x3 float Matrix.
 
typedef Matrix< float, 4, 4 > mathfu::mat4
 3x3 float Matrix.
 
typedef VectorPacked< float, 2 > mathfu::vec2_packed
 2-dimensional float packed Vector (VectorPacked).
 
typedef VectorPacked< float, 3 > mathfu::vec3_packed
 3-dimensional float packed Vector (VectorPacked).
 
typedef VectorPacked< float, 4 > mathfu::vec4_packed
 4-dimensional float packed Vector (VectorPacked).
 
typedef VectorPacked< int, 2 > mathfu::vec2i_packed
 2-dimensional int packed Vector (VectorPacked).
 
typedef VectorPacked< int, 3 > mathfu::vec3i_packed
 3-dimensional int packed Vector (VectorPacked).
 
typedef VectorPacked< int, 4 > mathfu::vec4i_packed
 4-dimensional int packed Vector (VectorPacked).
 
typedef mathfu::Quaternion< float > mathfu::quat
 
typedef Rect< float > mathfu::rectf
 Rect composed of type float.
 
typedef Rect< double > mathfu::rectd
 Rect composed of type double.
 
typedef Rect< int > mathfu::recti
 Rect composed of type int.
 

Functions

template<class T >
Vector< T, 3 > mathfu::cross (const Vector< T, 3 > &v1, const Vector< T, 3 > &v2)
 Calculate the cross product of two 3-dimensional Vectors. More...
 
template<class TV >
TV::Scalar mathfu::dot (const TV &v1, const TV &v2)
 Calculate the dot product of two N-dimensional Vectors of any type. More...
 
template<class TV >
TV mathfu::normalize (const TV &v1)
 Normalize an N-dimensional Vector of an arbitrary type. More...