UNPKG

1.64 kBJavaScriptView Raw
1function booleanArray(size) {
2 const array = new Array(size);
3 for (let i = 0; i < array.length; i++) {
4 array[i] = false;
5 }
6 return array;
7}
8function defaultValue(type, size) {
9 switch (type) {
10 case "float":
11 return 0;
12 case "vec2":
13 return new Float32Array(2 * size);
14 case "vec3":
15 return new Float32Array(3 * size);
16 case "vec4":
17 return new Float32Array(4 * size);
18 case "int":
19 case "uint":
20 case "sampler2D":
21 case "sampler2DArray":
22 return 0;
23 case "ivec2":
24 return new Int32Array(2 * size);
25 case "ivec3":
26 return new Int32Array(3 * size);
27 case "ivec4":
28 return new Int32Array(4 * size);
29 case "uvec2":
30 return new Uint32Array(2 * size);
31 case "uvec3":
32 return new Uint32Array(3 * size);
33 case "uvec4":
34 return new Uint32Array(4 * size);
35 case "bool":
36 return false;
37 case "bvec2":
38 return booleanArray(2 * size);
39 case "bvec3":
40 return booleanArray(3 * size);
41 case "bvec4":
42 return booleanArray(4 * size);
43 case "mat2":
44 return new Float32Array([
45 1,
46 0,
47 0,
48 1
49 ]);
50 case "mat3":
51 return new Float32Array([
52 1,
53 0,
54 0,
55 0,
56 1,
57 0,
58 0,
59 0,
60 1
61 ]);
62 case "mat4":
63 return new Float32Array([
64 1,
65 0,
66 0,
67 0,
68 0,
69 1,
70 0,
71 0,
72 0,
73 0,
74 1,
75 0,
76 0,
77 0,
78 0,
79 1
80 ]);
81 }
82 return null;
83}
84
85export { defaultValue };
86//# sourceMappingURL=defaultValue.mjs.map