- Main Page
- Modules
- Namespaces
- Classes
- Files

Typedefs
Precision types
GLM Core

Non-GLSL types that are used to define precision-based types. More...

## Typedefs
typedef highp_float_t | highp_float
typedef detail::highp_int_t | highp_int
typedef detail::tvec2< highp_int > | highp_ivec2
typedef detail::tvec3< highp_int > | highp_ivec3
typedef detail::tvec4< highp_int > | highp_ivec4
typedef detail::tmat2x2 < highp_float > | highp_mat2
typedef detail::tmat2x2 < highp_float > | highp_mat2x2
typedef detail::tmat2x3 < highp_float > | highp_mat2x3
typedef detail::tmat3x3 < highp_float > | highp_mat3
typedef detail::tmat3x3 < highp_float > | highp_mat3x3
typedef detail::tmat4x4 < highp_float > | highp_mat4
typedef detail::tmat4x2 < highp_float > | highp_mat4x2
typedef detail::tmat4x3 < highp_float > | highp_mat4x3
typedef detail::tmat4x4 < highp_float > | highp_mat4x4
typedef detail::highp_uint_t | highp_uint
typedef detail::tvec2< highp_uint > | highp_uvec2
typedef detail::tvec3< highp_uint > | highp_uvec3
typedef detail::tvec4< highp_uint > | highp_uvec4
typedef detail::tvec2 < highp_float > | highp_vec2
typedef detail::tvec3 < highp_float > | highp_vec3
typedef detail::tvec4 < highp_float > | highp_vec4
typedef lowp_float_t | lowp_float
typedef detail::lowp_int_t | lowp_int
typedef detail::tvec2< lowp_int > | lowp_ivec2
typedef detail::tvec3< lowp_int > | lowp_ivec3
typedef detail::tvec4< lowp_int > | lowp_ivec4
typedef detail::tmat2x2 < lowp_float > | lowp_mat2
typedef detail::tmat2x2 < lowp_float > | lowp_mat2x2
typedef detail::tmat2x3 < lowp_float > | lowp_mat2x3
typedef detail::tmat3x3 < lowp_float > | lowp_mat3
typedef detail::tmat3x3 < lowp_float > | lowp_mat3x3
typedef detail::tmat4x4 < lowp_float > | lowp_mat4
typedef detail::tmat4x2 < lowp_float > | lowp_mat4x2
typedef detail::tmat4x3 < lowp_float > | lowp_mat4x3
typedef detail::tmat4x4 < lowp_float > | lowp_mat4x4
typedef detail::lowp_uint_t | lowp_uint
typedef detail::tvec2< lowp_uint > | lowp_uvec2
typedef detail::tvec3< lowp_uint > | lowp_uvec3
typedef detail::tvec4< lowp_uint > | lowp_uvec4
typedef detail::tvec2< lowp_float > | lowp_vec2
typedef detail::tvec3< lowp_float > | lowp_vec3
typedef detail::tvec4< lowp_float > | lowp_vec4
typedef mediump_float_t | mediump_float
typedef detail::mediump_int_t | mediump_int
typedef detail::tvec2 < mediump_int > | mediump_ivec2
typedef detail::tvec3 < mediump_int > | mediump_ivec3
typedef detail::tvec4 < mediump_int > | mediump_ivec4
typedef detail::tmat2x2 < mediump_float > | mediump_mat2
typedef detail::tmat2x2 < mediump_float > | mediump_mat2x2
typedef detail::tmat2x3 < mediump_float > | mediump_mat2x3
typedef detail::tmat3x3 < mediump_float > | mediump_mat3
typedef detail::tmat3x3 < mediump_float > | mediump_mat3x3
typedef detail::tmat4x4 < mediump_float > | mediump_mat4
typedef detail::tmat4x2 < mediump_float > | mediump_mat4x2
typedef detail::tmat4x3 < mediump_float > | mediump_mat4x3
typedef detail::tmat4x4 < mediump_float > | mediump_mat4x4
typedef detail::mediump_uint_t | mediump_uint
typedef detail::tvec2 < mediump_uint > | mediump_uvec2
typedef detail::tvec3 < mediump_uint > | mediump_uvec3
typedef detail::tvec4 < mediump_uint > | mediump_uvec4
typedef detail::tvec2 < mediump_float > | mediump_vec2
typedef detail::tvec3 < mediump_float > | mediump_vec3
typedef detail::tvec4 < mediump_float > | mediump_vec4

