0.9.8
gtx/type_aligned.hpp
Go to the documentation of this file.
1 
16 #pragma once
17 
18 // Dependency:
19 #include "../gtc/type_precision.hpp"
20 
21 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
22 # pragma message("GLM: GLM_GTX_type_aligned extension included")
23 #endif
24 
25 namespace glm
26 {
28  // Signed int vector types
29 
32 
35  GLM_ALIGNED_TYPEDEF(lowp_int8, aligned_lowp_int8, 1);
36 
39  GLM_ALIGNED_TYPEDEF(lowp_int16, aligned_lowp_int16, 2);
40 
43  GLM_ALIGNED_TYPEDEF(lowp_int32, aligned_lowp_int32, 4);
44 
47  GLM_ALIGNED_TYPEDEF(lowp_int64, aligned_lowp_int64, 8);
48 
49 
52  GLM_ALIGNED_TYPEDEF(lowp_int8_t, aligned_lowp_int8_t, 1);
53 
56  GLM_ALIGNED_TYPEDEF(lowp_int16_t, aligned_lowp_int16_t, 2);
57 
60  GLM_ALIGNED_TYPEDEF(lowp_int32_t, aligned_lowp_int32_t, 4);
61 
64  GLM_ALIGNED_TYPEDEF(lowp_int64_t, aligned_lowp_int64_t, 8);
65 
66 
69  GLM_ALIGNED_TYPEDEF(lowp_i8, aligned_lowp_i8, 1);
70 
73  GLM_ALIGNED_TYPEDEF(lowp_i16, aligned_lowp_i16, 2);
74 
77  GLM_ALIGNED_TYPEDEF(lowp_i32, aligned_lowp_i32, 4);
78 
81  GLM_ALIGNED_TYPEDEF(lowp_i64, aligned_lowp_i64, 8);
82 
83 
86  GLM_ALIGNED_TYPEDEF(mediump_int8, aligned_mediump_int8, 1);
87 
90  GLM_ALIGNED_TYPEDEF(mediump_int16, aligned_mediump_int16, 2);
91 
94  GLM_ALIGNED_TYPEDEF(mediump_int32, aligned_mediump_int32, 4);
95 
98  GLM_ALIGNED_TYPEDEF(mediump_int64, aligned_mediump_int64, 8);
99 
100 
103  GLM_ALIGNED_TYPEDEF(mediump_int8_t, aligned_mediump_int8_t, 1);
104 
107  GLM_ALIGNED_TYPEDEF(mediump_int16_t, aligned_mediump_int16_t, 2);
108 
111  GLM_ALIGNED_TYPEDEF(mediump_int32_t, aligned_mediump_int32_t, 4);
112 
115  GLM_ALIGNED_TYPEDEF(mediump_int64_t, aligned_mediump_int64_t, 8);
116 
117 
120  GLM_ALIGNED_TYPEDEF(mediump_i8, aligned_mediump_i8, 1);
121 
124  GLM_ALIGNED_TYPEDEF(mediump_i16, aligned_mediump_i16, 2);
125 
128  GLM_ALIGNED_TYPEDEF(mediump_i32, aligned_mediump_i32, 4);
129 
132  GLM_ALIGNED_TYPEDEF(mediump_i64, aligned_mediump_i64, 8);
133 
134 
137  GLM_ALIGNED_TYPEDEF(highp_int8, aligned_highp_int8, 1);
138 
141  GLM_ALIGNED_TYPEDEF(highp_int16, aligned_highp_int16, 2);
142 
145  GLM_ALIGNED_TYPEDEF(highp_int32, aligned_highp_int32, 4);
146 
149  GLM_ALIGNED_TYPEDEF(highp_int64, aligned_highp_int64, 8);
150 
151 
154  GLM_ALIGNED_TYPEDEF(highp_int8_t, aligned_highp_int8_t, 1);
155 
158  GLM_ALIGNED_TYPEDEF(highp_int16_t, aligned_highp_int16_t, 2);
159 
162  GLM_ALIGNED_TYPEDEF(highp_int32_t, aligned_highp_int32_t, 4);
163 
166  GLM_ALIGNED_TYPEDEF(highp_int64_t, aligned_highp_int64_t, 8);
167 
168 
171  GLM_ALIGNED_TYPEDEF(highp_i8, aligned_highp_i8, 1);
172 
175  GLM_ALIGNED_TYPEDEF(highp_i16, aligned_highp_i16, 2);
176 
179  GLM_ALIGNED_TYPEDEF(highp_i32, aligned_highp_i32, 4);
180 
183  GLM_ALIGNED_TYPEDEF(highp_i64, aligned_highp_i64, 8);
184 
185 
188  GLM_ALIGNED_TYPEDEF(int8, aligned_int8, 1);
189 
192  GLM_ALIGNED_TYPEDEF(int16, aligned_int16, 2);
193 
196  GLM_ALIGNED_TYPEDEF(int32, aligned_int32, 4);
197 
200  GLM_ALIGNED_TYPEDEF(int64, aligned_int64, 8);
201 
202 
205  GLM_ALIGNED_TYPEDEF(int8_t, aligned_int8_t, 1);
206 
209  GLM_ALIGNED_TYPEDEF(int16_t, aligned_int16_t, 2);
210 
213  GLM_ALIGNED_TYPEDEF(int32_t, aligned_int32_t, 4);
214 
217  GLM_ALIGNED_TYPEDEF(int64_t, aligned_int64_t, 8);
218 
219 
222  GLM_ALIGNED_TYPEDEF(i8, aligned_i8, 1);
223 
226  GLM_ALIGNED_TYPEDEF(i16, aligned_i16, 2);
227 
230  GLM_ALIGNED_TYPEDEF(i32, aligned_i32, 4);
231 
234  GLM_ALIGNED_TYPEDEF(i64, aligned_i64, 8);
235 
236 
240 
244 
248 
252 
253 
256  GLM_ALIGNED_TYPEDEF(i8vec1, aligned_i8vec1, 1);
257 
260  GLM_ALIGNED_TYPEDEF(i8vec2, aligned_i8vec2, 2);
261 
264  GLM_ALIGNED_TYPEDEF(i8vec3, aligned_i8vec3, 4);
265 
268  GLM_ALIGNED_TYPEDEF(i8vec4, aligned_i8vec4, 4);
269 
270 
273  GLM_ALIGNED_TYPEDEF(i16vec1, aligned_i16vec1, 2);
274 
277  GLM_ALIGNED_TYPEDEF(i16vec2, aligned_i16vec2, 4);
278 
281  GLM_ALIGNED_TYPEDEF(i16vec3, aligned_i16vec3, 8);
282 
285  GLM_ALIGNED_TYPEDEF(i16vec4, aligned_i16vec4, 8);
286 
287 
290  GLM_ALIGNED_TYPEDEF(i32vec1, aligned_i32vec1, 4);
291 
294  GLM_ALIGNED_TYPEDEF(i32vec2, aligned_i32vec2, 8);
295 
298  GLM_ALIGNED_TYPEDEF(i32vec3, aligned_i32vec3, 16);
299 
302  GLM_ALIGNED_TYPEDEF(i32vec4, aligned_i32vec4, 16);
303 
304 
307  GLM_ALIGNED_TYPEDEF(i64vec1, aligned_i64vec1, 8);
308 
311  GLM_ALIGNED_TYPEDEF(i64vec2, aligned_i64vec2, 16);
312 
315  GLM_ALIGNED_TYPEDEF(i64vec3, aligned_i64vec3, 32);
316 
319  GLM_ALIGNED_TYPEDEF(i64vec4, aligned_i64vec4, 32);
320 
321 
323  // Unsigned int vector types
324 
327  GLM_ALIGNED_TYPEDEF(lowp_uint8, aligned_lowp_uint8, 1);
328 
331  GLM_ALIGNED_TYPEDEF(lowp_uint16, aligned_lowp_uint16, 2);
332 
335  GLM_ALIGNED_TYPEDEF(lowp_uint32, aligned_lowp_uint32, 4);
336 
339  GLM_ALIGNED_TYPEDEF(lowp_uint64, aligned_lowp_uint64, 8);
340 
341 
344  GLM_ALIGNED_TYPEDEF(lowp_uint8_t, aligned_lowp_uint8_t, 1);
345 
348  GLM_ALIGNED_TYPEDEF(lowp_uint16_t, aligned_lowp_uint16_t, 2);
349 
352  GLM_ALIGNED_TYPEDEF(lowp_uint32_t, aligned_lowp_uint32_t, 4);
353 
356  GLM_ALIGNED_TYPEDEF(lowp_uint64_t, aligned_lowp_uint64_t, 8);
357 
358 
361  GLM_ALIGNED_TYPEDEF(lowp_u8, aligned_lowp_u8, 1);
362 
365  GLM_ALIGNED_TYPEDEF(lowp_u16, aligned_lowp_u16, 2);
366 
369  GLM_ALIGNED_TYPEDEF(lowp_u32, aligned_lowp_u32, 4);
370 
373  GLM_ALIGNED_TYPEDEF(lowp_u64, aligned_lowp_u64, 8);
374 
375 
378  GLM_ALIGNED_TYPEDEF(mediump_uint8, aligned_mediump_uint8, 1);
379 
382  GLM_ALIGNED_TYPEDEF(mediump_uint16, aligned_mediump_uint16, 2);
383 
386  GLM_ALIGNED_TYPEDEF(mediump_uint32, aligned_mediump_uint32, 4);
387 
390  GLM_ALIGNED_TYPEDEF(mediump_uint64, aligned_mediump_uint64, 8);
391 
392 
395  GLM_ALIGNED_TYPEDEF(mediump_uint8_t, aligned_mediump_uint8_t, 1);
396 
399  GLM_ALIGNED_TYPEDEF(mediump_uint16_t, aligned_mediump_uint16_t, 2);
400 
403  GLM_ALIGNED_TYPEDEF(mediump_uint32_t, aligned_mediump_uint32_t, 4);
404 
407  GLM_ALIGNED_TYPEDEF(mediump_uint64_t, aligned_mediump_uint64_t, 8);
408 
409 
412  GLM_ALIGNED_TYPEDEF(mediump_u8, aligned_mediump_u8, 1);
413 
416  GLM_ALIGNED_TYPEDEF(mediump_u16, aligned_mediump_u16, 2);
417 
420  GLM_ALIGNED_TYPEDEF(mediump_u32, aligned_mediump_u32, 4);
421 
424  GLM_ALIGNED_TYPEDEF(mediump_u64, aligned_mediump_u64, 8);
425 
426 
429  GLM_ALIGNED_TYPEDEF(highp_uint8, aligned_highp_uint8, 1);
430 
433  GLM_ALIGNED_TYPEDEF(highp_uint16, aligned_highp_uint16, 2);
434 
437  GLM_ALIGNED_TYPEDEF(highp_uint32, aligned_highp_uint32, 4);
438 
441  GLM_ALIGNED_TYPEDEF(highp_uint64, aligned_highp_uint64, 8);
442 
443 
446  GLM_ALIGNED_TYPEDEF(highp_uint8_t, aligned_highp_uint8_t, 1);
447 
450  GLM_ALIGNED_TYPEDEF(highp_uint16_t, aligned_highp_uint16_t, 2);
451 
454  GLM_ALIGNED_TYPEDEF(highp_uint32_t, aligned_highp_uint32_t, 4);
455 
458  GLM_ALIGNED_TYPEDEF(highp_uint64_t, aligned_highp_uint64_t, 8);
459 
460 
463  GLM_ALIGNED_TYPEDEF(highp_u8, aligned_highp_u8, 1);
464 
467  GLM_ALIGNED_TYPEDEF(highp_u16, aligned_highp_u16, 2);
468 
471  GLM_ALIGNED_TYPEDEF(highp_u32, aligned_highp_u32, 4);
472 
475  GLM_ALIGNED_TYPEDEF(highp_u64, aligned_highp_u64, 8);
476 
477 
480  GLM_ALIGNED_TYPEDEF(uint8, aligned_uint8, 1);
481 
484  GLM_ALIGNED_TYPEDEF(uint16, aligned_uint16, 2);
485 
488  GLM_ALIGNED_TYPEDEF(uint32, aligned_uint32, 4);
489 
492  GLM_ALIGNED_TYPEDEF(uint64, aligned_uint64, 8);
493 
494 
497  GLM_ALIGNED_TYPEDEF(uint8_t, aligned_uint8_t, 1);
498 
501  GLM_ALIGNED_TYPEDEF(uint16_t, aligned_uint16_t, 2);
502 
505  GLM_ALIGNED_TYPEDEF(uint32_t, aligned_uint32_t, 4);
506 
509  GLM_ALIGNED_TYPEDEF(uint64_t, aligned_uint64_t, 8);
510 
511 
514  GLM_ALIGNED_TYPEDEF(u8, aligned_u8, 1);
515 
518  GLM_ALIGNED_TYPEDEF(u16, aligned_u16, 2);
519 
522  GLM_ALIGNED_TYPEDEF(u32, aligned_u32, 4);
523 
526  GLM_ALIGNED_TYPEDEF(u64, aligned_u64, 8);
527 
528 
532 
536 
540 
544 
545 
548  GLM_ALIGNED_TYPEDEF(u8vec1, aligned_u8vec1, 1);
549 
552  GLM_ALIGNED_TYPEDEF(u8vec2, aligned_u8vec2, 2);
553 
556  GLM_ALIGNED_TYPEDEF(u8vec3, aligned_u8vec3, 4);
557 
560  GLM_ALIGNED_TYPEDEF(u8vec4, aligned_u8vec4, 4);
561 
562 
565  GLM_ALIGNED_TYPEDEF(u16vec1, aligned_u16vec1, 2);
566 
569  GLM_ALIGNED_TYPEDEF(u16vec2, aligned_u16vec2, 4);
570 
573  GLM_ALIGNED_TYPEDEF(u16vec3, aligned_u16vec3, 8);
574 
577  GLM_ALIGNED_TYPEDEF(u16vec4, aligned_u16vec4, 8);
578 
579 
582  GLM_ALIGNED_TYPEDEF(u32vec1, aligned_u32vec1, 4);
583 
586  GLM_ALIGNED_TYPEDEF(u32vec2, aligned_u32vec2, 8);
587 
590  GLM_ALIGNED_TYPEDEF(u32vec3, aligned_u32vec3, 16);
591 
594  GLM_ALIGNED_TYPEDEF(u32vec4, aligned_u32vec4, 16);
595 
596 
599  GLM_ALIGNED_TYPEDEF(u64vec1, aligned_u64vec1, 8);
600 
603  GLM_ALIGNED_TYPEDEF(u64vec2, aligned_u64vec2, 16);
604 
607  GLM_ALIGNED_TYPEDEF(u64vec3, aligned_u64vec3, 32);
608 
611  GLM_ALIGNED_TYPEDEF(u64vec4, aligned_u64vec4, 32);
612 
613 
615  // Float vector types
616 
619  GLM_ALIGNED_TYPEDEF(float32, aligned_float32, 4);
620 
623  GLM_ALIGNED_TYPEDEF(float64, aligned_float64, 8);
624 
625 
628  GLM_ALIGNED_TYPEDEF(float32_t, aligned_float32_t, 4);
629 
632  GLM_ALIGNED_TYPEDEF(float64_t, aligned_float64_t, 8);
633 
634 
637  GLM_ALIGNED_TYPEDEF(float32, aligned_f32, 4);
638 
641  GLM_ALIGNED_TYPEDEF(float64, aligned_f64, 8);
642 
643 
647 
651 
655 
659 
660 
663  GLM_ALIGNED_TYPEDEF(fvec1, aligned_fvec1, 4);
664 
667  GLM_ALIGNED_TYPEDEF(fvec2, aligned_fvec2, 8);
668 
671  GLM_ALIGNED_TYPEDEF(fvec3, aligned_fvec3, 16);
672 
675  GLM_ALIGNED_TYPEDEF(fvec4, aligned_fvec4, 16);
676 
677 
680  GLM_ALIGNED_TYPEDEF(f32vec1, aligned_f32vec1, 4);
681 
684  GLM_ALIGNED_TYPEDEF(f32vec2, aligned_f32vec2, 8);
685 
688  GLM_ALIGNED_TYPEDEF(f32vec3, aligned_f32vec3, 16);
689 
692  GLM_ALIGNED_TYPEDEF(f32vec4, aligned_f32vec4, 16);
693 
694 
698 
702 
706 
710 
711 
714  GLM_ALIGNED_TYPEDEF(f64vec1, aligned_f64vec1, 8);
715 
718  GLM_ALIGNED_TYPEDEF(f64vec2, aligned_f64vec2, 16);
719 
722  GLM_ALIGNED_TYPEDEF(f64vec3, aligned_f64vec3, 32);
723 
726  GLM_ALIGNED_TYPEDEF(f64vec4, aligned_f64vec4, 32);
727 
728 
730  // Float matrix types
731 
734  //typedef detail::tmat1<f32> mat1;
735 
738  GLM_ALIGNED_TYPEDEF(mat2, aligned_mat2, 16);
739 
742  GLM_ALIGNED_TYPEDEF(mat3, aligned_mat3, 16);
743 
746  GLM_ALIGNED_TYPEDEF(mat4, aligned_mat4, 16);
747 
748 
751  //typedef detail::tmat1x1<f32> mat1;
752 
755  GLM_ALIGNED_TYPEDEF(mat2x2, aligned_mat2x2, 16);
756 
759  GLM_ALIGNED_TYPEDEF(mat3x3, aligned_mat3x3, 16);
760 
763  GLM_ALIGNED_TYPEDEF(mat4x4, aligned_mat4x4, 16);
764 
765 
768  //typedef detail::tmat1x1<f32> fmat1;
769 
772  GLM_ALIGNED_TYPEDEF(fmat2x2, aligned_fmat2, 16);
773 
776  GLM_ALIGNED_TYPEDEF(fmat3x3, aligned_fmat3, 16);
777 
780  GLM_ALIGNED_TYPEDEF(fmat4x4, aligned_fmat4, 16);
781 
782 
785  //typedef f32 fmat1x1;
786 
789  GLM_ALIGNED_TYPEDEF(fmat2x2, aligned_fmat2x2, 16);
790 
793  GLM_ALIGNED_TYPEDEF(fmat2x3, aligned_fmat2x3, 16);
794 
797  GLM_ALIGNED_TYPEDEF(fmat2x4, aligned_fmat2x4, 16);
798 
801  GLM_ALIGNED_TYPEDEF(fmat3x2, aligned_fmat3x2, 16);
802 
805  GLM_ALIGNED_TYPEDEF(fmat3x3, aligned_fmat3x3, 16);
806 
809  GLM_ALIGNED_TYPEDEF(fmat3x4, aligned_fmat3x4, 16);
810 
813  GLM_ALIGNED_TYPEDEF(fmat4x2, aligned_fmat4x2, 16);
814 
817  GLM_ALIGNED_TYPEDEF(fmat4x3, aligned_fmat4x3, 16);
818 
821  GLM_ALIGNED_TYPEDEF(fmat4x4, aligned_fmat4x4, 16);
822 
823 
826  //typedef detail::tmat1x1<f32, defaultp> f32mat1;
827 
830  GLM_ALIGNED_TYPEDEF(f32mat2x2, aligned_f32mat2, 16);
831 
834  GLM_ALIGNED_TYPEDEF(f32mat3x3, aligned_f32mat3, 16);
835 
838  GLM_ALIGNED_TYPEDEF(f32mat4x4, aligned_f32mat4, 16);
839 
840 
843  //typedef f32 f32mat1x1;
844 
847  GLM_ALIGNED_TYPEDEF(f32mat2x2, aligned_f32mat2x2, 16);
848 
851  GLM_ALIGNED_TYPEDEF(f32mat2x3, aligned_f32mat2x3, 16);
852 
855  GLM_ALIGNED_TYPEDEF(f32mat2x4, aligned_f32mat2x4, 16);
856 
859  GLM_ALIGNED_TYPEDEF(f32mat3x2, aligned_f32mat3x2, 16);
860 
863  GLM_ALIGNED_TYPEDEF(f32mat3x3, aligned_f32mat3x3, 16);
864 
867  GLM_ALIGNED_TYPEDEF(f32mat3x4, aligned_f32mat3x4, 16);
868 
871  GLM_ALIGNED_TYPEDEF(f32mat4x2, aligned_f32mat4x2, 16);
872 
875  GLM_ALIGNED_TYPEDEF(f32mat4x3, aligned_f32mat4x3, 16);
876 
879  GLM_ALIGNED_TYPEDEF(f32mat4x4, aligned_f32mat4x4, 16);
880 
881 
884  //typedef detail::tmat1x1<f64, defaultp> f64mat1;
885 
888  GLM_ALIGNED_TYPEDEF(f64mat2x2, aligned_f64mat2, 32);
889 
892  GLM_ALIGNED_TYPEDEF(f64mat3x3, aligned_f64mat3, 32);
893 
896  GLM_ALIGNED_TYPEDEF(f64mat4x4, aligned_f64mat4, 32);
897 
898 
901  //typedef f64 f64mat1x1;
902 
905  GLM_ALIGNED_TYPEDEF(f64mat2x2, aligned_f64mat2x2, 32);
906 
909  GLM_ALIGNED_TYPEDEF(f64mat2x3, aligned_f64mat2x3, 32);
910 
913  GLM_ALIGNED_TYPEDEF(f64mat2x4, aligned_f64mat2x4, 32);
914 
917  GLM_ALIGNED_TYPEDEF(f64mat3x2, aligned_f64mat3x2, 32);
918 
921  GLM_ALIGNED_TYPEDEF(f64mat3x3, aligned_f64mat3x3, 32);
922 
925  GLM_ALIGNED_TYPEDEF(f64mat3x4, aligned_f64mat3x4, 32);
926 
929  GLM_ALIGNED_TYPEDEF(f64mat4x2, aligned_f64mat4x2, 32);
930 
933  GLM_ALIGNED_TYPEDEF(f64mat4x3, aligned_f64mat4x3, 32);
934 
937  GLM_ALIGNED_TYPEDEF(f64mat4x4, aligned_f64mat4x4, 32);
938 
939 
941  // Quaternion types
942 
945  GLM_ALIGNED_TYPEDEF(quat, aligned_quat, 16);
946 
949  GLM_ALIGNED_TYPEDEF(fquat, aligned_fquat, 16);
950 
953  GLM_ALIGNED_TYPEDEF(dquat, aligned_dquat, 32);
954 
957  GLM_ALIGNED_TYPEDEF(f32quat, aligned_f32quat, 16);
958 
961  GLM_ALIGNED_TYPEDEF(f64quat, aligned_f64quat, 32);
962 
964 }//namespace glm
965 
966 #include "type_aligned.inl"
highp_ivec3 ivec3
3 components vector of signed integer numbers.
Definition: type_vec.hpp:515
detail::int8 lowp_int8_t
Low precision 8 bit signed integer type.
Definition: fwd.hpp:116
highp_i16vec1 i16vec1
Default precision 16 bit signed integer scalar type.
Definition: fwd.hpp:444
highp_f32vec1 f32vec1
Default single-precision floating-point vector of 1 components.
Definition: fwd.hpp:2397
highp_f32mat2x4 f32mat2x4
Default single-precision floating-point 2x4 matrix.
Definition: fwd.hpp:2421
detail::uint8 lowp_uint8
Low precision 8 bit unsigned integer type.
Definition: fwd.hpp:703
highp_f64vec4 f64vec4
Default double-precision floating-point vector of 4 components.
Definition: fwd.hpp:2515
highp_u32vec1 u32vec1
Default precision 32 bit unsigned integer scalar type.
Definition: fwd.hpp:1132
detail::int8 mediump_int8
Medium precision 8 bit signed integer type.
Definition: fwd.hpp:148
detail::int8 mediump_i8
Medium precision 8 bit signed integer type.
Definition: fwd.hpp:180
detail::uint8 highp_u8
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:837
detail::int8 mediump_int8_t
Medium precision 8 bit signed integer type.
Definition: fwd.hpp:164
detail::uint64 highp_uint64_t
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:833
detail::uint16 highp_uint16
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:809
detail::uint32 highp_uint32_t
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:829
detail::int32 mediump_i32
Medium precision 32 bit signed integer type.
Definition: fwd.hpp:188
detail::int8 highp_i8
High precision 8 bit signed integer type.
Definition: fwd.hpp:228
highp_i64vec2 i64vec2
Default precision 64 bit signed integer vector of 2 components type.
Definition: fwd.hpp:686
highp_u32vec3 u32vec3
Default precision 32 bit unsigned integer vector of 3 components type.
Definition: fwd.hpp:1140
highp_mat2x2 mat2x2
2 columns of 2 components matrix of floating-point numbers.
Definition: type_mat.hpp:359
mat2x2 mat2
2 columns of 2 components matrix of floating-point numbers.
Definition: type_mat.hpp:406
detail::uint16 lowp_uint16
Low precision 16 bit unsigned integer type.
Definition: fwd.hpp:707
highp_u8vec3 u8vec3
Default precision 8 bit unsigned integer vector of 3 components type.
Definition: fwd.hpp:981
highp_f32mat3x3 f32mat3x3
Default single-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2429
detail::int64 mediump_i64
Medium precision 64 bit signed integer type.
Definition: fwd.hpp:192
highp_u16vec4 u16vec4
Default precision 16 bit unsigned integer vector of 4 components type.
Definition: fwd.hpp:1065
detail::uint64 highp_u64
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:849
highp_f64vec1 f64vec1
Default double-precision floating-point vector of 1 components.
Definition: fwd.hpp:2503
highp_u64vec4 u64vec4
Default precision 64 bit unsigned integer vector of 4 components type.
Definition: fwd.hpp:1303
detail::int8 lowp_int8
Low precision 8 bit signed integer type.
Definition: fwd.hpp:100
detail::int16 lowp_int16
Low precision 16 bit signed integer type.
Definition: fwd.hpp:104
aligned_highp_dvec4 aligned_dvec4
4 components vector of double-precision floating-point numbers.
highp_i16vec4 i16vec4
Default precision 16 bit signed integer vector of 4 components type.
Definition: fwd.hpp:456
detail::int16 i16
16 bit signed integer type.
Definition: fwd.hpp:289
aligned_highp_dvec1 aligned_dvec1
1 component vector of double-precision floating-point numbers.
highp_f64mat3x2 f64mat3x2
Default double-precision floating-point 3x2 matrix.
Definition: fwd.hpp:2531
detail::int32 lowp_i32
Low precision 32 bit signed integer type.
Definition: fwd.hpp:140
detail::uint8 uint8_t
8 bit unsigned integer type.
Definition: fwd.hpp:877
detail::int32 lowp_int32_t
Low precision 32 bit signed integer type.
Definition: fwd.hpp:124
detail::uint8 highp_uint8
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:805
detail::int32 highp_i32
High precision 32 bit signed integer type.
Definition: fwd.hpp:236
detail::uint8 mediump_uint8
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:755
detail::uint8 mediump_u8
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:787
highp_f32mat2x3 fmat2x3
Default single-precision floating-point 2x3 matrix.
Definition: fwd.hpp:2347
highp_f32mat4x2 f32mat4x2
Default single-precision floating-point 4x2 matrix.
Definition: fwd.hpp:2437
highp_vec4 vec4
4 components vector of floating-point numbers.
Definition: type_vec.hpp:466
detail::uint16 highp_u16
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:841
detail::uint32 highp_u32
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:845
detail::uint32 u32
32 bit unsigned integer type.
Definition: fwd.hpp:902
highp_f64mat4x4 f64mat4x4
Default double-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2551
highp_ivec2 ivec2
2 components vector of signed integer numbers.
Definition: type_vec.hpp:510
detail::int8 highp_int8
High precision 8 bit signed integer type.
Definition: fwd.hpp:196
highp_f64mat2x3 f64mat2x3
Default double-precision floating-point 2x3 matrix.
Definition: fwd.hpp:2523
highp_u16vec3 u16vec3
Default precision 16 bit unsigned integer vector of 3 components type.
Definition: fwd.hpp:1061
highp_i16vec2 i16vec2
Default precision 16 bit signed integer vector of 2 components type.
Definition: fwd.hpp:448
detail::uint32 lowp_uint32
Low precision 32 bit unsigned integer type.
Definition: fwd.hpp:711
mat3x3 mat3
3 columns of 3 components matrix of floating-point numbers.
Definition: type_mat.hpp:411
detail::int16 mediump_int16_t
Medium precision 16 bit signed integer type.
Definition: fwd.hpp:168
detail::int8 int8_t
8 bit signed integer type.
Definition: fwd.hpp:268
detail::uint64 mediump_uint64
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:767
highp_f32mat4x3 fmat4x3
Default single-precision floating-point 4x3 matrix.
Definition: fwd.hpp:2371
detail::uint16 u16
16 bit unsigned integer type.
Definition: fwd.hpp:898
highp_f32vec4 fvec4
Default single-precision floating-point vector of 4 components.
Definition: fwd.hpp:2339
Definition: _noise.hpp:11
highp_u32vec2 u32vec2
Default precision 32 bit unsigned integer vector of 2 components type.
Definition: fwd.hpp:1136
highp_f32mat2x2 f32mat2x2
Default single-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2413
detail::int32 mediump_int32
Medium precision 32 bit signed integer type.
Definition: fwd.hpp:156
detail::int16 highp_i16
High precision 16 bit signed integer type.
Definition: fwd.hpp:232
highp_f32mat3x2 f32mat3x2
Default single-precision floating-point 3x2 matrix.
Definition: fwd.hpp:2425
detail::uint8 highp_uint8_t
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:821
highp_f64mat4x2 f64mat4x2
Default double-precision floating-point 4x2 matrix.
Definition: fwd.hpp:2543
highp_f64mat3x4 f64mat3x4
Default double-precision floating-point 3x4 matrix.
Definition: fwd.hpp:2539
mat4x4 mat4
4 columns of 4 components matrix of floating-point numbers.
Definition: type_mat.hpp:416
highp_f32mat4x4 fmat4x4
Default single-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2375
highp_float32_t float32_t
Default 32 bit single-precision floating-point scalar.
Definition: fwd.hpp:1497
detail::uint64 highp_uint64
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:817
highp_u64vec1 u64vec1
Default precision 64 bit unsigned integer scalar type.
Definition: fwd.hpp:1291
detail::int64 lowp_i64
Low precision 64 bit signed integer type.
Definition: fwd.hpp:144
highp_f64vec3 f64vec3
Default double-precision floating-point vector of 3 components.
Definition: fwd.hpp:2511
detail::int32 lowp_int32
Low precision 32 bit signed integer type.
Definition: fwd.hpp:108
detail::uint64 lowp_uint64_t
Low precision 64 bit unsigned integer type.
Definition: fwd.hpp:732
highp_i32vec1 i32vec1
Default precision 32 bit signed integer scalar type.
Definition: fwd.hpp:523
detail::uint32 lowp_u32
Low precision 32 bit unsigned integer type.
Definition: fwd.hpp:745
highp_u8vec2 u8vec2
Default precision 8 bit unsigned integer vector of 2 components type.
Definition: fwd.hpp:977
highp_i16vec3 i16vec3
Default precision 16 bit signed integer vector of 3 components type.
Definition: fwd.hpp:452
highp_f32vec2 f32vec2
Default single-precision floating-point vector of 2 components.
Definition: fwd.hpp:2401
aligned_highp_ivec1 aligned_ivec1
1 component vector of signed integer numbers.
detail::uint8 lowp_uint8_t
Low precision 8 bit unsigned integer type.
Definition: fwd.hpp:720
highp_i64vec4 i64vec4
Default precision 64 bit signed integer vector of 4 components type.
Definition: fwd.hpp:694
highp_f32vec2 fvec2
Default single-precision floating-point vector of 2 components.
Definition: fwd.hpp:2331
highp_mat4x4 mat4x4
4 columns of 4 components matrix of floating-point numbers.
Definition: type_mat.hpp:399
aligned_highp_dvec3 aligned_dvec3
3 components vector of double-precision floating-point numbers.
highp_f32vec4 f32vec4
Default single-precision floating-point vector of 4 components.
Definition: fwd.hpp:2409
detail::uint64 lowp_u64
Low precision 64 bit unsigned integer type.
Definition: fwd.hpp:749
aligned_highp_vec2 aligned_vec2
2 components vector of floating-point numbers.
detail::int8 i8
8 bit signed integer type.
Definition: fwd.hpp:285
highp_f32mat2x2 fmat2x2
Default single-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2343
highp_i64vec3 i64vec3
Default precision 64 bit signed integer vector of 3 components type.
Definition: fwd.hpp:690
highp_uvec3 uvec3
3 components vector of unsigned integer numbers.
Definition: type_vec.hpp:542
detail::int16 lowp_i16
Low precision 16 bit signed integer type.
Definition: fwd.hpp:136
detail::uint64 lowp_uint64
Low precision 64 bit unsigned integer type.
Definition: fwd.hpp:715
detail::int64 highp_int64
High precision 64 bit signed integer type.
Definition: fwd.hpp:208
detail::uint8 u8
8 bit unsigned integer type.
Definition: fwd.hpp:894
detail::uint32 mediump_u32
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:795
highp_f64mat2x2 f64mat2x2
Default double-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2519
detail::int64 lowp_int64_t
Low precision 64 bit signed integer type.
Definition: fwd.hpp:128
detail::uint16 lowp_u16
Low precision 16 bit unsigned integer type.
Definition: fwd.hpp:741
highp_u16vec2 u16vec2
Default precision 16 bit unsigned integer vector of 2 components type.
Definition: fwd.hpp:1057
aligned_highp_uvec4 aligned_uvec4
4 components vector of unsigned integer numbers.
detail::uint32 mediump_uint32_t
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:779
highp_u16vec1 u16vec1
Default precision 16 bit unsigned integer scalar type.
Definition: fwd.hpp:1053
highp_uvec4 uvec4
4 components vector of unsigned integer numbers.
Definition: type_vec.hpp:547
highp_f64quat f64quat
Default double-precision floating-point quaternion.
Definition: fwd.hpp:2567
detail::uint16 lowp_uint16_t
Low precision 16 bit unsigned integer type.
Definition: fwd.hpp:724
detail::int64 highp_i64
High precision 64 bit signed integer type.
Definition: fwd.hpp:240
detail::int16 mediump_i16
Medium precision 16 bit signed integer type.
Definition: fwd.hpp:184
highp_u64vec2 u64vec2
Default precision 64 bit unsigned integer vector of 2 components type.
Definition: fwd.hpp:1295
detail::int32 highp_int32
High precision 32 bit signed integer type.
Definition: fwd.hpp:204
highp_f32mat2x3 f32mat2x3
Default single-precision floating-point 2x3 matrix.
Definition: fwd.hpp:2417
highp_u32vec4 u32vec4
Default precision 32 bit unsigned integer vector of 4 components type.
Definition: fwd.hpp:1144
aligned_highp_uvec3 aligned_uvec3
3 components vector of unsigned integer numbers.
detail::int32 mediump_int32_t
Medium precision 32 bit signed integer type.
Definition: fwd.hpp:172
detail::int32 int32_t
32 bit signed integer type.
Definition: fwd.hpp:276
detail::uint16 mediump_u16
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:791
detail::uint16 highp_uint16_t
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:825
highp_mat3x3 mat3x3
3 columns of 3 components matrix of floating-point numbers.
Definition: type_mat.hpp:379
detail::uint32 mediump_uint32
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:763
detail::uint64 uint64_t
64 bit unsigned integer type.
Definition: fwd.hpp:889
highp_i8vec2 i8vec2
Default precision 8 bit signed integer vector of 2 components type.
Definition: fwd.hpp:368
highp_f32mat4x3 f32mat4x3
Default single-precision floating-point 4x3 matrix.
Definition: fwd.hpp:2441
highp_f64mat4x3 f64mat4x3
Default double-precision floating-point 4x3 matrix.
Definition: fwd.hpp:2547
highp_f32mat2x4 fmat2x4
Default single-precision floating-point 2x4 matrix.
Definition: fwd.hpp:2351
detail::uint8 mediump_uint8_t
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:771
highp_f32mat3x4 fmat3x4
Default single-precision floating-point 3x4 matrix.
Definition: fwd.hpp:2363
highp_i32vec2 i32vec2
Default precision 32 bit signed integer vector of 2 components type.
Definition: fwd.hpp:527
highp_float64_t float64_t
Default 64 bit double-precision floating-point scalar.
Definition: fwd.hpp:1501
highp_dvec3 dvec3
3 components vector of double-precision floating-point numbers.
Definition: type_vec.hpp:488
aligned_highp_uvec1 aligned_uvec1
1 component vector of unsigned integer numbers.
highp_i8vec3 i8vec3
Default precision 8 bit signed integer vector of 3 components type.
Definition: fwd.hpp:372
detail::int64 mediump_int64_t
Medium precision 64 bit signed integer type.
Definition: fwd.hpp:176
highp_f32mat4x4 f32mat4x4
Default single-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2445
highp_uvec2 uvec2
2 components vector of unsigned integer numbers.
Definition: type_vec.hpp:537
highp_i8vec1 i8vec1
Default precision 8 bit signed integer scalar type.
Definition: fwd.hpp:364
highp_i32vec4 i32vec4
Default precision 32 bit signed integer vector of 4 components type.
Definition: fwd.hpp:535
aligned_highp_vec4 aligned_vec4
4 components vector of floating-point numbers.
highp_dvec4 dvec4
4 components vector of double-precision floating-point numbers.
Definition: type_vec.hpp:493
detail::int8 lowp_i8
Low precision 8 bit signed integer type.
Definition: fwd.hpp:132
highp_f32vec3 f32vec3
Default single-precision floating-point vector of 3 components.
Definition: fwd.hpp:2405
highp_f32vec1 fvec1
Default single-precision floating-point vector of 1 components.
Definition: fwd.hpp:2327
detail::int32 highp_int32_t
32 bit signed integer type.
Definition: fwd.hpp:220
detail::int64 mediump_int64
Medium precision 64 bit signed integer type.
Definition: fwd.hpp:160
detail::uint64 mediump_u64
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:799
highp_u64vec3 u64vec3
Default precision 64 bit unsigned integer vector of 3 components type.
Definition: fwd.hpp:1299
aligned_highp_ivec4 aligned_ivec4
4 components vector of signed integer numbers.
highp_f32mat3x3 fmat3x3
Default single-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2359
highp_i8vec4 i8vec4
Default precision 8 bit signed integer vector of 4 components type.
Definition: fwd.hpp:376
highp_f32vec3 fvec3
Default single-precision floating-point vector of 3 components.
Definition: fwd.hpp:2335
detail::uint8 lowp_u8
Low precision 8 bit unsigned integer type.
Definition: fwd.hpp:737
detail::uint32 highp_uint32
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:813
highp_f32mat4x2 fmat4x2
Default single-precision floating-point 4x2 matrix.
Definition: fwd.hpp:2367
detail::uint16 mediump_uint16_t
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:775
detail::uint32 uint32_t
32 bit unsigned integer type.
Definition: fwd.hpp:885
detail::uint64 mediump_uint64_t
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:783
highp_vec3 vec3
3 components vector of floating-point numbers.
Definition: type_vec.hpp:461
highp_i32vec3 i32vec3
Default precision 32 bit signed integer vector of 3 components type.
Definition: fwd.hpp:531
highp_f32mat3x4 f32mat3x4
Default single-precision floating-point 3x4 matrix.
Definition: fwd.hpp:2433
aligned_highp_dvec2 aligned_dvec2
2 components vector of double-precision floating-point numbers.
aligned_highp_uvec2 aligned_uvec2
2 components vector of unsigned integer numbers.
highp_dvec2 dvec2
2 components vector of double-precision floating-point numbers.
Definition: type_vec.hpp:483
highp_u8vec4 u8vec4
Default precision 8 bit unsigned integer vector of 4 components type.
Definition: fwd.hpp:985
detail::int64 highp_int64_t
High precision 64 bit signed integer type.
Definition: fwd.hpp:224
highp_i64vec1 i64vec1
Default precision 64 bit signed integer scalar type.
Definition: fwd.hpp:682
detail::uint16 mediump_uint16
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:759
highp_vec2 vec2
2 components vector of floating-point numbers.
Definition: type_vec.hpp:456
detail::uint64 u64
64 bit unsigned integer type.
Definition: fwd.hpp:906
detail::int64 lowp_int64
Low precision 64 bit signed integer type.
Definition: fwd.hpp:112
detail::int16 lowp_int16_t
Low precision 16 bit signed integer type.
Definition: fwd.hpp:120
detail::int16 mediump_int16
Medium precision 16 bit signed integer type.
Definition: fwd.hpp:152
aligned_highp_vec1 aligned_vec1
1 component vector of floating-point numbers.
detail::int16 int16_t
16 bit signed integer type.
Definition: fwd.hpp:272
detail::int64 int64_t
64 bit signed integer type.
Definition: fwd.hpp:280
detail::int32 i32
32 bit signed integer type.
Definition: fwd.hpp:293
detail::uint32 lowp_uint32_t
Low precision 32 bit unsigned integer type.
Definition: fwd.hpp:728
aligned_highp_ivec2 aligned_ivec2
2 components vector of signed integer numbers.
aligned_highp_ivec3 aligned_ivec3
3 components vector of signed integer numbers.
detail::int16 highp_int16
High precision 16 bit signed integer type.
Definition: fwd.hpp:200
detail::uint16 uint16_t
16 bit unsigned integer type.
Definition: fwd.hpp:881
highp_ivec4 ivec4
4 components vector of signed integer numbers.
Definition: type_vec.hpp:520
highp_f32quat f32quat
Default single-precision floating-point quaternion.
Definition: fwd.hpp:2461
highp_f64vec2 f64vec2
Default double-precision floating-point vector of 2 components.
Definition: fwd.hpp:2507
detail::int64 i64
64 bit signed integer type.
Definition: fwd.hpp:297
GLM_ALIGNED_TYPEDEF(f64quat, aligned_f64quat, 32)
Double-precision floating-point aligned quaternion.
highp_f64mat2x4 f64mat2x4
Default double-precision floating-point 2x4 matrix.
Definition: fwd.hpp:2527
highp_f64mat3x3 f64mat3x3
Default double-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2535
detail::int16 highp_int16_t
High precision 16 bit signed integer type.
Definition: fwd.hpp:216
highp_f32mat3x2 fmat3x2
Default single-precision floating-point 3x2 matrix.
Definition: fwd.hpp:2355
aligned_highp_vec3 aligned_vec3
3 components vector of floating-point numbers.
highp_u8vec1 u8vec1
Default precision 8 bit unsigned integer scalar type.
Definition: fwd.hpp:973
detail::int8 highp_int8_t
High precision 8 bit signed integer type.
Definition: fwd.hpp:212