typegpu 0.5.7 → 0.5.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/chunk-7ACLI4JY.cjs +2 -0
- package/{chunk-FHOQ6WZE.cjs.map → chunk-7ACLI4JY.cjs.map} +1 -1
- package/chunk-L7HIBZAX.js +4 -0
- package/chunk-L7HIBZAX.js.map +1 -0
- package/chunk-SFECI7OX.js +2 -0
- package/chunk-SFECI7OX.js.map +1 -0
- package/chunk-SLWTVY6K.js +2 -0
- package/chunk-SLWTVY6K.js.map +1 -0
- package/chunk-TF6YPHJS.cjs +2 -0
- package/chunk-TF6YPHJS.cjs.map +1 -0
- package/chunk-V4CSEIB2.cjs +4 -0
- package/chunk-V4CSEIB2.cjs.map +1 -0
- package/data/index.cjs +1 -1
- package/data/index.cjs.map +1 -1
- package/data/index.d.cts +2 -2
- package/data/index.d.ts +2 -2
- package/data/index.js +1 -1
- package/index.cjs +18 -18
- package/index.cjs.map +1 -1
- package/index.d.cts +2 -2
- package/index.d.ts +2 -2
- package/index.js +18 -18
- package/index.js.map +1 -1
- package/package.json +2 -2
- package/std/index.cjs +1 -1
- package/std/index.cjs.map +1 -1
- package/std/index.d.cts +36 -16
- package/std/index.d.ts +36 -16
- package/std/index.js +1 -1
- package/std/index.js.map +1 -1
- package/{tgpuComputeFn-DH8_PcIR.d.cts → tgpuComputeFn-S61HxwW-.d.cts} +94 -73
- package/{tgpuComputeFn-DH8_PcIR.d.ts → tgpuComputeFn-S61HxwW-.d.ts} +94 -73
- package/chunk-5RYM4COI.js +0 -4
- package/chunk-5RYM4COI.js.map +0 -1
- package/chunk-FHOQ6WZE.cjs +0 -2
- package/chunk-ODKBWWHU.cjs +0 -4
- package/chunk-ODKBWWHU.cjs.map +0 -1
- package/chunk-SMTSXYNG.js +0 -2
- package/chunk-SMTSXYNG.js.map +0 -1
package/std/index.d.cts
CHANGED
@@ -1,17 +1,38 @@
|
|
1
|
-
import {
|
1
|
+
import { cT as TgpuDualFn, cU as AnyNumericVecInstance, cV as AnyMatInstance, cW as vBaseForMat, cX as mBaseForVec, cY as AnyFloatVecInstance, by as v3f, cZ as v3h, bu as v2f, c_ as v2h, bv as v2i, bz as v3i, bC as v4f, c$ as v4h, bD as v4i, bm as AnyVecInstance, d0 as AnyVec2Instance, bt as v2b, d1 as AnyVec3Instance, bx as v3b, bB as v4b, d2 as AnyBooleanVecInstance, d3 as atomicI32, d4 as atomicU32, ac as TgpuSampledTexture, d5 as TgpuStorageTexture, bw as v2u, bA as v3u, d6 as TexelData, bE as v4u, d7 as ChannelData, al as TgpuSampler } from '../tgpuComputeFn-S61HxwW-.cjs';
|
2
2
|
import 'tinyest';
|
3
3
|
|
4
4
|
declare const discard: TgpuDualFn<() => never>;
|
5
5
|
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
declare const
|
14
|
-
declare
|
6
|
+
type NumVec = AnyNumericVecInstance;
|
7
|
+
type Mat = AnyMatInstance;
|
8
|
+
declare function cpuAdd(lhs: number, rhs: number): number;
|
9
|
+
declare function cpuAdd<T extends NumVec>(lhs: number, rhs: T): T;
|
10
|
+
declare function cpuAdd<T extends NumVec>(lhs: T, rhs: number): T;
|
11
|
+
declare function cpuAdd<T extends NumVec | Mat>(lhs: T, rhs: T): T;
|
12
|
+
declare function cpuAdd<Lhs extends number | NumVec | Mat, Rhs extends (Lhs extends number ? number | NumVec : Lhs extends NumVec ? number | Lhs : Lhs extends Mat ? Lhs : never)>(lhs: Lhs, rhs: Rhs): Lhs | Rhs;
|
13
|
+
declare const add: TgpuDualFn<typeof cpuAdd>;
|
14
|
+
declare function cpuSub(lhs: number, rhs: number): number;
|
15
|
+
declare function cpuSub<T extends NumVec>(lhs: number, rhs: T): T;
|
16
|
+
declare function cpuSub<T extends NumVec>(lhs: T, rhs: number): T;
|
17
|
+
declare function cpuSub<T extends NumVec | Mat>(lhs: T, rhs: T): T;
|
18
|
+
declare function cpuSub<Lhs extends number | NumVec | Mat, Rhs extends (Lhs extends number ? number | NumVec : Lhs extends NumVec ? number | Lhs : Lhs extends Mat ? Lhs : never)>(lhs: Lhs, rhs: Rhs): Lhs | Rhs;
|
19
|
+
declare const sub: TgpuDualFn<typeof cpuSub>;
|
20
|
+
declare function cpuMul(lhs: number, rhs: number): number;
|
21
|
+
declare function cpuMul<MV extends NumVec | Mat>(lhs: number, rhs: MV): MV;
|
22
|
+
declare function cpuMul<MV extends NumVec | Mat>(lhs: MV, rhs: number): MV;
|
23
|
+
declare function cpuMul<V extends NumVec>(lhs: V, rhs: V): V;
|
24
|
+
declare function cpuMul<M extends Mat, V extends vBaseForMat<M>>(lhs: V, rhs: M): V;
|
25
|
+
declare function cpuMul<M extends Mat, V extends vBaseForMat<M>>(lhs: M, rhs: V): V;
|
26
|
+
declare function cpuMul<M extends Mat>(lhs: M, rhs: M): M;
|
27
|
+
declare function cpuMul<Lhs extends number | NumVec | Mat, Rhs extends (Lhs extends number ? number | NumVec | Mat : Lhs extends NumVec ? number | Lhs | mBaseForVec<Lhs> : Lhs extends Mat ? number | vBaseForMat<Lhs> | Lhs : never)>(lhs: Lhs, rhs: Rhs): Lhs | Rhs;
|
28
|
+
declare const mul: TgpuDualFn<typeof cpuMul>;
|
29
|
+
declare function cpuDiv(lhs: number, rhs: number): number;
|
30
|
+
declare function cpuDiv<MV extends NumVec>(lhs: number, rhs: MV): MV;
|
31
|
+
declare function cpuDiv<MV extends NumVec>(lhs: MV, rhs: number): MV;
|
32
|
+
declare function cpuDiv<V extends NumVec>(lhs: V, rhs: V): V;
|
33
|
+
declare function cpuDiv<Lhs extends number | NumVec, Rhs extends (Lhs extends number ? number | NumVec : Lhs extends NumVec ? number | Lhs : never)>(lhs: Lhs, rhs: Rhs): Lhs | Rhs;
|
34
|
+
declare const div: TgpuDualFn<typeof cpuDiv>;
|
35
|
+
declare const abs: TgpuDualFn<(<T extends NumVec | number>(value: T) => T)>;
|
15
36
|
declare const atan2: TgpuDualFn<(<T extends AnyFloatVecInstance | number>(y: T, x: T) => T)>;
|
16
37
|
declare const acos: TgpuDualFn<(<T extends AnyFloatVecInstance | number>(value: T) => T)>;
|
17
38
|
declare const asin: TgpuDualFn<(<T extends AnyFloatVecInstance | number>(value: T) => T)>;
|
@@ -24,7 +45,7 @@ declare const ceil: TgpuDualFn<(<T extends AnyFloatVecInstance | number>(value:
|
|
24
45
|
* @privateRemarks
|
25
46
|
* https://www.w3.org/TR/WGSL/#clamp
|
26
47
|
*/
|
27
|
-
declare const clamp: TgpuDualFn<(<T extends
|
48
|
+
declare const clamp: TgpuDualFn<(<T extends NumVec | number>(value: T, low: T, high: T) => T)>;
|
28
49
|
/**
|
29
50
|
* @privateRemarks
|
30
51
|
* https://www.w3.org/TR/WGSL/#cos-builtin
|
@@ -39,7 +60,7 @@ declare const cross: TgpuDualFn<(<T extends v3f | v3h>(a: T, b: T) => T)>;
|
|
39
60
|
* @privateRemarks
|
40
61
|
* https://www.w3.org/TR/WGSL/#dot-builtin
|
41
62
|
*/
|
42
|
-
declare const dot: TgpuDualFn<(<T extends
|
63
|
+
declare const dot: TgpuDualFn<(<T extends NumVec>(lhs: T, rhs: T) => number)>;
|
43
64
|
declare const normalize: TgpuDualFn<(<T extends AnyFloatVecInstance>(v: T) => T)>;
|
44
65
|
/**
|
45
66
|
* @privateRemarks
|
@@ -56,12 +77,12 @@ declare const length: TgpuDualFn<(<T extends AnyFloatVecInstance | number>(value
|
|
56
77
|
* @privateRemarks
|
57
78
|
* https://www.w3.org/TR/WGSL/#max-float-builtin
|
58
79
|
*/
|
59
|
-
declare const max: TgpuDualFn<(<T extends
|
80
|
+
declare const max: TgpuDualFn<(<T extends NumVec | number>(a: T, b: T) => T)>;
|
60
81
|
/**
|
61
82
|
* @privateRemarks
|
62
83
|
* https://www.w3.org/TR/WGSL/#min-float-builtin
|
63
84
|
*/
|
64
|
-
declare const min: TgpuDualFn<(<T extends
|
85
|
+
declare const min: TgpuDualFn<(<T extends NumVec | number>(a: T, b: T) => T)>;
|
65
86
|
declare const sign: TgpuDualFn<(<T extends v2f | v2h | v2i | v3f | v3h | v3i | v4f | v4h | v4i | number>(e: T) => T)>;
|
66
87
|
/**
|
67
88
|
* @privateRemarks
|
@@ -86,9 +107,8 @@ type MixOverload = {
|
|
86
107
|
declare const mix: MixOverload;
|
87
108
|
declare const reflect: TgpuDualFn<(<T extends AnyFloatVecInstance>(e1: T, e2: T) => T)>;
|
88
109
|
declare const distance: TgpuDualFn<(<T extends AnyFloatVecInstance | number>(a: T, b: T) => number)>;
|
89
|
-
declare const neg: TgpuDualFn<(<T extends
|
110
|
+
declare const neg: TgpuDualFn<(<T extends NumVec | number>(value: T) => T)>;
|
90
111
|
declare const sqrt: TgpuDualFn<(<T extends AnyFloatVecInstance | number>(value: T) => T)>;
|
91
|
-
declare const div: TgpuDualFn<(<T extends AnyNumericVecInstance | number>(lhs: T, rhs: T | number) => T)>;
|
92
112
|
|
93
113
|
/**
|
94
114
|
* Checks whether `lhs == rhs` on all components.
|
package/std/index.d.ts
CHANGED
@@ -1,17 +1,38 @@
|
|
1
|
-
import {
|
1
|
+
import { cT as TgpuDualFn, cU as AnyNumericVecInstance, cV as AnyMatInstance, cW as vBaseForMat, cX as mBaseForVec, cY as AnyFloatVecInstance, by as v3f, cZ as v3h, bu as v2f, c_ as v2h, bv as v2i, bz as v3i, bC as v4f, c$ as v4h, bD as v4i, bm as AnyVecInstance, d0 as AnyVec2Instance, bt as v2b, d1 as AnyVec3Instance, bx as v3b, bB as v4b, d2 as AnyBooleanVecInstance, d3 as atomicI32, d4 as atomicU32, ac as TgpuSampledTexture, d5 as TgpuStorageTexture, bw as v2u, bA as v3u, d6 as TexelData, bE as v4u, d7 as ChannelData, al as TgpuSampler } from '../tgpuComputeFn-S61HxwW-.js';
|
2
2
|
import 'tinyest';
|
3
3
|
|
4
4
|
declare const discard: TgpuDualFn<() => never>;
|
5
5
|
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
declare const
|
14
|
-
declare
|
6
|
+
type NumVec = AnyNumericVecInstance;
|
7
|
+
type Mat = AnyMatInstance;
|
8
|
+
declare function cpuAdd(lhs: number, rhs: number): number;
|
9
|
+
declare function cpuAdd<T extends NumVec>(lhs: number, rhs: T): T;
|
10
|
+
declare function cpuAdd<T extends NumVec>(lhs: T, rhs: number): T;
|
11
|
+
declare function cpuAdd<T extends NumVec | Mat>(lhs: T, rhs: T): T;
|
12
|
+
declare function cpuAdd<Lhs extends number | NumVec | Mat, Rhs extends (Lhs extends number ? number | NumVec : Lhs extends NumVec ? number | Lhs : Lhs extends Mat ? Lhs : never)>(lhs: Lhs, rhs: Rhs): Lhs | Rhs;
|
13
|
+
declare const add: TgpuDualFn<typeof cpuAdd>;
|
14
|
+
declare function cpuSub(lhs: number, rhs: number): number;
|
15
|
+
declare function cpuSub<T extends NumVec>(lhs: number, rhs: T): T;
|
16
|
+
declare function cpuSub<T extends NumVec>(lhs: T, rhs: number): T;
|
17
|
+
declare function cpuSub<T extends NumVec | Mat>(lhs: T, rhs: T): T;
|
18
|
+
declare function cpuSub<Lhs extends number | NumVec | Mat, Rhs extends (Lhs extends number ? number | NumVec : Lhs extends NumVec ? number | Lhs : Lhs extends Mat ? Lhs : never)>(lhs: Lhs, rhs: Rhs): Lhs | Rhs;
|
19
|
+
declare const sub: TgpuDualFn<typeof cpuSub>;
|
20
|
+
declare function cpuMul(lhs: number, rhs: number): number;
|
21
|
+
declare function cpuMul<MV extends NumVec | Mat>(lhs: number, rhs: MV): MV;
|
22
|
+
declare function cpuMul<MV extends NumVec | Mat>(lhs: MV, rhs: number): MV;
|
23
|
+
declare function cpuMul<V extends NumVec>(lhs: V, rhs: V): V;
|
24
|
+
declare function cpuMul<M extends Mat, V extends vBaseForMat<M>>(lhs: V, rhs: M): V;
|
25
|
+
declare function cpuMul<M extends Mat, V extends vBaseForMat<M>>(lhs: M, rhs: V): V;
|
26
|
+
declare function cpuMul<M extends Mat>(lhs: M, rhs: M): M;
|
27
|
+
declare function cpuMul<Lhs extends number | NumVec | Mat, Rhs extends (Lhs extends number ? number | NumVec | Mat : Lhs extends NumVec ? number | Lhs | mBaseForVec<Lhs> : Lhs extends Mat ? number | vBaseForMat<Lhs> | Lhs : never)>(lhs: Lhs, rhs: Rhs): Lhs | Rhs;
|
28
|
+
declare const mul: TgpuDualFn<typeof cpuMul>;
|
29
|
+
declare function cpuDiv(lhs: number, rhs: number): number;
|
30
|
+
declare function cpuDiv<MV extends NumVec>(lhs: number, rhs: MV): MV;
|
31
|
+
declare function cpuDiv<MV extends NumVec>(lhs: MV, rhs: number): MV;
|
32
|
+
declare function cpuDiv<V extends NumVec>(lhs: V, rhs: V): V;
|
33
|
+
declare function cpuDiv<Lhs extends number | NumVec, Rhs extends (Lhs extends number ? number | NumVec : Lhs extends NumVec ? number | Lhs : never)>(lhs: Lhs, rhs: Rhs): Lhs | Rhs;
|
34
|
+
declare const div: TgpuDualFn<typeof cpuDiv>;
|
35
|
+
declare const abs: TgpuDualFn<(<T extends NumVec | number>(value: T) => T)>;
|
15
36
|
declare const atan2: TgpuDualFn<(<T extends AnyFloatVecInstance | number>(y: T, x: T) => T)>;
|
16
37
|
declare const acos: TgpuDualFn<(<T extends AnyFloatVecInstance | number>(value: T) => T)>;
|
17
38
|
declare const asin: TgpuDualFn<(<T extends AnyFloatVecInstance | number>(value: T) => T)>;
|
@@ -24,7 +45,7 @@ declare const ceil: TgpuDualFn<(<T extends AnyFloatVecInstance | number>(value:
|
|
24
45
|
* @privateRemarks
|
25
46
|
* https://www.w3.org/TR/WGSL/#clamp
|
26
47
|
*/
|
27
|
-
declare const clamp: TgpuDualFn<(<T extends
|
48
|
+
declare const clamp: TgpuDualFn<(<T extends NumVec | number>(value: T, low: T, high: T) => T)>;
|
28
49
|
/**
|
29
50
|
* @privateRemarks
|
30
51
|
* https://www.w3.org/TR/WGSL/#cos-builtin
|
@@ -39,7 +60,7 @@ declare const cross: TgpuDualFn<(<T extends v3f | v3h>(a: T, b: T) => T)>;
|
|
39
60
|
* @privateRemarks
|
40
61
|
* https://www.w3.org/TR/WGSL/#dot-builtin
|
41
62
|
*/
|
42
|
-
declare const dot: TgpuDualFn<(<T extends
|
63
|
+
declare const dot: TgpuDualFn<(<T extends NumVec>(lhs: T, rhs: T) => number)>;
|
43
64
|
declare const normalize: TgpuDualFn<(<T extends AnyFloatVecInstance>(v: T) => T)>;
|
44
65
|
/**
|
45
66
|
* @privateRemarks
|
@@ -56,12 +77,12 @@ declare const length: TgpuDualFn<(<T extends AnyFloatVecInstance | number>(value
|
|
56
77
|
* @privateRemarks
|
57
78
|
* https://www.w3.org/TR/WGSL/#max-float-builtin
|
58
79
|
*/
|
59
|
-
declare const max: TgpuDualFn<(<T extends
|
80
|
+
declare const max: TgpuDualFn<(<T extends NumVec | number>(a: T, b: T) => T)>;
|
60
81
|
/**
|
61
82
|
* @privateRemarks
|
62
83
|
* https://www.w3.org/TR/WGSL/#min-float-builtin
|
63
84
|
*/
|
64
|
-
declare const min: TgpuDualFn<(<T extends
|
85
|
+
declare const min: TgpuDualFn<(<T extends NumVec | number>(a: T, b: T) => T)>;
|
65
86
|
declare const sign: TgpuDualFn<(<T extends v2f | v2h | v2i | v3f | v3h | v3i | v4f | v4h | v4i | number>(e: T) => T)>;
|
66
87
|
/**
|
67
88
|
* @privateRemarks
|
@@ -86,9 +107,8 @@ type MixOverload = {
|
|
86
107
|
declare const mix: MixOverload;
|
87
108
|
declare const reflect: TgpuDualFn<(<T extends AnyFloatVecInstance>(e1: T, e2: T) => T)>;
|
88
109
|
declare const distance: TgpuDualFn<(<T extends AnyFloatVecInstance | number>(a: T, b: T) => number)>;
|
89
|
-
declare const neg: TgpuDualFn<(<T extends
|
110
|
+
declare const neg: TgpuDualFn<(<T extends NumVec | number>(value: T) => T)>;
|
90
111
|
declare const sqrt: TgpuDualFn<(<T extends AnyFloatVecInstance | number>(value: T) => T)>;
|
91
|
-
declare const div: TgpuDualFn<(<T extends AnyNumericVecInstance | number>(lhs: T, rhs: T | number) => T)>;
|
92
112
|
|
93
113
|
/**
|
94
114
|
* Checks whether `lhs == rhs` on all components.
|
package/std/index.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
import{$ as i,A as S,N as r,Q as U,R as I,S as ge,T as R,V as u,W as w,X as $,Y as p,Z as l,_ as y,aa as B,ba as m,ca as x,da as o,ea as d,fa as g,ga as f,ha as T,ja as ue,ka as ye,la as ve,na as fe,t as O}from"../chunk-5RYM4COI.js";var Ae=r(()=>{throw new Error("discard() can only be used on the GPU.")},()=>({value:"discard;",dataType:O}));var K=e=>Math.sqrt(e.x**2+e.y**2),_=e=>Math.sqrt(e.x**2+e.y**2+e.z**2),W=e=>Math.sqrt(e.x**2+e.y**2+e.z**2+e.w**2),j=(e,t)=>e.x*t.x+e.y*t.y,X=(e,t)=>e.x*t.x+e.y*t.y+e.z*t.z,Z=(e,t)=>e.x*t.x+e.y*t.y+e.z*t.z+e.w*t.w,c=(e,t,n)=>Math.min(Math.max(t,e),n),z=e=>t=>u(e(t.x),e(t.y)),h=e=>t=>w(e(t.x),e(t.y)),P=e=>t=>$(e(t.x),e(t.y)),H=e=>t=>p(e(t.x),e(t.y)),b=e=>t=>y(e(t.x),e(t.y),e(t.z)),M=e=>t=>i(e(t.x),e(t.y),e(t.z)),C=e=>t=>B(e(t.x),e(t.y),e(t.z)),Q=e=>t=>m(e(t.x),e(t.y),e(t.z)),A=e=>t=>o(e(t.x),e(t.y),e(t.z),e(t.w)),V=e=>t=>d(e(t.x),e(t.y),e(t.z),e(t.w)),G=e=>t=>g(e(t.x),e(t.y),e(t.z),e(t.w)),Y=e=>t=>f(e(t.x),e(t.y),e(t.z),e(t.w)),ee=e=>(t,n)=>u(e(t.x,n.x),e(t.y,n.y)),te=e=>(t,n)=>w(e(t.x,n.x),e(t.y,n.y)),le=e=>(t,n)=>$(e(t.x,n.x),e(t.y,n.y)),xe=e=>(t,n)=>p(e(t.x,n.x),e(t.y,n.y)),ne=e=>(t,n)=>y(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z)),ae=e=>(t,n)=>i(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z)),Te=e=>(t,n)=>B(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z)),ie=e=>(t,n)=>m(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z)),re=e=>(t,n)=>o(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z),e(t.w,n.w)),se=e=>(t,n)=>d(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z),e(t.w,n.w)),we=e=>(t,n)=>g(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z),e(t.w,n.w)),de=e=>(t,n)=>f(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z),e(t.w,n.w)),s={eq:{vec2f:(e,t)=>l(e.x===t.x,e.y===t.y),vec2h:(e,t)=>l(e.x===t.x,e.y===t.y),vec2i:(e,t)=>l(e.x===t.x,e.y===t.y),vec2u:(e,t)=>l(e.x===t.x,e.y===t.y),"vec2<bool>":(e,t)=>l(e.x===t.x,e.y===t.y),vec3f:(e,t)=>x(e.x===t.x,e.y===t.y,e.z===t.z),vec3h:(e,t)=>x(e.x===t.x,e.y===t.y,e.z===t.z),vec3i:(e,t)=>x(e.x===t.x,e.y===t.y,e.z===t.z),vec3u:(e,t)=>x(e.x===t.x,e.y===t.y,e.z===t.z),"vec3<bool>":(e,t)=>x(e.x===t.x,e.y===t.y,e.z===t.z),vec4f:(e,t)=>T(e.x===t.x,e.y===t.y,e.z===t.z,e.w===t.w),vec4h:(e,t)=>T(e.x===t.x,e.y===t.y,e.z===t.z,e.w===t.w),vec4i:(e,t)=>T(e.x===t.x,e.y===t.y,e.z===t.z,e.w===t.w),vec4u:(e,t)=>T(e.x===t.x,e.y===t.y,e.z===t.z,e.w===t.w),"vec4<bool>":(e,t)=>T(e.x===t.x,e.y===t.y,e.z===t.z,e.w===t.w)},lt:{vec2f:(e,t)=>l(e.x<t.x,e.y<t.y),vec2h:(e,t)=>l(e.x<t.x,e.y<t.y),vec2i:(e,t)=>l(e.x<t.x,e.y<t.y),vec2u:(e,t)=>l(e.x<t.x,e.y<t.y),vec3f:(e,t)=>x(e.x<t.x,e.y<t.y,e.z<t.z),vec3h:(e,t)=>x(e.x<t.x,e.y<t.y,e.z<t.z),vec3i:(e,t)=>x(e.x<t.x,e.y<t.y,e.z<t.z),vec3u:(e,t)=>x(e.x<t.x,e.y<t.y,e.z<t.z),vec4f:(e,t)=>T(e.x<t.x,e.y<t.y,e.z<t.z,e.w<t.w),vec4h:(e,t)=>T(e.x<t.x,e.y<t.y,e.z<t.z,e.w<t.w),vec4i:(e,t)=>T(e.x<t.x,e.y<t.y,e.z<t.z,e.w<t.w),vec4u:(e,t)=>T(e.x<t.x,e.y<t.y,e.z<t.z,e.w<t.w)},or:{"vec2<bool>":(e,t)=>l(e.x||t.x,e.y||t.y),"vec3<bool>":(e,t)=>x(e.x||t.x,e.y||t.y,e.z||t.z),"vec4<bool>":(e,t)=>T(e.x||t.x,e.y||t.y,e.z||t.z,e.w||t.w)},all:{"vec2<bool>":e=>e.x&&e.y,"vec3<bool>":e=>e.x&&e.y&&e.z,"vec4<bool>":e=>e.x&&e.y&&e.z&&e.w},abs:{vec2f:z(Math.abs),vec2h:h(Math.abs),vec2i:P(Math.abs),vec2u:H(Math.abs),vec3f:b(Math.abs),vec3h:M(Math.abs),vec3i:C(Math.abs),vec3u:Q(Math.abs),vec4f:A(Math.abs),vec4h:V(Math.abs),vec4i:G(Math.abs),vec4u:Y(Math.abs)},atan2:{vec2f:ee(Math.atan2),vec2h:te(Math.atan2),vec3f:ne(Math.atan2),vec3h:ae(Math.atan2),vec4f:re(Math.atan2),vec4h:se(Math.atan2)},acos:{vec2f:z(Math.acos),vec2h:h(Math.acos),vec2i:P(Math.acos),vec2u:H(Math.acos),vec3f:b(Math.acos),vec3h:M(Math.acos),vec3i:C(Math.acos),vec3u:Q(Math.acos),vec4f:A(Math.acos),vec4h:V(Math.acos),vec4i:G(Math.acos),vec4u:Y(Math.acos)},asin:{vec2f:z(Math.asin),vec2h:h(Math.asin),vec2i:P(Math.asin),vec2u:H(Math.asin),vec3f:b(Math.asin),vec3h:M(Math.asin),vec3i:C(Math.asin),vec3u:Q(Math.asin),vec4f:A(Math.asin),vec4h:V(Math.asin),vec4i:G(Math.asin),vec4u:Y(Math.asin)},ceil:{vec2f:z(Math.ceil),vec2h:h(Math.ceil),vec3f:b(Math.ceil),vec3h:M(Math.ceil),vec4f:A(Math.ceil),vec4h:V(Math.ceil)},clamp:{vec2f:(e,t,n)=>u(c(e.x,t.x,n.x),c(e.y,t.y,n.y)),vec2h:(e,t,n)=>w(c(e.x,t.x,n.x),c(e.y,t.y,n.y)),vec2i:(e,t,n)=>$(c(e.x,t.x,n.x),c(e.y,t.y,n.y)),vec2u:(e,t,n)=>p(c(e.x,t.x,n.x),c(e.y,t.y,n.y)),vec3f:(e,t,n)=>y(c(e.x,t.x,n.x),c(e.y,t.y,n.y),c(e.z,t.z,n.z)),vec3h:(e,t,n)=>i(c(e.x,t.x,n.x),c(e.y,t.y,n.y),c(e.z,t.z,n.z)),vec3i:(e,t,n)=>B(c(e.x,t.x,n.x),c(e.y,t.y,n.y),c(e.z,t.z,n.z)),vec3u:(e,t,n)=>m(c(e.x,t.x,n.x),c(e.y,t.y,n.y),c(e.z,t.z,n.z)),vec4f:(e,t,n)=>o(c(e.x,t.x,n.x),c(e.y,t.y,n.y),c(e.z,t.z,n.z),c(e.w,t.w,n.w)),vec4h:(e,t,n)=>d(c(e.x,t.x,n.x),c(e.y,t.y,n.y),c(e.z,t.z,n.z),c(e.w,t.w,n.w)),vec4i:(e,t,n)=>g(c(e.x,t.x,n.x),c(e.y,t.y,n.y),c(e.z,t.z,n.z),c(e.w,t.w,n.w)),vec4u:(e,t,n)=>f(c(e.x,t.x,n.x),c(e.y,t.y,n.y),c(e.z,t.z,n.z),c(e.w,t.w,n.w))},length:{vec2f:K,vec2h:K,vec3f:_,vec3h:_,vec4f:W,vec4h:W},add:{vec2f:(e,t)=>u(e.x+t.x,e.y+t.y),vec2h:(e,t)=>w(e.x+t.x,e.y+t.y),vec2i:(e,t)=>$(e.x+t.x,e.y+t.y),vec2u:(e,t)=>p(e.x+t.x,e.y+t.y),vec3f:(e,t)=>y(e.x+t.x,e.y+t.y,e.z+t.z),vec3h:(e,t)=>i(e.x+t.x,e.y+t.y,e.z+t.z),vec3i:(e,t)=>B(e.x+t.x,e.y+t.y,e.z+t.z),vec3u:(e,t)=>m(e.x+t.x,e.y+t.y,e.z+t.z),vec4f:(e,t)=>o(e.x+t.x,e.y+t.y,e.z+t.z,e.w+t.w),vec4h:(e,t)=>d(e.x+t.x,e.y+t.y,e.z+t.z,e.w+t.w),vec4i:(e,t)=>g(e.x+t.x,e.y+t.y,e.z+t.z,e.w+t.w),vec4u:(e,t)=>f(e.x+t.x,e.y+t.y,e.z+t.z,e.w+t.w)},sub:{vec2f:(e,t)=>u(e.x-t.x,e.y-t.y),vec2h:(e,t)=>w(e.x-t.x,e.y-t.y),vec2i:(e,t)=>$(e.x-t.x,e.y-t.y),vec2u:(e,t)=>p(e.x-t.x,e.y-t.y),vec3f:(e,t)=>y(e.x-t.x,e.y-t.y,e.z-t.z),vec3h:(e,t)=>i(e.x-t.x,e.y-t.y,e.z-t.z),vec3i:(e,t)=>B(e.x-t.x,e.y-t.y,e.z-t.z),vec3u:(e,t)=>m(e.x-t.x,e.y-t.y,e.z-t.z),vec4f:(e,t)=>o(e.x-t.x,e.y-t.y,e.z-t.z,e.w-t.w),vec4h:(e,t)=>d(e.x-t.x,e.y-t.y,e.z-t.z,e.w-t.w),vec4i:(e,t)=>g(e.x-t.x,e.y-t.y,e.z-t.z,e.w-t.w),vec4u:(e,t)=>f(e.x-t.x,e.y-t.y,e.z-t.z,e.w-t.w)},mulSxV:{vec2f:(e,t)=>u(e*t.x,e*t.y),vec2h:(e,t)=>w(e*t.x,e*t.y),vec2i:(e,t)=>$(e*t.x,e*t.y),vec2u:(e,t)=>p(e*t.x,e*t.y),vec3f:(e,t)=>y(e*t.x,e*t.y,e*t.z),vec3h:(e,t)=>i(e*t.x,e*t.y,e*t.z),vec3i:(e,t)=>B(e*t.x,e*t.y,e*t.z),vec3u:(e,t)=>m(e*t.x,e*t.y,e*t.z),vec4f:(e,t)=>o(e*t.x,e*t.y,e*t.z,e*t.w),vec4h:(e,t)=>d(e*t.x,e*t.y,e*t.z,e*t.w),vec4i:(e,t)=>g(e*t.x,e*t.y,e*t.z,e*t.w),vec4u:(e,t)=>f(e*t.x,e*t.y,e*t.z,e*t.w),mat2x2f:(e,t)=>{let n=t.columns;return ue(e*n[0].x,e*n[0].y,e*n[1].x,e*n[1].y)},mat3x3f:(e,t)=>{let n=t.columns;return ye(e*n[0].x,e*n[0].y,e*n[0].z,e*n[1].x,e*n[1].y,e*n[1].z,e*n[2].x,e*n[2].y,e*n[2].z)},mat4x4f:(e,t)=>{let n=t.columns;return ve(e*n[0].x,e*n[0].y,e*n[0].z,e*n[0].w,e*n[1].x,e*n[1].y,e*n[1].z,e*n[1].w,e*n[2].x,e*n[2].y,e*n[2].z,e*n[2].w,e*n[3].x,e*n[3].y,e*n[3].z,e*n[3].w)}},mulVxV:{vec2f:(e,t)=>u(e.x*t.x,e.y*t.y),vec2h:(e,t)=>w(e.x*t.x,e.y*t.y),vec2i:(e,t)=>$(e.x*t.x,e.y*t.y),vec2u:(e,t)=>p(e.x*t.x,e.y*t.y),vec3f:(e,t)=>y(e.x*t.x,e.y*t.y,e.z*t.z),vec3h:(e,t)=>i(e.x*t.x,e.y*t.y,e.z*t.z),vec3i:(e,t)=>B(e.x*t.x,e.y*t.y,e.z*t.z),vec3u:(e,t)=>m(e.x*t.x,e.y*t.y,e.z*t.z),vec4f:(e,t)=>o(e.x*t.x,e.y*t.y,e.z*t.z,e.w*t.w),vec4h:(e,t)=>d(e.x*t.x,e.y*t.y,e.z*t.z,e.w*t.w),vec4i:(e,t)=>g(e.x*t.x,e.y*t.y,e.z*t.z,e.w*t.w),vec4u:(e,t)=>f(e.x*t.x,e.y*t.y,e.z*t.z,e.w*t.w),mat2x2f:(e,t)=>{let n=e.columns,a=t.columns;return ue(n[0].x*a[0].x+n[1].x*a[0].y,n[0].y*a[0].x+n[1].y*a[0].y,n[0].x*a[1].x+n[1].x*a[1].y,n[0].y*a[1].x+n[1].y*a[1].y)},mat3x3f:(e,t)=>{let n=e.columns,a=t.columns;return ye(n[0].x*a[0].x+n[1].x*a[0].y+n[2].x*a[0].z,n[0].y*a[0].x+n[1].y*a[0].y+n[2].y*a[0].z,n[0].z*a[0].x+n[1].z*a[0].y+n[2].z*a[0].z,n[0].x*a[1].x+n[1].x*a[1].y+n[2].x*a[1].z,n[0].y*a[1].x+n[1].y*a[1].y+n[2].y*a[1].z,n[0].z*a[1].x+n[1].z*a[1].y+n[2].z*a[1].z,n[0].x*a[2].x+n[1].x*a[2].y+n[2].x*a[2].z,n[0].y*a[2].x+n[1].y*a[2].y+n[2].y*a[2].z,n[0].z*a[2].x+n[1].z*a[2].y+n[2].z*a[2].z)},mat4x4f:(e,t)=>{let n=e.columns,a=t.columns;return ve(n[0].x*a[0].x+n[1].x*a[0].y+n[2].x*a[0].z+n[3].x*a[0].w,n[0].y*a[0].x+n[1].y*a[0].y+n[2].y*a[0].z+n[3].y*a[0].w,n[0].z*a[0].x+n[1].z*a[0].y+n[2].z*a[0].z+n[3].z*a[0].w,n[0].w*a[0].x+n[1].w*a[0].y+n[2].w*a[0].z+n[3].w*a[0].w,n[0].x*a[1].x+n[1].x*a[1].y+n[2].x*a[1].z+n[3].x*a[1].w,n[0].y*a[1].x+n[1].y*a[1].y+n[2].y*a[1].z+n[3].y*a[1].w,n[0].z*a[1].x+n[1].z*a[1].y+n[2].z*a[1].z+n[3].z*a[1].w,n[0].w*a[1].x+n[1].w*a[1].y+n[2].w*a[1].z+n[3].w*a[1].w,n[0].x*a[2].x+n[1].x*a[2].y+n[2].x*a[2].z+n[3].x*a[2].w,n[0].y*a[2].x+n[1].y*a[2].y+n[2].y*a[2].z+n[3].y*a[2].w,n[0].z*a[2].x+n[1].z*a[2].y+n[2].z*a[2].z+n[3].z*a[2].w,n[0].w*a[2].x+n[1].w*a[2].y+n[2].w*a[2].z+n[3].w*a[2].w,n[0].x*a[3].x+n[1].x*a[3].y+n[2].x*a[3].z+n[3].x*a[3].w,n[0].y*a[3].x+n[1].y*a[3].y+n[2].y*a[3].z+n[3].y*a[3].w,n[0].z*a[3].x+n[1].z*a[3].y+n[2].z*a[3].z+n[3].z*a[3].w,n[0].w*a[3].x+n[1].w*a[3].y+n[2].w*a[3].z+n[3].w*a[3].w)}},mulMxV:{mat2x2f:(e,t)=>{let n=e.columns;return u(n[0].x*t.x+n[1].x*t.y,n[0].y*t.x+n[1].y*t.y)},mat3x3f:(e,t)=>{let n=e.columns;return y(n[0].x*t.x+n[1].x*t.y+n[2].x*t.z,n[0].y*t.x+n[1].y*t.y+n[2].y*t.z,n[0].z*t.x+n[1].z*t.y+n[2].z*t.z)},mat4x4f:(e,t)=>{let n=e.columns;return o(n[0].x*t.x+n[1].x*t.y+n[2].x*t.z+n[3].x*t.w,n[0].y*t.x+n[1].y*t.y+n[2].y*t.z+n[3].y*t.w,n[0].z*t.x+n[1].z*t.y+n[2].z*t.z+n[3].z*t.w,n[0].w*t.x+n[1].w*t.y+n[2].w*t.z+n[3].w*t.w)}},mulVxM:{mat2x2f:(e,t)=>{let n=t.columns;return u(e.x*n[0].x+e.y*n[0].y,e.x*n[1].x+e.y*n[1].y)},mat3x3f:(e,t)=>{let n=t.columns;return y(e.x*n[0].x+e.y*n[0].y+e.z*n[0].z,e.x*n[1].x+e.y*n[1].y+e.z*n[1].z,e.x*n[2].x+e.y*n[2].y+e.z*n[2].z)},mat4x4f:(e,t)=>{let n=t.columns;return o(e.x*n[0].x+e.y*n[0].y+e.z*n[0].z+e.w*n[0].w,e.x*n[1].x+e.y*n[1].y+e.z*n[1].z+e.w*n[1].w,e.x*n[2].x+e.y*n[2].y+e.z*n[2].z+e.w*n[2].w,e.x*n[3].x+e.y*n[3].y+e.z*n[3].z+e.w*n[3].w)}},dot:{vec2f:j,vec2h:j,vec2i:j,vec2u:j,vec3f:X,vec3h:X,vec3i:X,vec3u:X,vec4f:Z,vec4h:Z,vec4i:Z,vec4u:Z},normalize:{vec2f:e=>{let t=K(e);return u(e.x/t,e.y/t)},vec2h:e=>{let t=K(e);return w(e.x/t,e.y/t)},vec2i:e=>{let t=K(e);return $(e.x/t,e.y/t)},vec2u:e=>{let t=K(e);return p(e.x/t,e.y/t)},vec3f:e=>{let t=_(e);return y(e.x/t,e.y/t,e.z/t)},vec3h:e=>{let t=_(e);return i(e.x/t,e.y/t,e.z/t)},vec3i:e=>{let t=_(e);return B(e.x/t,e.y/t,e.z/t)},vec3u:e=>{let t=_(e);return m(e.x/t,e.y/t,e.z/t)},vec4f:e=>{let t=W(e);return o(e.x/t,e.y/t,e.z/t,e.w/t)},vec4h:e=>{let t=W(e);return d(e.x/t,e.y/t,e.z/t,e.w/t)},vec4i:e=>{let t=W(e);return g(e.x/t,e.y/t,e.z/t,e.w/t)},vec4u:e=>{let t=W(e);return f(e.x/t,e.y/t,e.z/t,e.w/t)}},cross:{vec3f:(e,t)=>y(e.y*t.z-e.z*t.y,e.z*t.x-e.x*t.z,e.x*t.y-e.y*t.x),vec3h:(e,t)=>i(e.y*t.z-e.z*t.y,e.z*t.x-e.x*t.z,e.x*t.y-e.y*t.x)},floor:{vec2f:z(Math.floor),vec2h:h(Math.floor),vec3f:b(Math.floor),vec3h:M(Math.floor),vec4f:A(Math.floor),vec4h:V(Math.floor)},max:{vec2f:ee(Math.max),vec2h:te(Math.max),vec2i:le(Math.max),vec2u:xe(Math.max),vec3f:ne(Math.max),vec3h:ae(Math.max),vec3i:Te(Math.max),vec3u:ie(Math.max),vec4f:re(Math.max),vec4h:se(Math.max),vec4i:we(Math.max),vec4u:de(Math.max)},min:{vec2f:ee(Math.min),vec2h:te(Math.min),vec2i:le(Math.min),vec2u:xe(Math.min),vec3f:ne(Math.min),vec3h:ae(Math.min),vec3i:Te(Math.min),vec3u:ie(Math.min),vec4f:re(Math.min),vec4h:se(Math.min),vec4i:we(Math.min),vec4u:de(Math.min)},pow:{vec2f:(e,t)=>u(e.x**t.x,e.y**t.y),vec2h:(e,t)=>w(e.x**t.x,e.y**t.y),vec3f:(e,t)=>y(e.x**t.x,e.y**t.y,e.z**t.z),vec3h:(e,t)=>i(e.x**t.x,e.y**t.y,e.z**t.z),vec4f:(e,t)=>o(e.x**t.x,e.y**t.y,e.z**t.z,e.w**t.w),vec4h:(e,t)=>d(e.x**t.x,e.y**t.y,e.z**t.z,e.w**t.w)},sign:{vec2f:z(Math.sign),vec2h:h(Math.sign),vec2i:P(Math.sign),vec3f:b(Math.sign),vec3h:M(Math.sign),vec3i:C(Math.sign),vec4f:A(Math.sign),vec4h:V(Math.sign),vec4i:G(Math.sign)},sqrt:{vec2f:z(Math.sqrt),vec2h:h(Math.sqrt),vec3f:b(Math.sqrt),vec3h:M(Math.sqrt),vec4f:A(Math.sqrt),vec4h:V(Math.sqrt)},div:{vec2f:ee((e,t)=>e/t),vec2h:te((e,t)=>e/t),vec2i:le((e,t)=>e/t),vec2u:xe((e,t)=>e/t),vec3f:ne((e,t)=>e/t),vec3h:ae((e,t)=>e/t),vec3i:Te((e,t)=>e/t),vec3u:ie((e,t)=>e/t),vec4f:re((e,t)=>e/t),vec4h:se((e,t)=>e/t),vec4i:we((e,t)=>e/t),vec4u:de((e,t)=>e/t)},mix:{vec2f:(e,t,n)=>typeof n=="number"?u(e.x*(1-n)+t.x*n,e.y*(1-n)+t.y*n):u(e.x*(1-n.x)+t.x*n.x,e.y*(1-n.y)+t.y*n.y),vec2h:(e,t,n)=>typeof n=="number"?w(e.x*(1-n)+t.x*n,e.y*(1-n)+t.y*n):w(e.x*(1-n.x)+t.x*n.x,e.y*(1-n.y)+t.y*n.y),vec3f:(e,t,n)=>typeof n=="number"?y(e.x*(1-n)+t.x*n,e.y*(1-n)+t.y*n,e.z*(1-n)+t.z*n):y(e.x*(1-n.x)+t.x*n.x,e.y*(1-n.y)+t.y*n.y,e.z*(1-n.z)+t.z*n.z),vec3h:(e,t,n)=>typeof n=="number"?i(e.x*(1-n)+t.x*n,e.y*(1-n)+t.y*n,e.z*(1-n)+t.z*n):i(e.x*(1-n.x)+t.x*n.x,e.y*(1-n.y)+t.y*n.y,e.z*(1-n.z)+t.z*n.z),vec4f:(e,t,n)=>typeof n=="number"?o(e.x*(1-n)+t.x*n,e.y*(1-n)+t.y*n,e.z*(1-n)+t.z*n,e.w*(1-n)+t.w*n):o(e.x*(1-n.x)+t.x*n.x,e.y*(1-n.y)+t.y*n.y,e.z*(1-n.z)+t.z*n.z,e.w*(1-n.w)+t.w*n.w),vec4h:(e,t,n)=>typeof n=="number"?d(e.x*(1-n)+t.x*n,e.y*(1-n)+t.y*n,e.z*(1-n)+t.z*n,e.w*(1-n)+t.w*n):d(e.x*(1-n.x)+t.x*n.x,e.y*(1-n.y)+t.y*n.y,e.z*(1-n.z)+t.z*n.z,e.w*(1-n.w)+t.w*n.w)},sin:{vec2f:z(Math.sin),vec2h:h(Math.sin),vec3f:b(Math.sin),vec3h:M(Math.sin),vec4f:A(Math.sin),vec4h:V(Math.sin)},cos:{vec2f:z(Math.cos),vec2h:h(Math.cos),vec3f:b(Math.cos),vec3h:M(Math.cos),vec4f:A(Math.cos),vec4h:V(Math.cos)},exp:{vec2f:z(Math.exp),vec2h:h(Math.exp),vec3f:b(Math.exp),vec3h:M(Math.exp),vec4f:A(Math.exp),vec4h:V(Math.exp)},fract:{vec2f:z(e=>e-Math.floor(e)),vec2h:h(e=>e-Math.floor(e)),vec3f:b(e=>e-Math.floor(e)),vec3h:M(e=>e-Math.floor(e)),vec4f:A(e=>e-Math.floor(e)),vec4h:V(e=>e-Math.floor(e))},isCloseToZero:{vec2f:(e,t)=>Math.abs(e.x)<=t&&Math.abs(e.y)<=t,vec2h:(e,t)=>Math.abs(e.x)<=t&&Math.abs(e.y)<=t,vec3f:(e,t)=>Math.abs(e.x)<=t&&Math.abs(e.y)<=t&&Math.abs(e.z)<=t,vec3h:(e,t)=>Math.abs(e.x)<=t&&Math.abs(e.y)<=t&&Math.abs(e.z)<=t,vec4f:(e,t)=>Math.abs(e.x)<=t&&Math.abs(e.y)<=t&&Math.abs(e.z)<=t&&Math.abs(e.w)<=t,vec4h:(e,t)=>Math.abs(e.x)<=t&&Math.abs(e.y)<=t&&Math.abs(e.z)<=t&&Math.abs(e.w)<=t},neg:{vec2f:z(e=>-e),vec2h:h(e=>-e),vec2i:P(e=>-e),vec2u:H(e=>-e),"vec2<bool>":e=>l(!e.x,!e.y),vec3f:b(e=>-e),vec3h:M(e=>-e),vec3i:C(e=>-e),vec3u:Q(e=>-e),"vec3<bool>":e=>x(!e.x,!e.y,!e.z),vec4f:A(e=>-e),vec4h:V(e=>-e),vec4i:G(e=>-e),vec4u:Y(e=>-e),"vec4<bool>":e=>T(!e.x,!e.y,!e.z,!e.w)},select:{vec2f:(e,t,n)=>u(n.x?t.x:e.x,n.y?t.y:e.y),vec2h:(e,t,n)=>w(n.x?t.x:e.x,n.y?t.y:e.y),vec2i:(e,t,n)=>$(n.x?t.x:e.x,n.y?t.y:e.y),vec2u:(e,t,n)=>p(n.x?t.x:e.x,n.y?t.y:e.y),"vec2<bool>":(e,t,n)=>l(n.x?t.x:e.x,n.y?t.y:e.y),vec3f:(e,t,n)=>y(n.x?t.x:e.x,n.y?t.y:e.y,n.z?t.z:e.z),vec3h:(e,t,n)=>i(n.x?t.x:e.x,n.y?t.y:e.y,n.z?t.z:e.z),vec3i:(e,t,n)=>B(n.x?t.x:e.x,n.y?t.y:e.y,n.z?t.z:e.z),vec3u:(e,t,n)=>m(n.x?t.x:e.x,n.y?t.y:e.y,n.z?t.z:e.z),"vec3<bool>":(e,t,n)=>x(n.x?t.x:e.x,n.y?t.y:e.y,n.z?t.z:e.z),vec4f:(e,t,n)=>o(n.x?t.x:e.x,n.y?t.y:e.y,n.z?t.z:e.z,n.w?t.w:e.w),vec4h:(e,t,n)=>d(n.x?t.x:e.x,n.y?t.y:e.y,n.z?t.z:e.z,n.w?t.w:e.w),vec4i:(e,t,n)=>g(n.x?t.x:e.x,n.y?t.y:e.y,n.z?t.z:e.z,n.w?t.w:e.w),vec4u:(e,t,n)=>f(n.x?t.x:e.x,n.y?t.y:e.y,n.z?t.z:e.z,n.w?t.w:e.w),"vec4<bool>":(e,t,n)=>T(n.x?t.x:e.x,n.y?t.y:e.y,n.z?t.z:e.z,n.w?t.w:e.w)}};function E(e){let t=e.dataType.type;return t==="abstractInt"||t==="abstractFloat"||t==="f32"||t==="f16"||t==="i32"||t==="u32"}var Ve=r((e,t)=>s.add[e.kind](e,t),(e,t)=>({value:`(${e.value} + ${t.value})`,dataType:e.dataType}),"coerce"),L=r((e,t)=>s.sub[e.kind](e,t),(e,t)=>({value:`(${e.value} - ${t.value})`,dataType:e.dataType}),"coerce"),ze=r((e,t)=>{if(typeof e=="number")return s.mulSxV[t.kind](e,t);if(typeof e=="object"&&typeof t=="object"&&"kind"in e&&"kind"in t){let n=!e.kind.startsWith("mat"),a=!t.kind.startsWith("mat");if(!n&&a)return s.mulMxV[e.kind](e,t);if(n&&!a)return s.mulVxM[t.kind](e,t)}return s.mulVxV[t.kind](e,t)},(e,t)=>{let n=E(e)?t.dataType:e.dataType.type.startsWith("mat")?t.dataType.type.startsWith("mat")?e.dataType:t.dataType:e.dataType;return{value:`(${e.value} * ${t.value})`,dataType:n}}),Ie=r(e=>typeof e=="number"?Math.abs(e):s.abs[e.kind](e),e=>({value:`abs(${e.value})`,dataType:e.dataType})),Se=r((e,t)=>typeof e=="number"&&typeof t=="number"?Math.atan2(e,t):s.atan2[e.kind](e,t),(e,t)=>({value:`atan2(${e.value}, ${t.value})`,dataType:e.dataType})),$e=r(e=>typeof e=="number"?Math.acos(e):s.acos[e.kind](e),e=>({value:`acos(${e.value})`,dataType:e.dataType})),Be=r(e=>typeof e=="number"?Math.asin(e):s.asin[e.kind](e),e=>({value:`asin(${e.value})`,dataType:e.dataType})),ke=r(e=>typeof e=="number"?Math.ceil(e):s.ceil[e.kind](e),e=>({value:`ceil(${e.value})`,dataType:e.dataType})),Oe=r((e,t,n)=>typeof e=="number"?Math.min(Math.max(t,e),n):s.clamp[e.kind](e,t,n),(e,t,n)=>({value:`clamp(${e.value}, ${t.value}, ${n.value})`,dataType:e.dataType})),De=r(e=>typeof e=="number"?Math.cos(e):s.cos[e.kind](e),e=>({value:`cos(${e.value})`,dataType:e.dataType})),Fe=r((e,t)=>s.cross[e.kind](e,t),(e,t)=>({value:`cross(${e.value}, ${t.value})`,dataType:e.dataType})),he=r((e,t)=>s.dot[e.kind](e,t),(e,t)=>({value:`dot(${e.value}, ${t.value})`,dataType:R})),Ue=r(e=>s.normalize[e.kind](e),e=>({value:`normalize(${e.value})`,dataType:e.dataType})),Ne=r(e=>typeof e=="number"?Math.floor(e):s.floor[e.kind](e),e=>({value:`floor(${e.value})`,dataType:e.dataType})),Re=r(e=>typeof e=="number"?e-Math.floor(e):s.fract[e.kind](e),e=>({value:`fract(${e.value})`,dataType:e.dataType})),be=r(e=>typeof e=="number"?Math.abs(e):s.length[e.kind](e),e=>({value:`length(${e.value})`,dataType:R})),Ke=r((e,t)=>typeof e=="number"?Math.max(e,t):s.max[e.kind](e,t),(e,t)=>({value:`max(${e.value}, ${t.value})`,dataType:e.dataType}),"coerce"),_e=r((e,t)=>typeof e=="number"?Math.min(e,t):s.min[e.kind](e,t),(e,t)=>({value:`min(${e.value}, ${t.value})`,dataType:e.dataType}),"coerce"),We=r(e=>typeof e=="number"?Math.sign(e):s.sign[e.kind](e),e=>({value:`sign(${e.value})`,dataType:e.dataType})),Ee=r(e=>typeof e=="number"?Math.sin(e):s.sin[e.kind](e),e=>({value:`sin(${e.value})`,dataType:e.dataType})),qe=r(e=>typeof e=="number"?Math.exp(e):s.exp[e.kind](e),e=>({value:`exp(${e.value})`,dataType:e.dataType})),Pe=r((e,t)=>{if(typeof e=="number"&&typeof t=="number")return e**t;if(typeof e=="object"&&typeof t=="object"&&"kind"in e&&"kind"in t)return s.pow[e.kind](e,t);throw new Error("Invalid arguments to pow()")},(e,t)=>({value:`pow(${e.value}, ${t.value})`,dataType:e.dataType})),Ce=r((e,t,n)=>{if(typeof e=="number"){if(typeof n!="number"||typeof t!="number")throw new Error("When e1 and e2 are numbers, the blend factor must be a number.");return e*(1-n)+t*n}if(typeof e=="number"||typeof t=="number")throw new Error("e1 and e2 need to both be vectors of the same kind.");return s.mix[e.kind](e,t,n)},(e,t,n)=>({value:`mix(${e.value}, ${t.value}, ${n.value})`,dataType:e.dataType})),Ge=r((e,t)=>L(e,ze(2*he(t,e),t)),(e,t)=>({value:`reflect(${e.value}, ${t.value})`,dataType:e.dataType})),Le=r((e,t)=>typeof e=="number"&&typeof t=="number"?Math.abs(e-t):be(L(e,t)),(e,t)=>({value:`distance(${e.value}, ${t.value})`,dataType:R})),Je=r(e=>typeof e=="number"?-e:s.neg[e.kind](e),e=>({value:`-(${e.value})`,dataType:e.dataType})),je=r(e=>typeof e=="number"?Math.sqrt(e):s.sqrt[e.kind](e),e=>({value:`sqrt(${e.value})`,dataType:e.dataType})),Xe=r((e,t)=>typeof e=="number"&&typeof t=="number"?e/t:typeof t=="number"?s.mulSxV[e.kind](1/t,e):s.div[e.kind](e,t),(e,t)=>({value:`(${e.value} / ${t.value})`,dataType:e.dataType}));function q(e){return e.dataType.type.includes("2")?l:e.dataType.type.includes("3")?x:T}var Ze=r((e,t)=>me(J(e,t)),(e,t)=>({value:`all(${e.value} == ${t.value})`,dataType:U})),J=r((e,t)=>s.eq[e.kind](e,t),(e,t)=>({value:`(${e.value} == ${t.value})`,dataType:q(e)})),He=r((e,t)=>D(J(e,t)),(e,t)=>({value:`(${e.value} != ${t.value})`,dataType:q(e)})),ce=r((e,t)=>s.lt[e.kind](e,t),(e,t)=>({value:`(${e.value} < ${t.value})`,dataType:q(e)})),Qe=r((e,t)=>pe(ce(e,t),J(e,t)),(e,t)=>({value:`(${e.value} <= ${t.value})`,dataType:q(e)})),Ye=r((e,t)=>Me(D(ce(e,t)),D(J(e,t))),(e,t)=>({value:`(${e.value} > ${t.value})`,dataType:q(e)})),et=r((e,t)=>D(ce(e,t)),(e,t)=>({value:`(${e.value} >= ${t.value})`,dataType:q(e)})),D=r(e=>s.neg[e.kind](e),e=>({value:`!(${e.value})`,dataType:e.dataType})),pe=r((e,t)=>s.or[e.kind](e,t),(e,t)=>({value:`(${e.value} | ${t.value})`,dataType:e.dataType})),Me=r((e,t)=>D(pe(D(e),D(t))),(e,t)=>({value:`(${e.value} & ${t.value})`,dataType:e.dataType})),me=r(e=>s.all[e.kind](e),e=>({value:`all(${e.value})`,dataType:U})),tt=r(e=>!me(D(e)),e=>({value:`any(${e.value})`,dataType:U})),nt=r((e,t,n=.01)=>typeof e=="number"&&typeof t=="number"?Math.abs(e-t)<n:typeof e!="number"&&typeof t!="number"?s.isCloseToZero[e.kind](L(e,t),n):!1,(e,t,n={value:.01,dataType:R})=>E(e)&&E(t)?{value:`(abs(f32(${e.value}) - f32(${t.value})) <= ${n.value})`,dataType:U}:!E(e)&&!E(t)?{value:`all(abs(${e.value} - ${t.value}) <= (${e.value} - ${e.value}) + ${n.value})`,dataType:U}:{value:"false",dataType:U}),at=r((e,t,n)=>typeof n=="boolean"?n?t:e:s.select[e.kind](e,t,n),(e,t,n)=>({value:`select(${e.value}, ${t.value}, ${n.value})`,dataType:e.dataType}));var rt=r(()=>console.warn("workgroupBarrier is a no-op outside of GPU mode."),()=>({value:"workgroupBarrier()",dataType:O})),st=r(()=>console.warn("storageBarrier is a no-op outside of GPU mode."),()=>({value:"storageBarrier()",dataType:O})),ct=r(()=>console.warn("textureBarrier is a no-op outside of GPU mode."),()=>({value:"textureBarrier()",dataType:O})),ot=r(e=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},e=>{if(S(e.dataType)&&e.dataType.type==="atomic")return{value:`atomicLoad(&${e.value})`,dataType:e.dataType.inner};throw new Error(`Invalid atomic type: ${JSON.stringify(e.dataType,null,2)}`)}),ut=r((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(!S(e.dataType)||e.dataType.type!=="atomic")throw new Error(`Invalid atomic type: ${JSON.stringify(e.dataType,null,2)}`);return{value:`atomicStore(&${e.value}, ${t.value})`,dataType:O}}),N=(e,t)=>e.dataType.type==="atomic"&&e.dataType.inner.type==="i32"?[e.dataType,ge]:[e.dataType,I],yt=r((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(S(e.dataType)&&e.dataType.type==="atomic")return{value:`atomicAdd(&${e.value}, ${t.value})`,dataType:e.dataType.inner};throw new Error(`Invalid atomic type: ${JSON.stringify(e.dataType,null,2)}`)},N),vt=r((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(S(e.dataType)&&e.dataType.type==="atomic")return{value:`atomicSub(&${e.value}, ${t.value})`,dataType:e.dataType.inner};throw new Error(`Invalid atomic type: ${JSON.stringify(e.dataType,null,2)}`)},N),lt=r((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(S(e.dataType)&&e.dataType.type==="atomic")return{value:`atomicMax(&${e.value}, ${t.value})`,dataType:e.dataType.inner};throw new Error(`Invalid atomic type: ${JSON.stringify(e.dataType,null,2)}`)},N),xt=r((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(S(e.dataType)&&e.dataType.type==="atomic")return{value:`atomicMin(&${e.value}, ${t.value})`,dataType:e.dataType.inner};throw new Error(`Invalid atomic type: ${JSON.stringify(e.dataType,null,2)}`)},N),Tt=r((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(S(e.dataType)&&e.dataType.type==="atomic")return{value:`atomicAnd(&${e.value}, ${t.value})`,dataType:e.dataType.inner};throw new Error(`Invalid atomic type: ${JSON.stringify(e.dataType,null,2)}`)},N),it=r((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(S(e.dataType)&&e.dataType.type==="atomic")return{value:`atomicOr(&${e.value}, ${t.value})`,dataType:e.dataType.inner};throw new Error(`Invalid atomic type: ${JSON.stringify(e.dataType,null,2)}`)},N),wt=r((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(S(e.dataType)&&e.dataType.type==="atomic")return{value:`atomicXor(&${e.value}, ${t.value})`,dataType:e.dataType.inner};throw new Error(`Invalid atomic type: ${JSON.stringify(e.dataType,null,2)}`)},N);var dt=r(e=>e.length,e=>({value:`arrayLength(${e.value})`,dataType:I}),e=>[fe(e.dataType)]);import*as k from"typed-binary";var pt=r(e=>{let t=new ArrayBuffer(4);new k.BufferWriter(t).writeUint32(e);let a=new k.BufferReader(t);return u(a.readFloat16(),a.readFloat16())},e=>({value:`unpack2x16float(${e.value})`,dataType:u})),mt=r(e=>{let t=new ArrayBuffer(4),n=new k.BufferWriter(t);n.writeFloat16(e.x),n.writeFloat16(e.y);let a=new k.BufferReader(t);return I(a.readUint32())},e=>({value:`pack2x16float(${e.value})`,dataType:I})),gt=r(e=>{let t=new ArrayBuffer(4);new k.BufferWriter(t).writeUint32(e);let a=new k.BufferReader(t);return o(a.readUint8()/255,a.readUint8()/255,a.readUint8()/255,a.readUint8()/255)},e=>({value:`unpack4x8unorm(${e.value})`,dataType:o})),ft=r(e=>{let t=new ArrayBuffer(4),n=new k.BufferWriter(t);n.writeUint8(e.x*255),n.writeUint8(e.y*255),n.writeUint8(e.z*255),n.writeUint8(e.w*255);let a=new k.BufferReader(t);return I(a.readUint32())},e=>({value:`pack4x8unorm(${e.value})`,dataType:I}));var zt=r((e,t,n,a,v)=>{throw new Error("Texture sampling is not supported outside of GPU mode.")},(e,t,n,a,v)=>{let F=[e,t,n];return a!==void 0&&F.push(a),v!==void 0&&F.push(v),{value:`textureSample(${F.map(oe=>oe.value).join(", ")})`,dataType:o}}),ht=r((e,t,n,a,v)=>{throw new Error("Texture sampling is not supported outside of GPU mode.")},(e,t,n,a,v)=>{let F=[e,t,n,a];return v!==void 0&&F.push(v),{value:`textureSampleLevel(${F.map(oe=>oe.value).join(", ")})`,dataType:o}}),bt={u32:f,i32:g,f32:o},Mt=r((e,t,n)=>{throw new Error("Texture loading is not supported outside of GPU mode.")},(e,t,n)=>{let a=[e,t];n!==void 0&&a.push(n);let v=e.dataType;return{value:`textureLoad(${a.map(F=>F.value).join(", ")})`,dataType:"texelDataType"in v?v.texelDataType:bt[v.channelDataType.type]}}),At=r((e,t,n,a)=>{throw new Error("Texture storing is not supported outside of GPU mode.")},(e,t,n,a)=>({value:`textureStore(${[e,t,n,a].filter(v=>v!==void 0).map(v=>v.value).join(", ")})`,dataType:O})),Vt=r((e,t)=>{throw new Error("Texture dimensions are not supported outside of GPU mode.")},(e,t)=>{let n=e.dataType.dimension;return{value:`textureDimensions(${e.value}${t!==void 0?`, ${t.value}`:""})`,dataType:n==="1d"?I:n==="3d"?m:p}});export{Ie as abs,$e as acos,Ve as add,me as all,Ze as allEq,Me as and,tt as any,dt as arrayLength,Be as asin,Se as atan2,yt as atomicAdd,Tt as atomicAnd,ot as atomicLoad,lt as atomicMax,xt as atomicMin,it as atomicOr,ut as atomicStore,vt as atomicSub,wt as atomicXor,ke as ceil,Oe as clamp,De as cos,Fe as cross,Ae as discard,Le as distance,Xe as div,he as dot,J as eq,qe as exp,Ne as floor,Re as fract,et as ge,Ye as gt,nt as isCloseTo,Qe as le,be as length,ce as lt,Ke as max,_e as min,Ce as mix,ze as mul,He as ne,Je as neg,Ue as normalize,D as not,pe as or,mt as pack2x16float,ft as pack4x8unorm,Pe as pow,Ge as reflect,at as select,We as sign,Ee as sin,je as sqrt,st as storageBarrier,L as sub,ct as textureBarrier,Vt as textureDimensions,Mt as textureLoad,zt as textureSample,ht as textureSampleLevel,At as textureStore,pt as unpack2x16float,gt as unpack4x8unorm,rt as workgroupBarrier};
|
1
|
+
import{A as de,B as ie,C as me,D as se,E as le,a as l,b as f,d as J,e as I,f as C,g as M,h as q,i as j,j as R,k as X,l as z,m as Z,n as H,o as K,p as Q,q as Y,r as ee,s as te,t as re,u as ae,v as oe,w as ne,x as ue,y as pe,z as Te}from"../chunk-SLWTVY6K.js";import{Aa as h,Ga as F,I as T,J as B,L as V,ba as r,ea as a,fa as U,ha as c,ia as p,ja as k,ka as E,ma as A,pa as O,qa as _,ua as P,va as G,wa as x,y as i,ya as L,z as w,za as N}from"../chunk-L7HIBZAX.js";var ce=a(()=>{throw new Error("discard() can only be used on the GPU.")},()=>r("discard;",i));function v(e){return e.dataType.type.includes("2")?_:e.dataType.type.includes("3")?G:h}var xe=a((e,t)=>D(g(e,t)),(e,t)=>r(`all(${e.value} == ${t.value})`,c)),g=a((e,t)=>l.eq[e.kind](e,t),(e,t)=>r(`(${e.value} == ${t.value})`,v(e))),ye=a((e,t)=>m(g(e,t)),(e,t)=>r(`(${e.value} != ${t.value})`,v(e))),S=a((e,t)=>l.lt[e.kind](e,t),(e,t)=>r(`(${e.value} < ${t.value})`,v(e))),ve=a((e,t)=>$(S(e,t),g(e,t)),(e,t)=>r(`(${e.value} <= ${t.value})`,v(e))),fe=a((e,t)=>W(m(S(e,t)),m(g(e,t))),(e,t)=>r(`(${e.value} > ${t.value})`,v(e))),ge=a((e,t)=>m(S(e,t)),(e,t)=>r(`(${e.value} >= ${t.value})`,v(e))),m=a(e=>l.neg[e.kind](e),e=>r(`!(${e.value})`,e.dataType)),$=a((e,t)=>l.or[e.kind](e,t),(e,t)=>r(`(${e.value} | ${t.value})`,e.dataType)),W=a((e,t)=>m($(m(e),m(t))),(e,t)=>r(`(${e.value} & ${t.value})`,e.dataType)),D=a(e=>l.all[e.kind](e),e=>r(`all(${e.value})`,c)),Se=a(e=>!D(m(e)),e=>r(`any(${e.value})`,c)),be=a((e,t,o=.01)=>typeof e=="number"&&typeof t=="number"?Math.abs(e-t)<o:w(e)&&w(t)?l.isCloseToZero[e.kind](I(e,t),o):!1,(e,t,o=r(.01,E))=>f(e)&&f(t)?r(`(abs(f32(${e.value}) - f32(${t.value})) <= ${o.value})`,c):!f(e)&&!f(t)?r(`all(abs(${e.value} - ${t.value}) <= (${e.value} - ${e.value}) + ${o.value})`,c):r("false",c)),we=a((e,t,o)=>typeof o=="boolean"?o?t:e:l.select[e.kind](e,t,o),(e,t,o)=>r(`select(${e.value}, ${t.value}, ${o.value})`,e.dataType));var Ae=a(()=>console.warn("workgroupBarrier is a no-op outside of GPU mode."),()=>r("workgroupBarrier()",i)),Ie=a(()=>console.warn("storageBarrier is a no-op outside of GPU mode."),()=>r("storageBarrier()",i)),$e=a(()=>console.warn("textureBarrier is a no-op outside of GPU mode."),()=>r("textureBarrier()",i)),De=a(e=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},e=>{if(T(e.dataType)&&e.dataType.type==="atomic")return r(`atomicLoad(&${e.value})`,e.dataType.inner);throw new Error(`Invalid atomic type: ${JSON.stringify(e.dataType,null,2)}`)}),Be=a((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(!T(e.dataType)||e.dataType.type!=="atomic")throw new Error(`Invalid atomic type: ${JSON.stringify(e.dataType,null,2)}`);return r(`atomicStore(&${e.value}, ${t.value})`,i)}),y=(e,t)=>e.dataType.type==="atomic"&&e.dataType.inner.type==="i32"?[e.dataType,k]:[e.dataType,p],Ve=a((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(T(e.dataType)&&e.dataType.type==="atomic")return r(`atomicAdd(&${e.value}, ${t.value})`,e.dataType.inner);throw new Error(`Invalid atomic type: ${JSON.stringify(e.dataType,null,2)}`)},y),Ue=a((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(T(e.dataType)&&e.dataType.type==="atomic")return r(`atomicSub(&${e.value}, ${t.value})`,e.dataType.inner);throw new Error(`Invalid atomic type: ${JSON.stringify(e.dataType,null,2)}`)},y),ke=a((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(T(e.dataType)&&e.dataType.type==="atomic")return r(`atomicMax(&${e.value}, ${t.value})`,e.dataType.inner);throw new Error(`Invalid atomic type: ${JSON.stringify(e.dataType,null,2)}`)},y),Ee=a((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(T(e.dataType)&&e.dataType.type==="atomic")return r(`atomicMin(&${e.value}, ${t.value})`,e.dataType.inner);throw new Error(`Invalid atomic type: ${JSON.stringify(e.dataType,null,2)}`)},y),Oe=a((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(T(e.dataType)&&e.dataType.type==="atomic")return r(`atomicAnd(&${e.value}, ${t.value})`,e.dataType.inner);throw new Error(`Invalid atomic type: ${JSON.stringify(e.dataType,null,2)}`)},y),_e=a((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(T(e.dataType)&&e.dataType.type==="atomic")return r(`atomicOr(&${e.value}, ${t.value})`,e.dataType.inner);throw new Error(`Invalid atomic type: ${JSON.stringify(e.dataType,null,2)}`)},y),Pe=a((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(T(e.dataType)&&e.dataType.type==="atomic")return r(`atomicXor(&${e.value}, ${t.value})`,e.dataType.inner);throw new Error(`Invalid atomic type: ${JSON.stringify(e.dataType,null,2)}`)},y);var Ge=a(e=>e.length,e=>V(e.dataType)&&B(e.dataType.inner)&&e.dataType.inner.elementCount>0?r(String(e.dataType.inner.elementCount),U):r(`arrayLength(${e.value})`,p),e=>[F(e.dataType)]);import*as d from"typed-binary";var Le=a(e=>{let t=new ArrayBuffer(4);new d.BufferWriter(t).writeUint32(e);let n=new d.BufferReader(t);return A(n.readFloat16(),n.readFloat16())},e=>r(`unpack2x16float(${e.value})`,A)),Ne=a(e=>{let t=new ArrayBuffer(4),o=new d.BufferWriter(t);o.writeFloat16(e.x),o.writeFloat16(e.y);let n=new d.BufferReader(t);return p(n.readUint32())},e=>r(`pack2x16float(${e.value})`,p)),he=a(e=>{let t=new ArrayBuffer(4);new d.BufferWriter(t).writeUint32(e);let n=new d.BufferReader(t);return x(n.readUint8()/255,n.readUint8()/255,n.readUint8()/255,n.readUint8()/255)},e=>r(`unpack4x8unorm(${e.value})`,x)),Fe=a(e=>{let t=new ArrayBuffer(4),o=new d.BufferWriter(t);o.writeUint8(e.x*255),o.writeUint8(e.y*255),o.writeUint8(e.z*255),o.writeUint8(e.w*255);let n=new d.BufferReader(t);return p(n.readUint32())},e=>r(`pack4x8unorm(${e.value})`,p));var We=a((e,t,o,n,u)=>{throw new Error("Texture sampling is not supported outside of GPU mode.")},(e,t,o,n,u)=>{let s=[e,t,o];return n!==void 0&&s.push(n),u!==void 0&&s.push(u),r(`textureSample(${s.map(b=>b.value).join(", ")})`,x)}),Je=a((e,t,o,n,u)=>{throw new Error("Texture sampling is not supported outside of GPU mode.")},(e,t,o,n,u)=>{let s=[e,t,o,n];return u!==void 0&&s.push(u),r(`textureSampleLevel(${s.map(b=>b.value).join(", ")})`,x)}),Ce={u32:N,i32:L,f32:x},Me=a((e,t,o)=>{throw new Error("Texture loading is not supported outside of GPU mode.")},(e,t,o)=>{let n=[e,t];o!==void 0&&n.push(o);let u=e.dataType;return r(`textureLoad(${n.map(s=>s.value).join(", ")})`,"texelDataType"in u?u.texelDataType:Ce[u.channelDataType.type])}),qe=a((e,t,o,n)=>{throw new Error("Texture storing is not supported outside of GPU mode.")},(e,t,o,n)=>r(`textureStore(${[e,t,o,n].filter(u=>u!==void 0).map(u=>u.value).join(", ")})`,i)),je=a((e,t)=>{throw new Error("Texture dimensions are not supported outside of GPU mode.")},(e,t)=>{let o=e.dataType.dimension;return r(`textureDimensions(${e.value}${t!==void 0?`, ${t.value}`:""})`,o==="1d"?p:o==="3d"?P:O)});export{q as abs,R as acos,J as add,D as all,xe as allEq,W as and,Se as any,Ge as arrayLength,X as asin,j as atan2,Ve as atomicAdd,Oe as atomicAnd,De as atomicLoad,ke as atomicMax,Ee as atomicMin,_e as atomicOr,Be as atomicStore,Ue as atomicSub,Pe as atomicXor,z as ceil,Z as clamp,H as cos,K as cross,ce as discard,me as distance,M as div,Q as dot,g as eq,pe as exp,ee as floor,te as fract,ge,fe as gt,be as isCloseTo,ve as le,re as length,S as lt,ae as max,oe as min,de as mix,C as mul,ye as ne,se as neg,Y as normalize,m as not,$ as or,Ne as pack2x16float,Fe as pack4x8unorm,Te as pow,ie as reflect,we as select,ne as sign,ue as sin,le as sqrt,Ie as storageBarrier,I as sub,$e as textureBarrier,je as textureDimensions,Me as textureLoad,We as textureSample,Je as textureSampleLevel,qe as textureStore,Le as unpack2x16float,he as unpack4x8unorm,Ae as workgroupBarrier};
|
2
2
|
//# sourceMappingURL=index.js.map
|