## Detailed Description

Non-GLSL types that are used to define precision-based types.

The GLSL language allows the user to define the precision of a particular variable. In OpenGL's GLSL, these precision qualifiers have no effect; they are there for compatibility with OpenGL ES's precision qualifiers, where they do have an effect.

C++ has no language equivalent to precision qualifiers. So GLM provides the next-best thing: a number of typedefs of the Template types that use a particular precision.

None of these types make any guarantees about the actual precision used.

## Typedef Documentation

typedef highp_float_t highp_float

High precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification

Definition at line 54 of file type_float.hpp.

typedef detail::highp_int_t highp_int

High precision signed integer.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification.

Definition at line 58 of file type_int.hpp.

typedef detail::tvec2<highp_int> highp_ivec2

2 components vector of high precision signed integer numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.5 Precision Qualifiers.

Definition at line 224 of file type_vec2.hpp.

typedef detail::tvec3<highp_int> highp_ivec3

3 components vector of high precision signed integer numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.5 Precision Qualifiers.

Definition at line 237 of file type_vec3.hpp.

typedef detail::tvec4<highp_int> highp_ivec4

4 components vector of high precision signed integer numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.5 Precision Qualifiers.

Definition at line 270 of file type_vec4.hpp.

typedef detail::tmat2x2<highp_float> highp_mat2

2 columns of 2 components matrix of high precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers

Definition at line 252 of file type_mat2x2.hpp.

typedef detail::tmat2x2<highp_float> highp_mat2x2

2 columns of 2 components matrix of high precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers

Definition at line 270 of file type_mat2x2.hpp.

typedef detail::tmat2x3<highp_float> highp_mat2x3

2 columns of 3 components matrix of high precision floating-point numbers.

There is no guarantee on the actual precision. (From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers)

Definition at line 217 of file type_mat2x3.hpp.

typedef detail::tmat3x3<highp_float> highp_mat3

3 columns of 3 components matrix of high precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers

Definition at line 254 of file type_mat3x3.hpp.

typedef detail::tmat3x3<highp_float> highp_mat3x3

3 columns of 3 components matrix of high precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers

Definition at line 272 of file type_mat3x3.hpp.

typedef detail::tmat4x4<highp_float> highp_mat4

4 columns of 4 components matrix of high precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers

Definition at line 257 of file type_mat4x4.hpp.

typedef detail::tmat4x2<highp_float> highp_mat4x2

4 columns of 2 components matrix of high precision floating-point numbers.

There is no guarantee on the actual precision. (From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers)

Definition at line 231 of file type_mat4x2.hpp.

typedef detail::tmat4x3<highp_float> highp_mat4x3

4 columns of 3 components matrix of high precision floating-point numbers.

There is no guarantee on the actual precision. (From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers)

Definition at line 229 of file type_mat4x3.hpp.

typedef detail::tmat4x4<highp_float> highp_mat4x4

4 columns of 4 components matrix of high precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers

Definition at line 275 of file type_mat4x4.hpp.

typedef detail::highp_uint_t highp_uint

High precision unsigned integer.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification.

Definition at line 74 of file type_int.hpp.

typedef detail::tvec2<highp_uint> highp_uvec2

2 components vector of high precision unsigned integer numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.5 Precision Qualifiers.

Definition at line 242 of file type_vec2.hpp.

typedef detail::tvec3<highp_uint> highp_uvec3

3 components vector of high precision unsigned integer numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.5 Precision Qualifiers.

Definition at line 255 of file type_vec3.hpp.

typedef detail::tvec4<highp_uint> highp_uvec4

4 components vector of high precision unsigned integer numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.5 Precision Qualifiers.

Definition at line 288 of file type_vec4.hpp.

typedef detail::tvec2<highp_float> highp_vec2

2 components vector of high precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.5.2 Precision Qualifiers.

Definition at line 206 of file type_vec2.hpp.

