Vector types with precision qualifiers
Core features

## Typedefs

typedef vec< 2, bool, highp > | highp_bvec2
typedef vec< 3, bool, highp > | highp_bvec3
typedef vec< 4, bool, highp > | highp_bvec4
typedef vec< 2, double, highp > | highp_dvec2
typedef vec< 3, double, highp > | highp_dvec3
typedef vec< 4, double, highp > | highp_dvec4
typedef vec< 2, int, highp > | highp_ivec2
typedef vec< 3, int, highp > | highp_ivec3
typedef vec< 4, int, highp > | highp_ivec4
typedef vec< 2, unsigned int, highp > | highp_uvec2
typedef vec< 3, unsigned int, highp > | highp_uvec3
typedef vec< 4, unsigned int, highp > | highp_uvec4
typedef vec< 2, float, highp > | highp_vec2
typedef vec< 3, float, highp > | highp_vec3
typedef vec< 4, float, highp > | highp_vec4
typedef vec< 2, bool, lowp > | lowp_bvec2
typedef vec< 3, bool, lowp > | lowp_bvec3
typedef vec< 4, bool, lowp > | lowp_bvec4
typedef vec< 2, double, lowp > | lowp_dvec2
typedef vec< 3, double, lowp > | lowp_dvec3
typedef vec< 4, double, lowp > | lowp_dvec4
typedef vec< 2, int, lowp > | lowp_ivec2
typedef vec< 3, int, lowp > | lowp_ivec3
typedef vec< 4, int, lowp > | lowp_ivec4
typedef vec< 2, unsigned int, lowp > | lowp_uvec2
typedef vec< 3, unsigned int, lowp > | lowp_uvec3
typedef vec< 4, unsigned int, lowp > | lowp_uvec4
typedef vec< 2, float, lowp > | lowp_vec2
typedef vec< 3, float, lowp > | lowp_vec3
typedef vec< 4, float, lowp > | lowp_vec4
typedef vec< 2, bool, mediump > | mediump_bvec2
typedef vec< 3, bool, mediump > | mediump_bvec3
typedef vec< 4, bool, mediump > | mediump_bvec4
typedef vec< 2, double, mediump > | mediump_dvec2
typedef vec< 3, double, mediump > | mediump_dvec3
typedef vec< 4, double, mediump > | mediump_dvec4
typedef vec< 2, int, mediump > | mediump_ivec2
typedef vec< 3, int, mediump > | mediump_ivec3
typedef vec< 4, int, mediump > | mediump_ivec4
typedef vec< 2, unsigned int, mediump > | mediump_uvec2
typedef vec< 3, unsigned int, mediump > | mediump_uvec3
typedef vec< 4, unsigned int, mediump > | mediump_uvec4
typedef vec< 2, float, mediump > | mediump_vec2
typedef vec< 3, float, mediump > | mediump_vec3
typedef vec< 4, float, mediump > | mediump_vec4

## Detailed Description

Vector types with precision qualifiers which may result in various precision in term of ULPs.

GLSL allows defining qualifiers for particular variables. With OpenGL's GLSL, these qualifiers have no effect; they are there for compatibility, with OpenGL ES's GLSL, these qualifiers do have an effect.

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

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

## Typedef Documentation

## highp_bvec2

typedef vec< 2, bool, highp > highp_bvec2

2 components vector of high qualifier bool numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 16 of file vector_bool2_precision.hpp.

## highp_bvec3

typedef vec< 3, bool, highp > highp_bvec3

3 components vector of high qualifier bool numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 16 of file vector_bool3_precision.hpp.

## highp_bvec4

typedef vec< 4, bool, highp > highp_bvec4

4 components vector of high qualifier bool numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 16 of file vector_bool4_precision.hpp.

## highp_dvec2

typedef vec< 2, f64, highp > highp_dvec2

2 components vector of high double-qualifier floating-point numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 16 of file vector_double2_precision.hpp.

