master
ブランチ master
VulkanExample / dep / include / glm / detail / glm.cpp
8.5 KB、264行 生 Blame 履歴
1/// @ref core
2/// @file glm/glm.cpp
3
4#ifndef GLM_ENABLE_EXPERIMENTAL
5#define GLM_ENABLE_EXPERIMENTAL
6#endif
7#include "../gtx/dual_quaternion.hpp"
8#include "../gtc/vec1.hpp"
9#include "../gtc/quaternion.hpp"
10#include "../ext/scalar_int_sized.hpp"
11#include "../ext/scalar_uint_sized.hpp"
12#include "../glm.hpp"
13#include "../ext.hpp"
14
15namespace glm
16{
17// tvec1 type explicit instantiation
18template struct vec<1, uint8, lowp>;
19template struct vec<1, uint16, lowp>;
20template struct vec<1, uint32, lowp>;
21template struct vec<1, uint64, lowp>;
22template struct vec<1, int8, lowp>;
23template struct vec<1, int16, lowp>;
24template struct vec<1, int32, lowp>;
25template struct vec<1, int64, lowp>;
26template struct vec<1, float32, lowp>;
27template struct vec<1, float64, lowp>;
28
29template struct vec<1, uint8, mediump>;
30template struct vec<1, uint16, mediump>;
31template struct vec<1, uint32, mediump>;
32template struct vec<1, uint64, mediump>;
33template struct vec<1, int8, mediump>;
34template struct vec<1, int16, mediump>;
35template struct vec<1, int32, mediump>;
36template struct vec<1, int64, mediump>;
37template struct vec<1, float32, mediump>;
38template struct vec<1, float64, mediump>;
39
40template struct vec<1, uint8, highp>;
41template struct vec<1, uint16, highp>;
42template struct vec<1, uint32, highp>;
43template struct vec<1, uint64, highp>;
44template struct vec<1, int8, highp>;
45template struct vec<1, int16, highp>;
46template struct vec<1, int32, highp>;
47template struct vec<1, int64, highp>;
48template struct vec<1, float32, highp>;
49template struct vec<1, float64, highp>;
50
51// tvec2 type explicit instantiation
52template struct vec<2, uint8, lowp>;
53template struct vec<2, uint16, lowp>;
54template struct vec<2, uint32, lowp>;
55template struct vec<2, uint64, lowp>;
56template struct vec<2, int8, lowp>;
57template struct vec<2, int16, lowp>;
58template struct vec<2, int32, lowp>;
59template struct vec<2, int64, lowp>;
60template struct vec<2, float32, lowp>;
61template struct vec<2, float64, lowp>;
62
63template struct vec<2, uint8, mediump>;
64template struct vec<2, uint16, mediump>;
65template struct vec<2, uint32, mediump>;
66template struct vec<2, uint64, mediump>;
67template struct vec<2, int8, mediump>;
68template struct vec<2, int16, mediump>;
69template struct vec<2, int32, mediump>;
70template struct vec<2, int64, mediump>;
71template struct vec<2, float32, mediump>;
72template struct vec<2, float64, mediump>;
73
74template struct vec<2, uint8, highp>;
75template struct vec<2, uint16, highp>;
76template struct vec<2, uint32, highp>;
77template struct vec<2, uint64, highp>;
78template struct vec<2, int8, highp>;
79template struct vec<2, int16, highp>;
80template struct vec<2, int32, highp>;
81template struct vec<2, int64, highp>;
82template struct vec<2, float32, highp>;
83template struct vec<2, float64, highp>;
84
85// tvec3 type explicit instantiation
86template struct vec<3, uint8, lowp>;
87template struct vec<3, uint16, lowp>;
88template struct vec<3, uint32, lowp>;
89template struct vec<3, uint64, lowp>;
90template struct vec<3, int8, lowp>;
91template struct vec<3, int16, lowp>;
92template struct vec<3, int32, lowp>;
93template struct vec<3, int64, lowp>;
94template struct vec<3, float32, lowp>;
95template struct vec<3, float64, lowp>;
96
97template struct vec<3, uint8, mediump>;
98template struct vec<3, uint16, mediump>;
99template struct vec<3, uint32, mediump>;
100template struct vec<3, uint64, mediump>;
101template struct vec<3, int8, mediump>;
102template struct vec<3, int16, mediump>;
103template struct vec<3, int32, mediump>;
104template struct vec<3, int64, mediump>;
105template struct vec<3, float32, mediump>;
106template struct vec<3, float64, mediump>;
107
108template struct vec<3, uint8, highp>;
109template struct vec<3, uint16, highp>;
110template struct vec<3, uint32, highp>;
111template struct vec<3, uint64, highp>;
112template struct vec<3, int8, highp>;
113template struct vec<3, int16, highp>;
114template struct vec<3, int32, highp>;
115template struct vec<3, int64, highp>;
116template struct vec<3, float32, highp>;
117template struct vec<3, float64, highp>;
118
119// tvec4 type explicit instantiation
120template struct vec<4, uint8, lowp>;
121template struct vec<4, uint16, lowp>;
122template struct vec<4, uint32, lowp>;
123template struct vec<4, uint64, lowp>;
124template struct vec<4, int8, lowp>;
125template struct vec<4, int16, lowp>;
126template struct vec<4, int32, lowp>;
127template struct vec<4, int64, lowp>;
128template struct vec<4, float32, lowp>;
129template struct vec<4, float64, lowp>;
130
131template struct vec<4, uint8, mediump>;
132template struct vec<4, uint16, mediump>;
133template struct vec<4, uint32, mediump>;
134template struct vec<4, uint64, mediump>;
135template struct vec<4, int8, mediump>;
136template struct vec<4, int16, mediump>;
137template struct vec<4, int32, mediump>;
138template struct vec<4, int64, mediump>;
139template struct vec<4, float32, mediump>;
140template struct vec<4, float64, mediump>;
141
142template struct vec<4, uint8, highp>;
143template struct vec<4, uint16, highp>;
144template struct vec<4, uint32, highp>;
145template struct vec<4, uint64, highp>;
146template struct vec<4, int8, highp>;
147template struct vec<4, int16, highp>;
148template struct vec<4, int32, highp>;
149template struct vec<4, int64, highp>;
150template struct vec<4, float32, highp>;
151template struct vec<4, float64, highp>;
152
153// tmat2x2 type explicit instantiation
154template struct mat<2, 2, float32, lowp>;
155template struct mat<2, 2, float64, lowp>;
156
157template struct mat<2, 2, float32, mediump>;
158template struct mat<2, 2, float64, mediump>;
159
160template struct mat<2, 2, float32, highp>;
161template struct mat<2, 2, float64, highp>;
162
163// tmat2x3 type explicit instantiation
164template struct mat<2, 3, float32, lowp>;
165template struct mat<2, 3, float64, lowp>;
166
167template struct mat<2, 3, float32, mediump>;
168template struct mat<2, 3, float64, mediump>;
169
170template struct mat<2, 3, float32, highp>;
171template struct mat<2, 3, float64, highp>;
172
173// tmat2x4 type explicit instantiation
174template struct mat<2, 4, float32, lowp>;
175template struct mat<2, 4, float64, lowp>;
176
177template struct mat<2, 4, float32, mediump>;
178template struct mat<2, 4, float64, mediump>;
179
180template struct mat<2, 4, float32, highp>;
181template struct mat<2, 4, float64, highp>;
182
183// tmat3x2 type explicit instantiation
184template struct mat<3, 2, float32, lowp>;
185template struct mat<3, 2, float64, lowp>;
186
187template struct mat<3, 2, float32, mediump>;
188template struct mat<3, 2, float64, mediump>;
189
190template struct mat<3, 2, float32, highp>;
191template struct mat<3, 2, float64, highp>;
192
193// tmat3x3 type explicit instantiation
194template struct mat<3, 3, float32, lowp>;
195template struct mat<3, 3, float64, lowp>;
196
197template struct mat<3, 3, float32, mediump>;
198template struct mat<3, 3, float64, mediump>;
199
200template struct mat<3, 3, float32, highp>;
201template struct mat<3, 3, float64, highp>;
202
203// tmat3x4 type explicit instantiation
204template struct mat<3, 4, float32, lowp>;
205template struct mat<3, 4, float64, lowp>;
206
207template struct mat<3, 4, float32, mediump>;
208template struct mat<3, 4, float64, mediump>;
209
210template struct mat<3, 4, float32, highp>;
211template struct mat<3, 4, float64, highp>;
212
213// tmat4x2 type explicit instantiation
214template struct mat<4, 2, float32, lowp>;
215template struct mat<4, 2, float64, lowp>;
216
217template struct mat<4, 2, float32, mediump>;
218template struct mat<4, 2, float64, mediump>;
219
220template struct mat<4, 2, float32, highp>;
221template struct mat<4, 2, float64, highp>;
222
223// tmat4x3 type explicit instantiation
224template struct mat<4, 3, float32, lowp>;
225template struct mat<4, 3, float64, lowp>;
226
227template struct mat<4, 3, float32, mediump>;
228template struct mat<4, 3, float64, mediump>;
229
230template struct mat<4, 3, float32, highp>;
231template struct mat<4, 3, float64, highp>;
232
233// tmat4x4 type explicit instantiation
234template struct mat<4, 4, float32, lowp>;
235template struct mat<4, 4, float64, lowp>;
236
237template struct mat<4, 4, float32, mediump>;
238template struct mat<4, 4, float64, mediump>;
239
240template struct mat<4, 4, float32, highp>;
241template struct mat<4, 4, float64, highp>;
242
243// tquat type explicit instantiation
244template struct qua<float32, lowp>;
245template struct qua<float64, lowp>;
246
247template struct qua<float32, mediump>;
248template struct qua<float64, mediump>;
249
250template struct qua<float32, highp>;
251template struct qua<float64, highp>;
252
253//tdualquat type explicit instantiation
254template struct tdualquat<float32, lowp>;
255template struct tdualquat<float64, lowp>;
256
257template struct tdualquat<float32, mediump>;
258template struct tdualquat<float64, mediump>;
259
260template struct tdualquat<float32, highp>;
261template struct tdualquat<float64, highp>;
262
263}//namespace glm
264