typedef detail::tvec3<highp_float> highp_vec3

3 components vector of high precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.5.2 Precision Qualifiers.

Definition at line 219 of file type_vec3.hpp.

typedef detail::tvec4<highp_float> highp_vec4

4 components vector of high precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.5.2 Precision Qualifiers.

Definition at line 252 of file type_vec4.hpp.

typedef lowp_float_t lowp_float

Low precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification

Definition at line 44 of file type_float.hpp.

typedef detail::lowp_int_t lowp_int

Low precision signed integer.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification.

Definition at line 48 of file type_int.hpp.

typedef detail::tvec2<lowp_int> lowp_ivec2

2 components vector of low precision signed integer numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.5 Precision Qualifiers.

Definition at line 236 of file type_vec2.hpp.

typedef detail::tvec3<lowp_int> lowp_ivec3

3 components vector of low precision signed integer numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.5 Precision Qualifiers.

Definition at line 249 of file type_vec3.hpp.

typedef detail::tvec4<lowp_int> lowp_ivec4

4 components vector of low precision signed integer numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.5 Precision Qualifiers.

Definition at line 282 of file type_vec4.hpp.

typedef detail::tmat2x2<lowp_float> lowp_mat2

2 columns of 2 components matrix of low precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers

Definition at line 240 of file type_mat2x2.hpp.

typedef detail::tmat2x2<lowp_float> lowp_mat2x2

2 columns of 2 components matrix of low precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers

Definition at line 258 of file type_mat2x2.hpp.

typedef detail::tmat2x3<lowp_float> lowp_mat2x3

2 columns of 3 components matrix of low precision floating-point numbers.

There is no guarantee on the actual precision. (From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers)

Definition at line 207 of file type_mat2x3.hpp.

typedef detail::tmat3x3<lowp_float> lowp_mat3

3 columns of 3 components matrix of low precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers

Definition at line 244 of file type_mat3x3.hpp.

typedef detail::tmat3x3<lowp_float> lowp_mat3x3

3 columns of 3 components matrix of low precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers

Definition at line 260 of file type_mat3x3.hpp.

typedef detail::tmat4x4<lowp_float> lowp_mat4

4 columns of 4 components matrix of low precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers

Definition at line 245 of file type_mat4x4.hpp.

typedef detail::tmat4x2<lowp_float> lowp_mat4x2

4 columns of 2 components matrix of low precision floating-point numbers.

There is no guarantee on the actual precision. (From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers)

Definition at line 219 of file type_mat4x2.hpp.

typedef detail::tmat4x3<lowp_float> lowp_mat4x3

4 columns of 3 components matrix of low precision floating-point numbers.

There is no guarantee on the actual precision. (From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers)

Definition at line 217 of file type_mat4x3.hpp.

typedef detail::tmat4x4<lowp_float> lowp_mat4x4

4 columns of 4 components matrix of low precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers

Definition at line 263 of file type_mat4x4.hpp.

typedef detail::lowp_uint_t lowp_uint

Low precision unsigned integer.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification.

Definition at line 64 of file type_int.hpp.

typedef detail::tvec2<lowp_uint> lowp_uvec2

2 components vector of low precision unsigned integer numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.5 Precision Qualifiers.

Definition at line 254 of file type_vec2.hpp.

typedef detail::tvec3<lowp_uint> lowp_uvec3

3 components vector of low precision unsigned integer numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.5 Precision Qualifiers.

Definition at line 267 of file type_vec3.hpp.

typedef detail::tvec4<lowp_uint> lowp_uvec4

4 components vector of low precision unsigned integer numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.5 Precision Qualifiers.

Definition at line 300 of file type_vec4.hpp.

typedef detail::tvec2<lowp_float> lowp_vec2

2 components vector of low precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.5.2 Precision Qualifiers.

Definition at line 218 of file type_vec2.hpp.

typedef detail::tvec3<lowp_float> lowp_vec3

3 components vector of low precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.5.2 Precision Qualifiers.

Definition at line 231 of file type_vec3.hpp.

typedef detail::tvec4<lowp_float> lowp_vec4

4 components vector of low precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.5.2 Precision Qualifiers.