## highp_dvec3

typedef vec< 3, f64, highp > highp_dvec3

3 components vector of high double-qualifier floating-point numbers.

There is no guarantee on the actual qualifier.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 17 of file vector_double3_precision.hpp.

## highp_dvec4

typedef vec< 4, f64, highp > highp_dvec4

4 components vector of high double-qualifier floating-point numbers.

There is no guarantee on the actual qualifier.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 18 of file vector_double4_precision.hpp.

## highp_ivec2

typedef vec< 2, i32, highp > highp_ivec2

2 components vector of high qualifier signed integer numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 16 of file vector_int2_precision.hpp.

## highp_ivec3

typedef vec< 3, i32, highp > highp_ivec3

3 components vector of high qualifier signed integer numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 16 of file vector_int3_precision.hpp.

## highp_ivec4

typedef vec< 4, i32, highp > highp_ivec4

4 components vector of high qualifier signed integer numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 16 of file vector_int4_precision.hpp.

## highp_uvec2

typedef vec< 2, u32, highp > highp_uvec2

2 components vector of high qualifier unsigned integer numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 16 of file vector_uint2_precision.hpp.

## highp_uvec3

typedef vec< 3, u32, highp > highp_uvec3

3 components vector of high qualifier unsigned integer numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 16 of file vector_uint3_precision.hpp.

## highp_uvec4

typedef vec< 4, u32, highp > highp_uvec4

4 components vector of high qualifier unsigned integer numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 16 of file vector_uint4_precision.hpp.

## highp_vec2

typedef vec< 2, float, highp > highp_vec2

2 components vector of high single-qualifier floating-point numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 16 of file vector_float2_precision.hpp.

## highp_vec3

typedef vec< 3, float, highp > highp_vec3

3 components vector of high single-qualifier floating-point numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 16 of file vector_float3_precision.hpp.

## highp_vec4

typedef vec< 4, float, highp > highp_vec4

4 components vector of high single-qualifier floating-point numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 16 of file vector_float4_precision.hpp.

## lowp_bvec2

typedef vec< 2, bool, lowp > lowp_bvec2

2 components vector of low qualifier bool numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 28 of file vector_bool2_precision.hpp.

## lowp_bvec3

typedef vec< 3, bool, lowp > lowp_bvec3

3 components vector of low qualifier bool numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 28 of file vector_bool3_precision.hpp.

## lowp_bvec4

typedef vec< 4, bool, lowp > lowp_bvec4

4 components vector of low qualifier bool numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 28 of file vector_bool4_precision.hpp.

## lowp_dvec2

typedef vec< 2, f64, lowp > lowp_dvec2

2 components vector of low double-qualifier floating-point numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 28 of file vector_double2_precision.hpp.

## lowp_dvec3

typedef vec< 3, f64, lowp > lowp_dvec3

3 components vector of low double-qualifier floating-point numbers.

There is no guarantee on the actual qualifier.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 31 of file vector_double3_precision.hpp.

## lowp_dvec4

typedef vec< 4, f64, lowp > lowp_dvec4

4 components vector of low double-qualifier floating-point numbers.

There is no guarantee on the actual qualifier.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 32 of file vector_double4_precision.hpp.

## lowp_ivec2

typedef vec< 2, i32, lowp > lowp_ivec2

2 components vector of low qualifier signed integer numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 28 of file vector_int2_precision.hpp.

## lowp_ivec3

typedef vec< 3, i32, lowp > lowp_ivec3

3 components vector of low qualifier signed integer numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 28 of file vector_int3_precision.hpp.

## lowp_ivec4

typedef vec< 4, i32, lowp > lowp_ivec4

4 components vector of low qualifier signed integer numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 28 of file vector_int4_precision.hpp.

## lowp_uvec2

typedef vec< 2, u32, lowp > lowp_uvec2

2 components vector of low qualifier unsigned integer numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 28 of file vector_uint2_precision.hpp.

