@thi.ng/shader-ast-js 1.0.26 → 1.0.28

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/env/uvec4.js CHANGED
@@ -13,27 +13,30 @@ import { subNU4, subU4 } from "@thi.ng/vectors/subi";
13
13
  import { POOL_UVEC4 } from "../pool.js";
14
14
  import { VEC4 } from "./vec4.js";
15
15
  const { next, uniform } = POOL_UVEC4;
16
- export const UVEC4 = {
17
- ...VEC4(POOL_UVEC4),
18
- add: (a, b) => addU4(next(), a, b),
19
- addvn: (a, b) => addNU4(next(), a, b),
20
- addnv: (a, b) => addNU4(next(), b, a),
21
- div: (a, b) => divU4(next(), a, b),
22
- divvn: (a, b) => divNU4(next(), a, b),
23
- divnv: (a, b) => divU4(null, uniform(a), b),
24
- modi: (a, b) => fmod4(next(), a, b),
25
- modivn: (a, b) => fmodN4(next(), a, b),
26
- modinv: (a, b) => fmod4(null, uniform(a), b),
27
- mul: (a, b) => mulU4(next(), a, b),
28
- mulvn: (a, b) => mulNU4(next(), a, b),
29
- mulnv: (a, b) => mulNU4(next(), b, a),
30
- sub: (a, b) => subU4(next(), a, b),
31
- subvn: (a, b) => subNU4(next(), a, b),
32
- subnv: (a, b) => subU4(null, uniform(a), b),
33
- bitand: (a, b) => bitAndU4(next(), a, b),
34
- lshift: (a, b) => lshiftU4(next(), a, b),
35
- bitnot1: (a) => bitNotU4(next(), a),
36
- bitor: (a, b) => bitOrU4(next(), a, b),
37
- rshift: (a, b) => rshiftU4(next(), a, b),
38
- bitxor: (a, b) => bitXorU4(next(), a, b),
16
+ const UVEC4 = {
17
+ ...VEC4(POOL_UVEC4),
18
+ add: (a, b) => addU4(next(), a, b),
19
+ addvn: (a, b) => addNU4(next(), a, b),
20
+ addnv: (a, b) => addNU4(next(), b, a),
21
+ div: (a, b) => divU4(next(), a, b),
22
+ divvn: (a, b) => divNU4(next(), a, b),
23
+ divnv: (a, b) => divU4(null, uniform(a), b),
24
+ modi: (a, b) => fmod4(next(), a, b),
25
+ modivn: (a, b) => fmodN4(next(), a, b),
26
+ modinv: (a, b) => fmod4(null, uniform(a), b),
27
+ mul: (a, b) => mulU4(next(), a, b),
28
+ mulvn: (a, b) => mulNU4(next(), a, b),
29
+ mulnv: (a, b) => mulNU4(next(), b, a),
30
+ sub: (a, b) => subU4(next(), a, b),
31
+ subvn: (a, b) => subNU4(next(), a, b),
32
+ subnv: (a, b) => subU4(null, uniform(a), b),
33
+ bitand: (a, b) => bitAndU4(next(), a, b),
34
+ lshift: (a, b) => lshiftU4(next(), a, b),
35
+ bitnot1: (a) => bitNotU4(next(), a),
36
+ bitor: (a, b) => bitOrU4(next(), a, b),
37
+ rshift: (a, b) => rshiftU4(next(), a, b),
38
+ bitxor: (a, b) => bitXorU4(next(), a, b)
39
+ };
40
+ export {
41
+ UVEC4
39
42
  };
package/env/vec2.js CHANGED
@@ -51,66 +51,69 @@ import { sub2 } from "@thi.ng/vectors/sub";
51
51
  import { subN2 } from "@thi.ng/vectors/subn";
52
52
  import { tan2 } from "@thi.ng/vectors/tan";
53
53
  import { Pool } from "../pool.js";
54
- export const VEC2 = ({ next, uniform }) => ({
55
- abs: (a) => abs2(next(), a),
56
- acos: (a) => acos2(next(), a),
57
- add: (a, b) => add2(next(), a, b),
58
- addnv: (a, b) => addN2(next(), b, a),
59
- addvn: (a, b) => addN2(next(), a, b),
60
- asin: (a) => asin2(next(), a),
61
- atan: (a) => atan2(next(), a),
62
- atannn: (a, b) => atan_22(next(), a, b),
63
- ceil: (a) => ceil2(next(), a),
64
- clamp: (x, a, b) => clamp2(next(), x, a, b),
65
- cos: (a) => cos2(next(), a),
66
- dec: (a) => subN2(next(), a, 1),
67
- degrees: (a) => degrees2(next(), a),
68
- dFdx: () => ZERO2,
69
- dFdy: () => ZERO2,
70
- distance: dist,
71
- div: (a, b) => div2(next(), a, b),
72
- divnv: (a, b) => div2(null, uniform(a), b),
73
- divvn: (a, b) => divN2(next(), a, b),
74
- dot: (a, b) => dot2(a, b),
75
- exp: (a) => exp2(next(), a),
76
- exp2: (a) => exp_22(next(), a),
77
- faceForward: (a, b, c) => faceForward(next(), a, b, c),
78
- floor: (a) => floor2(next(), a),
79
- fract: (a) => fract2(next(), a),
80
- fwidth: () => ZERO2,
81
- inc: (a) => addN2(next(), a, 1),
82
- inversesqrt: (a) => invSqrt2(next(), a),
83
- length: mag,
84
- log: (a) => log2(next(), a),
85
- log2: (a) => log_22(next(), a),
86
- max: (a, b) => max2(next(), a, b),
87
- min: (a, b) => min2(next(), a, b),
88
- mix: (a, b, t) => mix2(next(), a, b, t),
89
- mixn: (a, b, t) => mixN2(next(), a, b, t),
90
- mod: (a, b) => mod2(next(), a, b),
91
- modn: (a, b) => modN2(next(), a, b),
92
- mul: (a, b) => mul2(next(), a, b),
93
- mulnv: (a, b) => mulN2(next(), b, a),
94
- mulvn: (a, b) => mulN2(next(), a, b),
95
- normalize: (a) => normalize2(next(), a),
96
- pow: (a, b) => pow2(next(), a, b),
97
- radians: (a) => radians2(next(), a),
98
- reflect: (a, b) => reflect(next(), a, b),
99
- refract: (a, b, c) => refract(next(), a, b, c),
100
- sign: (a) => sign2(next(), a),
101
- sin: (a) => sin2(next(), a),
102
- smoothstep: (a, b, t) => smoothStep2(next(), a, b, t),
103
- sqrt: (a) => sqrt2(next(), a),
104
- step: (a, b) => step2(next(), a, b),
105
- sub: (a, b) => sub2(next(), a, b),
106
- sub1: (a) => neg(next(), a),
107
- subnv: (a, b) => sub2(null, uniform(a), b),
108
- subvn: (a, b) => subN2(next(), a, b),
109
- tan: (a) => tan2(next(), a),
110
- equal: (a, b) => eq2([], a, b),
111
- notEqual: (a, b) => neq2([], a, b),
112
- greaterThan: (a, b) => gt2([], a, b),
113
- lessThan: (a, b) => lt2([], a, b),
114
- greaterThanEqual: (a, b) => gte2([], a, b),
115
- lessThanEqual: (a, b) => lte2([], a, b),
54
+ const VEC2 = ({ next, uniform }) => ({
55
+ abs: (a) => abs2(next(), a),
56
+ acos: (a) => acos2(next(), a),
57
+ add: (a, b) => add2(next(), a, b),
58
+ addnv: (a, b) => addN2(next(), b, a),
59
+ addvn: (a, b) => addN2(next(), a, b),
60
+ asin: (a) => asin2(next(), a),
61
+ atan: (a) => atan2(next(), a),
62
+ atannn: (a, b) => atan_22(next(), a, b),
63
+ ceil: (a) => ceil2(next(), a),
64
+ clamp: (x, a, b) => clamp2(next(), x, a, b),
65
+ cos: (a) => cos2(next(), a),
66
+ dec: (a) => subN2(next(), a, 1),
67
+ degrees: (a) => degrees2(next(), a),
68
+ dFdx: () => ZERO2,
69
+ dFdy: () => ZERO2,
70
+ distance: dist,
71
+ div: (a, b) => div2(next(), a, b),
72
+ divnv: (a, b) => div2(null, uniform(a), b),
73
+ divvn: (a, b) => divN2(next(), a, b),
74
+ dot: (a, b) => dot2(a, b),
75
+ exp: (a) => exp2(next(), a),
76
+ exp2: (a) => exp_22(next(), a),
77
+ faceForward: (a, b, c) => faceForward(next(), a, b, c),
78
+ floor: (a) => floor2(next(), a),
79
+ fract: (a) => fract2(next(), a),
80
+ fwidth: () => ZERO2,
81
+ inc: (a) => addN2(next(), a, 1),
82
+ inversesqrt: (a) => invSqrt2(next(), a),
83
+ length: mag,
84
+ log: (a) => log2(next(), a),
85
+ log2: (a) => log_22(next(), a),
86
+ max: (a, b) => max2(next(), a, b),
87
+ min: (a, b) => min2(next(), a, b),
88
+ mix: (a, b, t) => mix2(next(), a, b, t),
89
+ mixn: (a, b, t) => mixN2(next(), a, b, t),
90
+ mod: (a, b) => mod2(next(), a, b),
91
+ modn: (a, b) => modN2(next(), a, b),
92
+ mul: (a, b) => mul2(next(), a, b),
93
+ mulnv: (a, b) => mulN2(next(), b, a),
94
+ mulvn: (a, b) => mulN2(next(), a, b),
95
+ normalize: (a) => normalize2(next(), a),
96
+ pow: (a, b) => pow2(next(), a, b),
97
+ radians: (a) => radians2(next(), a),
98
+ reflect: (a, b) => reflect(next(), a, b),
99
+ refract: (a, b, c) => refract(next(), a, b, c),
100
+ sign: (a) => sign2(next(), a),
101
+ sin: (a) => sin2(next(), a),
102
+ smoothstep: (a, b, t) => smoothStep2(next(), a, b, t),
103
+ sqrt: (a) => sqrt2(next(), a),
104
+ step: (a, b) => step2(next(), a, b),
105
+ sub: (a, b) => sub2(next(), a, b),
106
+ sub1: (a) => neg(next(), a),
107
+ subnv: (a, b) => sub2(null, uniform(a), b),
108
+ subvn: (a, b) => subN2(next(), a, b),
109
+ tan: (a) => tan2(next(), a),
110
+ equal: (a, b) => eq2([], a, b),
111
+ notEqual: (a, b) => neq2([], a, b),
112
+ greaterThan: (a, b) => gt2([], a, b),
113
+ lessThan: (a, b) => lt2([], a, b),
114
+ greaterThanEqual: (a, b) => gte2([], a, b),
115
+ lessThanEqual: (a, b) => lte2([], a, b)
116
116
  });
117
+ export {
118
+ VEC2
119
+ };
package/env/vec3.js CHANGED
@@ -52,67 +52,70 @@ import { sub3 } from "@thi.ng/vectors/sub";
52
52
  import { subN3 } from "@thi.ng/vectors/subn";
53
53
  import { tan3 } from "@thi.ng/vectors/tan";
54
54
  import { Pool } from "../pool.js";
55
- export const VEC3 = ({ next, uniform }) => ({
56
- abs: (a) => abs3(next(), a),
57
- acos: (a) => acos3(next(), a),
58
- add: (a, b) => add3(next(), a, b),
59
- addnv: (a, b) => addN3(next(), b, a),
60
- addvn: (a, b) => addN3(next(), a, b),
61
- asin: (a) => asin3(next(), a),
62
- atan: (a) => atan3(next(), a),
63
- atannn: (a, b) => atan_23(next(), a, b),
64
- ceil: (a) => ceil3(next(), a),
65
- clamp: (x, a, b) => clamp3(next(), x, a, b),
66
- cos: (a) => cos3(next(), a),
67
- cross: (a, b) => cross3(next(), a, b),
68
- dec: (a) => subN3(next(), a, 1),
69
- degrees: (a) => degrees3(next(), a),
70
- dFdx: () => ZERO3,
71
- dFdy: () => ZERO3,
72
- distance: dist,
73
- div: (a, b) => div3(next(), a, b),
74
- divnv: (a, b) => div3(null, uniform(a), b),
75
- divvn: (a, b) => divN3(next(), a, b),
76
- dot: (a, b) => dot3(a, b),
77
- exp: (a) => exp3(next(), a),
78
- exp2: (a) => exp_23(next(), a),
79
- faceForward: (a, b, c) => faceForward(next(), a, b, c),
80
- floor: (a) => floor3(next(), a),
81
- fract: (a) => fract3(next(), a),
82
- fwidth: () => ZERO3,
83
- inc: (a) => addN3(next(), a, 1),
84
- inversesqrt: (a) => invSqrt3(next(), a),
85
- length: mag,
86
- log: (a) => log3(next(), a),
87
- log2: (a) => log_23(next(), a),
88
- max: (a, b) => max3(next(), a, b),
89
- min: (a, b) => min3(next(), a, b),
90
- mix: (a, b, t) => mix3(next(), a, b, t),
91
- mixn: (a, b, t) => mixN3(next(), a, b, t),
92
- mod: (a, b) => mod3(next(), a, b),
93
- modn: (a, b) => modN3(next(), a, b),
94
- mul: (a, b) => mul3(next(), a, b),
95
- mulnv: (a, b) => mulN3(next(), b, a),
96
- mulvn: (a, b) => mulN3(next(), a, b),
97
- normalize: (a) => normalize3(next(), a),
98
- pow: (a, b) => pow3(next(), a, b),
99
- radians: (a) => radians3(next(), a),
100
- reflect: (a, b) => reflect(next(), a, b),
101
- refract: (a, b, c) => refract(next(), a, b, c),
102
- sign: (a) => sign3(next(), a),
103
- sin: (a) => sin3(next(), a),
104
- smoothstep: (a, b, t) => smoothStep3(next(), a, b, t),
105
- sqrt: (a) => sqrt3(next(), a),
106
- step: (a, b) => step3(next(), a, b),
107
- sub: (a, b) => sub3(next(), a, b),
108
- sub1: (a) => neg(next(), a),
109
- subnv: (a, b) => sub3(null, uniform(a), b),
110
- subvn: (a, b) => subN3(next(), a, b),
111
- tan: (a) => tan3(next(), a),
112
- equal: (a, b) => eq3([], a, b),
113
- notEqual: (a, b) => neq3([], a, b),
114
- greaterThan: (a, b) => gt3([], a, b),
115
- lessThan: (a, b) => lt3([], a, b),
116
- greaterThanEqual: (a, b) => gte3([], a, b),
117
- lessThanEqual: (a, b) => lte3([], a, b),
55
+ const VEC3 = ({ next, uniform }) => ({
56
+ abs: (a) => abs3(next(), a),
57
+ acos: (a) => acos3(next(), a),
58
+ add: (a, b) => add3(next(), a, b),
59
+ addnv: (a, b) => addN3(next(), b, a),
60
+ addvn: (a, b) => addN3(next(), a, b),
61
+ asin: (a) => asin3(next(), a),
62
+ atan: (a) => atan3(next(), a),
63
+ atannn: (a, b) => atan_23(next(), a, b),
64
+ ceil: (a) => ceil3(next(), a),
65
+ clamp: (x, a, b) => clamp3(next(), x, a, b),
66
+ cos: (a) => cos3(next(), a),
67
+ cross: (a, b) => cross3(next(), a, b),
68
+ dec: (a) => subN3(next(), a, 1),
69
+ degrees: (a) => degrees3(next(), a),
70
+ dFdx: () => ZERO3,
71
+ dFdy: () => ZERO3,
72
+ distance: dist,
73
+ div: (a, b) => div3(next(), a, b),
74
+ divnv: (a, b) => div3(null, uniform(a), b),
75
+ divvn: (a, b) => divN3(next(), a, b),
76
+ dot: (a, b) => dot3(a, b),
77
+ exp: (a) => exp3(next(), a),
78
+ exp2: (a) => exp_23(next(), a),
79
+ faceForward: (a, b, c) => faceForward(next(), a, b, c),
80
+ floor: (a) => floor3(next(), a),
81
+ fract: (a) => fract3(next(), a),
82
+ fwidth: () => ZERO3,
83
+ inc: (a) => addN3(next(), a, 1),
84
+ inversesqrt: (a) => invSqrt3(next(), a),
85
+ length: mag,
86
+ log: (a) => log3(next(), a),
87
+ log2: (a) => log_23(next(), a),
88
+ max: (a, b) => max3(next(), a, b),
89
+ min: (a, b) => min3(next(), a, b),
90
+ mix: (a, b, t) => mix3(next(), a, b, t),
91
+ mixn: (a, b, t) => mixN3(next(), a, b, t),
92
+ mod: (a, b) => mod3(next(), a, b),
93
+ modn: (a, b) => modN3(next(), a, b),
94
+ mul: (a, b) => mul3(next(), a, b),
95
+ mulnv: (a, b) => mulN3(next(), b, a),
96
+ mulvn: (a, b) => mulN3(next(), a, b),
97
+ normalize: (a) => normalize3(next(), a),
98
+ pow: (a, b) => pow3(next(), a, b),
99
+ radians: (a) => radians3(next(), a),
100
+ reflect: (a, b) => reflect(next(), a, b),
101
+ refract: (a, b, c) => refract(next(), a, b, c),
102
+ sign: (a) => sign3(next(), a),
103
+ sin: (a) => sin3(next(), a),
104
+ smoothstep: (a, b, t) => smoothStep3(next(), a, b, t),
105
+ sqrt: (a) => sqrt3(next(), a),
106
+ step: (a, b) => step3(next(), a, b),
107
+ sub: (a, b) => sub3(next(), a, b),
108
+ sub1: (a) => neg(next(), a),
109
+ subnv: (a, b) => sub3(null, uniform(a), b),
110
+ subvn: (a, b) => subN3(next(), a, b),
111
+ tan: (a) => tan3(next(), a),
112
+ equal: (a, b) => eq3([], a, b),
113
+ notEqual: (a, b) => neq3([], a, b),
114
+ greaterThan: (a, b) => gt3([], a, b),
115
+ lessThan: (a, b) => lt3([], a, b),
116
+ greaterThanEqual: (a, b) => gte3([], a, b),
117
+ lessThanEqual: (a, b) => lte3([], a, b)
118
118
  });
119
+ export {
120
+ VEC3
121
+ };
package/env/vec4.js CHANGED
@@ -51,66 +51,69 @@ import { sub4 } from "@thi.ng/vectors/sub";
51
51
  import { subN4 } from "@thi.ng/vectors/subn";
52
52
  import { tan4 } from "@thi.ng/vectors/tan";
53
53
  import { Pool } from "../pool.js";
54
- export const VEC4 = ({ next, uniform }) => ({
55
- abs: (a) => abs4(next(), a),
56
- acos: (a) => acos4(next(), a),
57
- add: (a, b) => add4(next(), a, b),
58
- addnv: (a, b) => addN4(next(), b, a),
59
- addvn: (a, b) => addN4(next(), a, b),
60
- asin: (a) => asin4(next(), a),
61
- atan: (a) => atan4(next(), a),
62
- atannn: (a, b) => atan_24(next(), a, b),
63
- ceil: (a) => ceil4(next(), a),
64
- clamp: (x, a, b) => clamp4(next(), x, a, b),
65
- cos: (a) => cos4(next(), a),
66
- dec: (a) => subN4(next(), a, 1),
67
- degrees: (a) => degrees4(next(), a),
68
- dFdx: () => ZERO4,
69
- dFdy: () => ZERO4,
70
- distance: dist,
71
- div: (a, b) => div4(next(), a, b),
72
- divnv: (a, b) => div4(null, uniform(a), b),
73
- divvn: (a, b) => divN4(next(), a, b),
74
- dot: (a, b) => dot4(a, b),
75
- exp: (a) => exp4(next(), a),
76
- exp2: (a) => exp_24(next(), a),
77
- faceForward: (a, b, c) => faceForward(next(), a, b, c),
78
- floor: (a) => floor4(next(), a),
79
- fract: (a) => fract4(next(), a),
80
- fwidth: () => ZERO4,
81
- inc: (a) => addN4(next(), a, 1),
82
- inversesqrt: (a) => invSqrt4(next(), a),
83
- length: mag,
84
- log: (a) => log4(next(), a),
85
- log2: (a) => log_24(next(), a),
86
- max: (a, b) => max4(next(), a, b),
87
- min: (a, b) => min4(next(), a, b),
88
- mix: (a, b, t) => mix4(next(), a, b, t),
89
- mixn: (a, b, t) => mixN4(next(), a, b, t),
90
- mod: (a, b) => mod4(next(), a, b),
91
- modn: (a, b) => modN4(next(), a, b),
92
- mul: (a, b) => mul4(next(), a, b),
93
- mulnv: (a, b) => mulN4(next(), b, a),
94
- mulvn: (a, b) => mulN4(next(), a, b),
95
- normalize: (a) => normalize4(next(), a),
96
- pow: (a, b) => pow4(next(), a, b),
97
- radians: (a) => radians4(next(), a),
98
- reflect: (a, b) => reflect(next(), a, b),
99
- refract: (a, b, c) => refract(next(), a, b, c),
100
- sign: (a) => sign4(next(), a),
101
- sin: (a) => sin4(next(), a),
102
- smoothstep: (a, b, t) => smoothStep4(next(), a, b, t),
103
- sqrt: (a) => sqrt4(next(), a),
104
- step: (a, b) => step4(next(), a, b),
105
- sub: (a, b) => sub4(next(), a, b),
106
- sub1: (a) => neg(next(), a),
107
- subnv: (a, b) => sub4(null, uniform(a), b),
108
- subvn: (a, b) => subN4(next(), a, b),
109
- tan: (a) => tan4(next(), a),
110
- equal: (a, b) => eq4([], a, b),
111
- notEqual: (a, b) => neq4([], a, b),
112
- greaterThan: (a, b) => gt4([], a, b),
113
- lessThan: (a, b) => lt4([], a, b),
114
- greaterThanEqual: (a, b) => gte4([], a, b),
115
- lessThanEqual: (a, b) => lte4([], a, b),
54
+ const VEC4 = ({ next, uniform }) => ({
55
+ abs: (a) => abs4(next(), a),
56
+ acos: (a) => acos4(next(), a),
57
+ add: (a, b) => add4(next(), a, b),
58
+ addnv: (a, b) => addN4(next(), b, a),
59
+ addvn: (a, b) => addN4(next(), a, b),
60
+ asin: (a) => asin4(next(), a),
61
+ atan: (a) => atan4(next(), a),
62
+ atannn: (a, b) => atan_24(next(), a, b),
63
+ ceil: (a) => ceil4(next(), a),
64
+ clamp: (x, a, b) => clamp4(next(), x, a, b),
65
+ cos: (a) => cos4(next(), a),
66
+ dec: (a) => subN4(next(), a, 1),
67
+ degrees: (a) => degrees4(next(), a),
68
+ dFdx: () => ZERO4,
69
+ dFdy: () => ZERO4,
70
+ distance: dist,
71
+ div: (a, b) => div4(next(), a, b),
72
+ divnv: (a, b) => div4(null, uniform(a), b),
73
+ divvn: (a, b) => divN4(next(), a, b),
74
+ dot: (a, b) => dot4(a, b),
75
+ exp: (a) => exp4(next(), a),
76
+ exp2: (a) => exp_24(next(), a),
77
+ faceForward: (a, b, c) => faceForward(next(), a, b, c),
78
+ floor: (a) => floor4(next(), a),
79
+ fract: (a) => fract4(next(), a),
80
+ fwidth: () => ZERO4,
81
+ inc: (a) => addN4(next(), a, 1),
82
+ inversesqrt: (a) => invSqrt4(next(), a),
83
+ length: mag,
84
+ log: (a) => log4(next(), a),
85
+ log2: (a) => log_24(next(), a),
86
+ max: (a, b) => max4(next(), a, b),
87
+ min: (a, b) => min4(next(), a, b),
88
+ mix: (a, b, t) => mix4(next(), a, b, t),
89
+ mixn: (a, b, t) => mixN4(next(), a, b, t),
90
+ mod: (a, b) => mod4(next(), a, b),
91
+ modn: (a, b) => modN4(next(), a, b),
92
+ mul: (a, b) => mul4(next(), a, b),
93
+ mulnv: (a, b) => mulN4(next(), b, a),
94
+ mulvn: (a, b) => mulN4(next(), a, b),
95
+ normalize: (a) => normalize4(next(), a),
96
+ pow: (a, b) => pow4(next(), a, b),
97
+ radians: (a) => radians4(next(), a),
98
+ reflect: (a, b) => reflect(next(), a, b),
99
+ refract: (a, b, c) => refract(next(), a, b, c),
100
+ sign: (a) => sign4(next(), a),
101
+ sin: (a) => sin4(next(), a),
102
+ smoothstep: (a, b, t) => smoothStep4(next(), a, b, t),
103
+ sqrt: (a) => sqrt4(next(), a),
104
+ step: (a, b) => step4(next(), a, b),
105
+ sub: (a, b) => sub4(next(), a, b),
106
+ sub1: (a) => neg(next(), a),
107
+ subnv: (a, b) => sub4(null, uniform(a), b),
108
+ subvn: (a, b) => subN4(next(), a, b),
109
+ tan: (a) => tan4(next(), a),
110
+ equal: (a, b) => eq4([], a, b),
111
+ notEqual: (a, b) => neq4([], a, b),
112
+ greaterThan: (a, b) => gt4([], a, b),
113
+ lessThan: (a, b) => lt4([], a, b),
114
+ greaterThanEqual: (a, b) => gte4([], a, b),
115
+ lessThanEqual: (a, b) => lte4([], a, b)
116
116
  });
117
+ export {
118
+ VEC4
119
+ };