Definition at line 264 of file type_vec4.hpp.

typedef mediump_float_t mediump_float

Medium precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification

Definition at line 49 of file type_float.hpp.

typedef detail::mediump_int_t mediump_int

Medium precision signed integer.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification.

Definition at line 53 of file type_int.hpp.

typedef detail::tvec2<mediump_int> mediump_ivec2

2 components vector of medium precision signed integer numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.5 Precision Qualifiers.

Definition at line 230 of file type_vec2.hpp.

typedef detail::tvec3<mediump_int> mediump_ivec3

3 components vector of medium precision signed integer numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.5 Precision Qualifiers.

Definition at line 243 of file type_vec3.hpp.

typedef detail::tvec4<mediump_int> mediump_ivec4

4 components vector of medium precision signed integer numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.5 Precision Qualifiers.

Definition at line 276 of file type_vec4.hpp.

typedef detail::tmat2x2<mediump_float> mediump_mat2

2 columns of 2 components matrix of medium precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers

Definition at line 246 of file type_mat2x2.hpp.

typedef detail::tmat2x2<mediump_float> mediump_mat2x2

2 columns of 2 components matrix of medium precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers

Definition at line 264 of file type_mat2x2.hpp.

typedef detail::tmat2x3<mediump_float> mediump_mat2x3

2 columns of 3 components matrix of medium precision floating-point numbers.

There is no guarantee on the actual precision. (From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers)

Definition at line 212 of file type_mat2x3.hpp.

typedef detail::tmat3x3<mediump_float> mediump_mat3

3 columns of 3 components matrix of medium precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers

Definition at line 249 of file type_mat3x3.hpp.

typedef detail::tmat3x3<mediump_float> mediump_mat3x3

3 columns of 3 components matrix of medium precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers

Definition at line 266 of file type_mat3x3.hpp.

typedef detail::tmat4x4<mediump_float> mediump_mat4

4 columns of 4 components matrix of medium precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers

Definition at line 251 of file type_mat4x4.hpp.

typedef detail::tmat4x2<mediump_float> mediump_mat4x2

4 columns of 2 components matrix of medium precision floating-point numbers.

There is no guarantee on the actual precision. (From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers)

Definition at line 225 of file type_mat4x2.hpp.

typedef detail::tmat4x3<mediump_float> mediump_mat4x3

4 columns of 3 components matrix of medium precision floating-point numbers.

There is no guarantee on the actual precision. (From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers)

Definition at line 223 of file type_mat4x3.hpp.

typedef detail::tmat4x4<mediump_float> mediump_mat4x4

4 columns of 4 components matrix of medium precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.6 Matrices and section 4.5 Precision and Precision Qualifiers

Definition at line 269 of file type_mat4x4.hpp.

typedef detail::mediump_uint_t mediump_uint

Medium precision unsigned integer.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification.

Definition at line 69 of file type_int.hpp.

typedef detail::tvec2<mediump_uint> mediump_uvec2

2 components vector of medium precision unsigned integer numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.5 Precision Qualifiers.

Definition at line 248 of file type_vec2.hpp.

typedef detail::tvec3<mediump_uint> mediump_uvec3

3 components vector of medium precision unsigned integer numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.5 Precision Qualifiers.

Definition at line 261 of file type_vec3.hpp.

typedef detail::tvec4<mediump_uint> mediump_uvec4

4 components vector of medium precision unsigned integer numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.1.5 Precision Qualifiers.

Definition at line 294 of file type_vec4.hpp.

typedef detail::tvec2<mediump_float> mediump_vec2

2 components vector of medium precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.5.2 Precision Qualifiers.

Definition at line 212 of file type_vec2.hpp.

typedef detail::tvec3<mediump_float> mediump_vec3

3 components vector of medium precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.5.2 Precision Qualifiers.

Definition at line 225 of file type_vec3.hpp.

typedef detail::tvec4<mediump_float> mediump_vec4

4 components vector of medium precision floating-point numbers.

There is no guarantee on the actual precision. From GLSL 1.30.8 specification, section 4.5.2 Precision Qualifiers.

Definition at line 258 of file type_vec4.hpp.