## lowp_uvec3

typedef vec< 3, u32, lowp > lowp_uvec3

3 components vector of low qualifier unsigned integer numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 28 of file vector_uint3_precision.hpp.

## lowp_uvec4

typedef vec< 4, u32, lowp > lowp_uvec4

4 components vector of low qualifier unsigned integer numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 28 of file vector_uint4_precision.hpp.

## lowp_vec2

typedef vec< 2, float, lowp > lowp_vec2

2 components vector of low single-qualifier floating-point numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 28 of file vector_float2_precision.hpp.

## lowp_vec3

typedef vec< 3, float, lowp > lowp_vec3

3 components vector of low single-qualifier floating-point numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 28 of file vector_float3_precision.hpp.

## lowp_vec4

typedef vec< 4, float, lowp > lowp_vec4

4 components vector of low single-qualifier floating-point numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 28 of file vector_float4_precision.hpp.

## mediump_bvec2

typedef vec< 2, bool, mediump > mediump_bvec2

2 components vector of medium qualifier bool numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 22 of file vector_bool2_precision.hpp.

## mediump_bvec3

typedef vec< 3, bool, mediump > mediump_bvec3

3 components vector of medium qualifier bool numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 22 of file vector_bool3_precision.hpp.

## mediump_bvec4

typedef vec< 4, bool, mediump > mediump_bvec4

4 components vector of medium qualifier bool numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 22 of file vector_bool4_precision.hpp.

## mediump_dvec2

typedef vec< 2, f64, mediump > mediump_dvec2

2 components vector of medium double-qualifier floating-point numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 22 of file vector_double2_precision.hpp.

## mediump_dvec3

typedef vec< 3, f64, mediump > mediump_dvec3

3 components vector of medium double-qualifier floating-point numbers.

There is no guarantee on the actual qualifier.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 24 of file vector_double3_precision.hpp.

## mediump_dvec4

typedef vec< 4, f64, mediump > mediump_dvec4

4 components vector of medium double-qualifier floating-point numbers.

There is no guarantee on the actual qualifier.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 25 of file vector_double4_precision.hpp.

## mediump_ivec2

typedef vec< 2, i32, mediump > mediump_ivec2

2 components vector of medium qualifier signed integer numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 22 of file vector_int2_precision.hpp.

## mediump_ivec3

typedef vec< 3, i32, mediump > mediump_ivec3

3 components vector of medium qualifier signed integer numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 22 of file vector_int3_precision.hpp.

## mediump_ivec4

typedef vec< 4, i32, mediump > mediump_ivec4

4 components vector of medium qualifier signed integer numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 22 of file vector_int4_precision.hpp.

## mediump_uvec2

typedef vec< 2, u32, mediump > mediump_uvec2

2 components vector of medium qualifier unsigned integer numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 22 of file vector_uint2_precision.hpp.

## mediump_uvec3

typedef vec< 3, u32, mediump > mediump_uvec3

3 components vector of medium qualifier unsigned integer numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 22 of file vector_uint3_precision.hpp.

## mediump_uvec4

typedef vec< 4, u32, mediump > mediump_uvec4

4 components vector of medium qualifier unsigned integer numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 22 of file vector_uint4_precision.hpp.

## mediump_vec2

typedef vec< 2, float, mediump > mediump_vec2

2 components vector of medium single-qualifier floating-point numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 22 of file vector_float2_precision.hpp.

## mediump_vec3

typedef vec< 3, float, mediump > mediump_vec3

3 components vector of medium single-qualifier floating-point numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 22 of file vector_float3_precision.hpp.

## mediump_vec4

typedef vec< 4, float, mediump > mediump_vec4

4 components vector of medium single-qualifier floating-point numbers.

See also
  GLSL 4.20.8 specification, section 4.1.5 Vectors
  GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier

Definition at line 22 of file vector_float4_precision.hpp.