typegpu 0.5.3 → 0.5.5
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/README.md +1 -1
- package/{attributes-DSOqT8yA.d.cts → attributes-BcDZsQCE.d.cts} +1 -1
- package/{attributes-B4JpvOTz.d.ts → attributes-DsIdcdq4.d.ts} +1 -1
- package/chunk-A6AAWPBU.cjs +2 -0
- package/chunk-A6AAWPBU.cjs.map +1 -0
- package/chunk-HZAXWB4J.js +2 -0
- package/chunk-HZAXWB4J.js.map +1 -0
- package/chunk-T5Y2EQPZ.js +4 -0
- package/chunk-T5Y2EQPZ.js.map +1 -0
- package/chunk-VUYQ2ZIK.cjs +4 -0
- package/chunk-VUYQ2ZIK.cjs.map +1 -0
- package/data/index.cjs +1 -1
- package/data/index.cjs.map +1 -1
- package/data/index.d.cts +50 -4
- package/data/index.d.ts +50 -4
- package/data/index.js +1 -1
- package/{wgslTypes-VtSRoe90.d.ts → dataTypes-ts2Ccted.d.cts} +608 -506
- package/{wgslTypes-VtSRoe90.d.cts → dataTypes-ts2Ccted.d.ts} +608 -506
- package/index.cjs +19 -19
- package/index.cjs.map +1 -1
- package/index.d.cts +110 -443
- package/index.d.ts +110 -443
- package/index.js +19 -19
- package/index.js.map +1 -1
- package/package.json +2 -2
- package/sampler-CPNwYXSH.d.ts +369 -0
- package/sampler-DeX4AnIZ.d.cts +369 -0
- package/std/index.cjs +1 -1
- package/std/index.cjs.map +1 -1
- package/std/index.d.cts +190 -47
- package/std/index.d.ts +190 -47
- package/std/index.js +1 -1
- package/std/index.js.map +1 -1
- package/chunk-DVZNNZFQ.js +0 -2
- package/chunk-DVZNNZFQ.js.map +0 -1
- package/chunk-FM3TKZFZ.cjs +0 -2
- package/chunk-FM3TKZFZ.cjs.map +0 -1
- package/chunk-M4VUFFPZ.cjs +0 -4
- package/chunk-M4VUFFPZ.cjs.map +0 -1
- package/chunk-RMXVIINO.js +0 -2
- package/chunk-RMXVIINO.js.map +0 -1
- package/chunk-UHU5Z2IS.js +0 -4
- package/chunk-UHU5Z2IS.js.map +0 -1
- package/chunk-UPPJES6W.cjs +0 -2
- package/chunk-UPPJES6W.cjs.map +0 -1
package/std/index.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
import{g as W}from"../chunk-RMXVIINO.js";import{A as h,B as F,C as N,D as J,H as C,I as ne,K as E,S as f,o as n,p as y,q as l,r as m,s as T,t as v,u as x,v as i,w,x as o,y as u,z as d}from"../chunk-UHU5Z2IS.js";var ye=n(()=>{throw new Error("discard() can only be used on the GPU.")},()=>({value:"discard;",dataType:W}));var K=e=>Math.sqrt(e.x**2+e.y**2),R=e=>Math.sqrt(e.x**2+e.y**2+e.z**2),U=e=>Math.sqrt(e.x**2+e.y**2+e.z**2+e.w**2),P=(e,t)=>e.x*t.x+e.y*t.y,_=(e,t)=>e.x*t.x+e.y*t.y+e.z*t.z,G=(e,t)=>e.x*t.x+e.y*t.y+e.z*t.z+e.w*t.w,r=(e,t,a)=>Math.min(Math.max(t,e),a),g=e=>t=>y(e(t.x),e(t.y)),p=e=>t=>l(e(t.x),e(t.y)),z=e=>t=>m(e(t.x),e(t.y)),M=e=>t=>T(e(t.x),e(t.y)),B=e=>t=>v(e(t.x),e(t.y),e(t.z)),b=e=>t=>x(e(t.x),e(t.y),e(t.z)),$=e=>t=>i(e(t.x),e(t.y),e(t.z)),A=e=>t=>w(e(t.x),e(t.y),e(t.z)),V=e=>t=>o(e(t.x),e(t.y),e(t.z),e(t.w)),O=e=>t=>u(e(t.x),e(t.y),e(t.z),e(t.w)),k=e=>t=>d(e(t.x),e(t.y),e(t.z),e(t.w)),I=e=>t=>h(e(t.x),e(t.y),e(t.z),e(t.w)),L=e=>(t,a)=>y(e(t.x,a.x),e(t.y,a.y)),j=e=>(t,a)=>l(e(t.x,a.x),e(t.y,a.y)),q=e=>(t,a)=>m(e(t.x,a.x),e(t.y,a.y)),X=e=>(t,a)=>T(e(t.x,a.x),e(t.y,a.y)),Z=e=>(t,a)=>v(e(t.x,a.x),e(t.y,a.y),e(t.z,a.z)),H=e=>(t,a)=>x(e(t.x,a.x),e(t.y,a.y),e(t.z,a.z)),Q=e=>(t,a)=>i(e(t.x,a.x),e(t.y,a.y),e(t.z,a.z)),Y=e=>(t,a)=>w(e(t.x,a.x),e(t.y,a.y),e(t.z,a.z)),ee=e=>(t,a)=>o(e(t.x,a.x),e(t.y,a.y),e(t.z,a.z),e(t.w,a.w)),te=e=>(t,a)=>u(e(t.x,a.x),e(t.y,a.y),e(t.z,a.z),e(t.w,a.w)),ae=e=>(t,a)=>d(e(t.x,a.x),e(t.y,a.y),e(t.z,a.z),e(t.w,a.w)),se=e=>(t,a)=>h(e(t.x,a.x),e(t.y,a.y),e(t.z,a.z),e(t.w,a.w)),c={abs:{vec2f:g(Math.abs),vec2h:p(Math.abs),vec2i:z(Math.abs),vec2u:M(Math.abs),vec3f:B(Math.abs),vec3h:b(Math.abs),vec3i:$(Math.abs),vec3u:A(Math.abs),vec4f:V(Math.abs),vec4h:O(Math.abs),vec4i:k(Math.abs),vec4u:I(Math.abs)},atan2:{vec2f:L(Math.atan2),vec2h:j(Math.atan2),vec2i:q(Math.atan2),vec2u:X(Math.atan2),vec3f:Z(Math.atan2),vec3h:H(Math.atan2),vec3i:Q(Math.atan2),vec3u:Y(Math.atan2),vec4f:ee(Math.atan2),vec4h:te(Math.atan2),vec4i:ae(Math.atan2),vec4u:se(Math.atan2)},acos:{vec2f:g(Math.acos),vec2h:p(Math.acos),vec2i:z(Math.acos),vec2u:M(Math.acos),vec3f:B(Math.acos),vec3h:b(Math.acos),vec3i:$(Math.acos),vec3u:A(Math.acos),vec4f:V(Math.acos),vec4h:O(Math.acos),vec4i:k(Math.acos),vec4u:I(Math.acos)},asin:{vec2f:g(Math.asin),vec2h:p(Math.asin),vec2i:z(Math.asin),vec2u:M(Math.asin),vec3f:B(Math.asin),vec3h:b(Math.asin),vec3i:$(Math.asin),vec3u:A(Math.asin),vec4f:V(Math.asin),vec4h:O(Math.asin),vec4i:k(Math.asin),vec4u:I(Math.asin)},ceil:{vec2f:g(Math.ceil),vec2h:p(Math.ceil),vec2i:z(Math.ceil),vec2u:M(Math.ceil),vec3f:B(Math.ceil),vec3h:b(Math.ceil),vec3i:$(Math.ceil),vec3u:A(Math.ceil),vec4f:V(Math.ceil),vec4h:O(Math.ceil),vec4i:k(Math.ceil),vec4u:I(Math.ceil)},clamp:{vec2f:(e,t,a)=>y(r(e.x,t.x,a.x),r(e.y,t.y,a.y)),vec2h:(e,t,a)=>l(r(e.x,t.x,a.x),r(e.y,t.y,a.y)),vec2i:(e,t,a)=>m(r(e.x,t.x,a.x),r(e.y,t.y,a.y)),vec2u:(e,t,a)=>T(r(e.x,t.x,a.x),r(e.y,t.y,a.y)),vec3f:(e,t,a)=>v(r(e.x,t.x,a.x),r(e.y,t.y,a.y),r(e.z,t.z,a.z)),vec3h:(e,t,a)=>x(r(e.x,t.x,a.x),r(e.y,t.y,a.y),r(e.z,t.z,a.z)),vec3i:(e,t,a)=>i(r(e.x,t.x,a.x),r(e.y,t.y,a.y),r(e.z,t.z,a.z)),vec3u:(e,t,a)=>w(r(e.x,t.x,a.x),r(e.y,t.y,a.y),r(e.z,t.z,a.z)),vec4f:(e,t,a)=>o(r(e.x,t.x,a.x),r(e.y,t.y,a.y),r(e.z,t.z,a.z),r(e.w,t.w,a.w)),vec4h:(e,t,a)=>u(r(e.x,t.x,a.x),r(e.y,t.y,a.y),r(e.z,t.z,a.z),r(e.w,t.w,a.w)),vec4i:(e,t,a)=>d(r(e.x,t.x,a.x),r(e.y,t.y,a.y),r(e.z,t.z,a.z),r(e.w,t.w,a.w)),vec4u:(e,t,a)=>h(r(e.x,t.x,a.x),r(e.y,t.y,a.y),r(e.z,t.z,a.z),r(e.w,t.w,a.w))},length:{vec2f:K,vec2h:K,vec2i:K,vec2u:K,vec3f:R,vec3h:R,vec3i:R,vec3u:R,vec4f:U,vec4h:U,vec4i:U,vec4u:U},add:{vec2f:(e,t)=>y(e.x+t.x,e.y+t.y),vec2h:(e,t)=>l(e.x+t.x,e.y+t.y),vec2i:(e,t)=>m(e.x+t.x,e.y+t.y),vec2u:(e,t)=>T(e.x+t.x,e.y+t.y),vec3f:(e,t)=>v(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)=>i(e.x+t.x,e.y+t.y,e.z+t.z),vec3u:(e,t)=>w(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)=>u(e.x+t.x,e.y+t.y,e.z+t.z,e.w+t.w),vec4i:(e,t)=>d(e.x+t.x,e.y+t.y,e.z+t.z,e.w+t.w),vec4u:(e,t)=>h(e.x+t.x,e.y+t.y,e.z+t.z,e.w+t.w)},sub:{vec2f:(e,t)=>y(e.x-t.x,e.y-t.y),vec2h:(e,t)=>l(e.x-t.x,e.y-t.y),vec2i:(e,t)=>m(e.x-t.x,e.y-t.y),vec2u:(e,t)=>T(e.x-t.x,e.y-t.y),vec3f:(e,t)=>v(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)=>i(e.x-t.x,e.y-t.y,e.z-t.z),vec3u:(e,t)=>w(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)=>u(e.x-t.x,e.y-t.y,e.z-t.z,e.w-t.w),vec4i:(e,t)=>d(e.x-t.x,e.y-t.y,e.z-t.z,e.w-t.w),vec4u:(e,t)=>h(e.x-t.x,e.y-t.y,e.z-t.z,e.w-t.w)},mulSxV:{vec2f:(e,t)=>y(e*t.x,e*t.y),vec2h:(e,t)=>l(e*t.x,e*t.y),vec2i:(e,t)=>m(e*t.x,e*t.y),vec2u:(e,t)=>T(e*t.x,e*t.y),vec3f:(e,t)=>v(e*t.x,e*t.y,e*t.z),vec3h:(e,t)=>x(e*t.x,e*t.y,e*t.z),vec3i:(e,t)=>i(e*t.x,e*t.y,e*t.z),vec3u:(e,t)=>w(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)=>u(e*t.x,e*t.y,e*t.z,e*t.w),vec4i:(e,t)=>d(e*t.x,e*t.y,e*t.z,e*t.w),vec4u:(e,t)=>h(e*t.x,e*t.y,e*t.z,e*t.w),mat2x2f:(e,t)=>{let a=t.columns;return F(e*a[0].x,e*a[0].y,e*a[1].x,e*a[1].y)},mat3x3f:(e,t)=>{let a=t.columns;return N(e*a[0].x,e*a[0].y,e*a[0].z,e*a[1].x,e*a[1].y,e*a[1].z,e*a[2].x,e*a[2].y,e*a[2].z)},mat4x4f:(e,t)=>{let a=t.columns;return J(e*a[0].x,e*a[0].y,e*a[0].z,e*a[0].w,e*a[1].x,e*a[1].y,e*a[1].z,e*a[1].w,e*a[2].x,e*a[2].y,e*a[2].z,e*a[2].w,e*a[3].x,e*a[3].y,e*a[3].z,e*a[3].w)}},mulVxV:{vec2f:(e,t)=>y(e.x*t.x,e.y*t.y),vec2h:(e,t)=>l(e.x*t.x,e.y*t.y),vec2i:(e,t)=>m(e.x*t.x,e.y*t.y),vec2u:(e,t)=>T(e.x*t.x,e.y*t.y),vec3f:(e,t)=>v(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)=>i(e.x*t.x,e.y*t.y,e.z*t.z),vec3u:(e,t)=>w(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)=>u(e.x*t.x,e.y*t.y,e.z*t.z,e.w*t.w),vec4i:(e,t)=>d(e.x*t.x,e.y*t.y,e.z*t.z,e.w*t.w),vec4u:(e,t)=>h(e.x*t.x,e.y*t.y,e.z*t.z,e.w*t.w),mat2x2f:(e,t)=>{let a=e.columns,s=t.columns;return F(a[0].x*s[0].x+a[1].x*s[0].y,a[0].y*s[0].x+a[1].y*s[0].y,a[0].x*s[1].x+a[1].x*s[1].y,a[0].y*s[1].x+a[1].y*s[1].y)},mat3x3f:(e,t)=>{let a=e.columns,s=t.columns;return N(a[0].x*s[0].x+a[1].x*s[0].y+a[2].x*s[0].z,a[0].y*s[0].x+a[1].y*s[0].y+a[2].y*s[0].z,a[0].z*s[0].x+a[1].z*s[0].y+a[2].z*s[0].z,a[0].x*s[1].x+a[1].x*s[1].y+a[2].x*s[1].z,a[0].y*s[1].x+a[1].y*s[1].y+a[2].y*s[1].z,a[0].z*s[1].x+a[1].z*s[1].y+a[2].z*s[1].z,a[0].x*s[2].x+a[1].x*s[2].y+a[2].x*s[2].z,a[0].y*s[2].x+a[1].y*s[2].y+a[2].y*s[2].z,a[0].z*s[2].x+a[1].z*s[2].y+a[2].z*s[2].z)},mat4x4f:(e,t)=>{let a=e.columns,s=t.columns;return J(a[0].x*s[0].x+a[1].x*s[0].y+a[2].x*s[0].z+a[3].x*s[0].w,a[0].y*s[0].x+a[1].y*s[0].y+a[2].y*s[0].z+a[3].y*s[0].w,a[0].z*s[0].x+a[1].z*s[0].y+a[2].z*s[0].z+a[3].z*s[0].w,a[0].w*s[0].x+a[1].w*s[0].y+a[2].w*s[0].z+a[3].w*s[0].w,a[0].x*s[1].x+a[1].x*s[1].y+a[2].x*s[1].z+a[3].x*s[1].w,a[0].y*s[1].x+a[1].y*s[1].y+a[2].y*s[1].z+a[3].y*s[1].w,a[0].z*s[1].x+a[1].z*s[1].y+a[2].z*s[1].z+a[3].z*s[1].w,a[0].w*s[1].x+a[1].w*s[1].y+a[2].w*s[1].z+a[3].w*s[1].w,a[0].x*s[2].x+a[1].x*s[2].y+a[2].x*s[2].z+a[3].x*s[2].w,a[0].y*s[2].x+a[1].y*s[2].y+a[2].y*s[2].z+a[3].y*s[2].w,a[0].z*s[2].x+a[1].z*s[2].y+a[2].z*s[2].z+a[3].z*s[2].w,a[0].w*s[2].x+a[1].w*s[2].y+a[2].w*s[2].z+a[3].w*s[2].w,a[0].x*s[3].x+a[1].x*s[3].y+a[2].x*s[3].z+a[3].x*s[3].w,a[0].y*s[3].x+a[1].y*s[3].y+a[2].y*s[3].z+a[3].y*s[3].w,a[0].z*s[3].x+a[1].z*s[3].y+a[2].z*s[3].z+a[3].z*s[3].w,a[0].w*s[3].x+a[1].w*s[3].y+a[2].w*s[3].z+a[3].w*s[3].w)}},mulMxV:{mat2x2f:(e,t)=>{let a=e.columns;return y(a[0].x*t.x+a[1].x*t.y,a[0].y*t.x+a[1].y*t.y)},mat3x3f:(e,t)=>{let a=e.columns;return v(a[0].x*t.x+a[1].x*t.y+a[2].x*t.z,a[0].y*t.x+a[1].y*t.y+a[2].y*t.z,a[0].z*t.x+a[1].z*t.y+a[2].z*t.z)},mat4x4f:(e,t)=>{let a=e.columns;return o(a[0].x*t.x+a[1].x*t.y+a[2].x*t.z+a[3].x*t.w,a[0].y*t.x+a[1].y*t.y+a[2].y*t.z+a[3].y*t.w,a[0].z*t.x+a[1].z*t.y+a[2].z*t.z+a[3].z*t.w,a[0].w*t.x+a[1].w*t.y+a[2].w*t.z+a[3].w*t.w)}},mulVxM:{mat2x2f:(e,t)=>{let a=t.columns;return y(e.x*a[0].x+e.y*a[0].y,e.x*a[1].x+e.y*a[1].y)},mat3x3f:(e,t)=>{let a=t.columns;return v(e.x*a[0].x+e.y*a[0].y+e.z*a[0].z,e.x*a[1].x+e.y*a[1].y+e.z*a[1].z,e.x*a[2].x+e.y*a[2].y+e.z*a[2].z)},mat4x4f:(e,t)=>{let a=t.columns;return o(e.x*a[0].x+e.y*a[0].y+e.z*a[0].z+e.w*a[0].w,e.x*a[1].x+e.y*a[1].y+e.z*a[1].z+e.w*a[1].w,e.x*a[2].x+e.y*a[2].y+e.z*a[2].z+e.w*a[2].w,e.x*a[3].x+e.y*a[3].y+e.z*a[3].z+e.w*a[3].w)}},dot:{vec2f:P,vec2h:P,vec2i:P,vec2u:P,vec3f:_,vec3h:_,vec3i:_,vec3u:_,vec4f:G,vec4h:G,vec4i:G,vec4u:G},normalize:{vec2f:e=>{let t=K(e);return y(e.x/t,e.y/t)},vec2h:e=>{let t=K(e);return l(e.x/t,e.y/t)},vec2i:e=>{let t=K(e);return m(e.x/t,e.y/t)},vec2u:e=>{let t=K(e);return T(e.x/t,e.y/t)},vec3f:e=>{let t=R(e);return v(e.x/t,e.y/t,e.z/t)},vec3h:e=>{let t=R(e);return x(e.x/t,e.y/t,e.z/t)},vec3i:e=>{let t=R(e);return i(e.x/t,e.y/t,e.z/t)},vec3u:e=>{let t=R(e);return w(e.x/t,e.y/t,e.z/t)},vec4f:e=>{let t=U(e);return o(e.x/t,e.y/t,e.z/t,e.w/t)},vec4h:e=>{let t=U(e);return u(e.x/t,e.y/t,e.z/t,e.w/t)},vec4i:e=>{let t=U(e);return d(e.x/t,e.y/t,e.z/t,e.w/t)},vec4u:e=>{let t=U(e);return h(e.x/t,e.y/t,e.z/t,e.w/t)}},cross:{vec3f:(e,t)=>v(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)=>x(e.y*t.z-e.z*t.y,e.z*t.x-e.x*t.z,e.x*t.y-e.y*t.x),vec3i:(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),vec3u:(e,t)=>w(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:g(Math.floor),vec2h:p(Math.floor),vec2i:z(Math.floor),vec2u:M(Math.floor),vec3f:B(Math.floor),vec3h:b(Math.floor),vec3i:$(Math.floor),vec3u:A(Math.floor),vec4f:V(Math.floor),vec4h:O(Math.floor),vec4i:k(Math.floor),vec4u:I(Math.floor)},max:{vec2f:L(Math.max),vec2h:j(Math.max),vec2i:q(Math.max),vec2u:X(Math.max),vec3f:Z(Math.max),vec3h:H(Math.max),vec3i:Q(Math.max),vec3u:Y(Math.max),vec4f:ee(Math.max),vec4h:te(Math.max),vec4i:ae(Math.max),vec4u:se(Math.max)},min:{vec2f:L(Math.min),vec2h:j(Math.min),vec2i:q(Math.min),vec2u:X(Math.min),vec3f:Z(Math.min),vec3h:H(Math.min),vec3i:Q(Math.min),vec3u:Y(Math.min),vec4f:ee(Math.min),vec4h:te(Math.min),vec4i:ae(Math.min),vec4u:se(Math.min)},pow:{vec2f:(e,t)=>y(e.x**t.x,e.y**t.y),vec2h:(e,t)=>l(e.x**t.x,e.y**t.y),vec3f:(e,t)=>v(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),vec4f:(e,t)=>o(e.x**t.x,e.y**t.y,e.z**t.z,e.w**t.w),vec4h:(e,t)=>u(e.x**t.x,e.y**t.y,e.z**t.z,e.w**t.w)},mix:{vec2f:(e,t,a)=>typeof a=="number"?y(e.x*(1-a)+t.x*a,e.y*(1-a)+t.y*a):y(e.x*(1-a.x)+t.x*a.x,e.y*(1-a.y)+t.y*a.y),vec2h:(e,t,a)=>typeof a=="number"?l(e.x*(1-a)+t.x*a,e.y*(1-a)+t.y*a):l(e.x*(1-a.x)+t.x*a.x,e.y*(1-a.y)+t.y*a.y),vec3f:(e,t,a)=>typeof a=="number"?v(e.x*(1-a)+t.x*a,e.y*(1-a)+t.y*a,e.z*(1-a)+t.z*a):v(e.x*(1-a.x)+t.x*a.x,e.y*(1-a.y)+t.y*a.y,e.z*(1-a.z)+t.z*a.z),vec3h:(e,t,a)=>typeof a=="number"?x(e.x*(1-a)+t.x*a,e.y*(1-a)+t.y*a,e.z*(1-a)+t.z*a):x(e.x*(1-a.x)+t.x*a.x,e.y*(1-a.y)+t.y*a.y,e.z*(1-a.z)+t.z*a.z),vec4f:(e,t,a)=>typeof a=="number"?o(e.x*(1-a)+t.x*a,e.y*(1-a)+t.y*a,e.z*(1-a)+t.z*a,e.w*(1-a)+t.w*a):o(e.x*(1-a.x)+t.x*a.x,e.y*(1-a.y)+t.y*a.y,e.z*(1-a.z)+t.z*a.z,e.w*(1-a.w)+t.w*a.w),vec4h:(e,t,a)=>typeof a=="number"?u(e.x*(1-a)+t.x*a,e.y*(1-a)+t.y*a,e.z*(1-a)+t.z*a,e.w*(1-a)+t.w*a):u(e.x*(1-a.x)+t.x*a.x,e.y*(1-a.y)+t.y*a.y,e.z*(1-a.z)+t.z*a.z,e.w*(1-a.w)+t.w*a.w)},sin:{vec2f:g(Math.sin),vec2h:p(Math.sin),vec2i:z(Math.sin),vec2u:M(Math.sin),vec3f:B(Math.sin),vec3h:b(Math.sin),vec3i:$(Math.sin),vec3u:A(Math.sin),vec4f:V(Math.sin),vec4h:O(Math.sin),vec4i:k(Math.sin),vec4u:I(Math.sin)},cos:{vec2f:g(Math.cos),vec2h:p(Math.cos),vec2i:z(Math.cos),vec2u:M(Math.cos),vec3f:B(Math.cos),vec3h:b(Math.cos),vec3i:$(Math.cos),vec3u:A(Math.cos),vec4f:V(Math.cos),vec4h:O(Math.cos),vec4i:k(Math.cos),vec4u:I(Math.cos)},exp:{vec2f:g(Math.exp),vec2h:p(Math.exp),vec2i:z(Math.exp),vec2u:M(Math.exp),vec3f:B(Math.exp),vec3h:b(Math.exp),vec3i:$(Math.exp),vec3u:A(Math.exp),vec4f:V(Math.exp),vec4h:O(Math.exp),vec4i:k(Math.exp),vec4u:I(Math.exp)},fract:{vec2f:g(e=>e-Math.floor(e)),vec2h:p(e=>e-Math.floor(e)),vec2i:z(e=>e-Math.floor(e)),vec2u:M(e=>e-Math.floor(e)),vec3f:B(e=>e-Math.floor(e)),vec3h:b(e=>e-Math.floor(e)),vec3i:$(e=>e-Math.floor(e)),vec3u:A(e=>e-Math.floor(e)),vec4f:V(e=>e-Math.floor(e)),vec4h:O(e=>e-Math.floor(e)),vec4i:k(e=>e-Math.floor(e)),vec4u:I(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}};function S(e){let t=e.dataType.type;return t==="abstractInt"||t==="abstractFloat"||t==="f32"||t==="f16"||t==="i32"||t==="u32"}var oe=n((e,t)=>c.add[e.kind](e,t),(e,t)=>({value:`(${e.value} + ${t.value})`,dataType:e.dataType})),D=n((e,t)=>c.sub[e.kind](e,t),(e,t)=>({value:`(${e.value} - ${t.value})`,dataType:e.dataType})),re=n((e,t)=>{if(typeof e=="number")return c.mulSxV[t.kind](e,t);if(typeof e=="object"&&typeof t=="object"&&"kind"in e&&"kind"in t){let a=!e.kind.startsWith("mat"),s=!t.kind.startsWith("mat");if(!a&&s)return c.mulMxV[e.kind](e,t);if(a&&!s)return c.mulVxM[t.kind](e,t)}return c.mulVxV[t.kind](e,t)},(e,t)=>{let a=S(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:a}}),xe=n(e=>typeof e=="number"?Math.abs(e):c.abs[e.kind](e),e=>({value:`abs(${e.value})`,dataType:e.dataType})),le=n((e,t)=>typeof e=="number"&&typeof t=="number"?Math.atan2(e,t):c.atan2[e.kind](e,t),(e,t)=>({value:`atan2(${e.value}, ${t.value})`,dataType:e.dataType})),ue=n(e=>typeof e=="number"?Math.acos(e):c.acos[e.kind](e),e=>({value:`acos(${e.value})`,dataType:e.dataType})),ie=n(e=>typeof e=="number"?Math.asin(e):c.asin[e.kind](e),e=>({value:`asin(${e.value})`,dataType:e.dataType})),we=n(e=>typeof e=="number"?Math.ceil(e):c.ceil[e.kind](e),e=>({value:`ceil(${e.value})`,dataType:e.dataType})),fe=n((e,t,a)=>typeof e=="number"?Math.min(Math.max(t,e),a):c.clamp[e.kind](e,t,a),(e,t,a)=>({value:`clamp(${e.value}, ${t.value}, ${a.value})`,dataType:e.dataType})),me=n(e=>typeof e=="number"?Math.cos(e):c.cos[e.kind](e),e=>({value:`cos(${e.value})`,dataType:e.dataType})),Te=n((e,t)=>c.cross[e.kind](e,t),(e,t)=>({value:`cross(${e.value}, ${t.value})`,dataType:e.dataType})),ce=n((e,t)=>c.dot[e.kind](e,t),(e,t)=>({value:`dot(${e.value}, ${t.value})`,dataType:E})),de=n(e=>c.normalize[e.kind](e),e=>({value:`normalize(${e.value})`,dataType:e.dataType})),he=n(e=>typeof e=="number"?Math.floor(e):c.floor[e.kind](e),e=>({value:`floor(${e.value})`,dataType:e.dataType})),ge=n(e=>typeof e=="number"?e-Math.floor(e):c.fract[e.kind](e),e=>({value:`fract(${e.value})`,dataType:e.dataType})),ve=n(e=>typeof e=="number"?Math.abs(e):c.length[e.kind](e),e=>({value:`length(${e.value})`,dataType:E})),pe=n((e,t)=>typeof e=="number"?Math.max(e,t):c.max[e.kind](e,t),(e,t)=>({value:`max(${e.value}, ${t.value})`,dataType:e.dataType})),ze=n((e,t)=>typeof e=="number"?Math.min(e,t):c.min[e.kind](e,t),(e,t)=>({value:`min(${e.value}, ${t.value})`,dataType:e.dataType})),Me=n(e=>typeof e=="number"?Math.sin(e):c.sin[e.kind](e),e=>({value:`sin(${e.value})`,dataType:e.dataType})),Be=n(e=>typeof e=="number"?Math.exp(e):c.exp[e.kind](e),e=>({value:`exp(${e.value})`,dataType:e.dataType})),be=n((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 c.pow[e.kind](e,t);throw new Error("Invalid arguments to pow()")},(e,t)=>({value:`pow(${e.value}, ${t.value})`,dataType:e.dataType})),$e=n((e,t,a)=>{if(typeof e=="number"){if(typeof a!="number"||typeof t!="number")throw new Error("When e1 and e2 are numbers, the blend factor must be a number.");return e*(1-a)+t*a}if(typeof e=="number"||typeof t=="number")throw new Error("e1 and e2 need to both be vectors of the same kind.");return c.mix[e.kind](e,t,a)},(e,t,a)=>({value:`mix(${e.value}, ${t.value}, ${a.value})`,dataType:e.dataType})),Ae=n((e,t)=>D(e,re(2*ce(t,e),t)),(e,t)=>({value:`reflect(${e.value}, ${t.value})`,dataType:e.dataType})),Ve=n((e,t)=>typeof e=="number"&&typeof t=="number"?Math.abs(e-t):ve(D(e,t)),(e,t)=>({value:`distance(${e.value}, ${t.value})`,dataType:E})),Oe=n((e,t,a=.01)=>typeof e=="number"&&typeof t=="number"?Math.abs(e-t)<a:typeof e!="number"&&typeof t!="number"?c.isCloseToZero[e.kind](D(e,t),a):!1,(e,t,a={value:.01,dataType:E})=>S(e)&&S(t)?{value:`abs(f32(${e.value})-f32(${t.value})) <= ${a.value}`,dataType:C}:!S(e)&&!S(t)?{value:`all(abs(${e.value}-${t.value}) <= (${e.value} - ${e.value})+${a.value})`,dataType:C}:{value:"false",dataType:C});var ke=n(()=>console.warn("workgroupBarrier is a no-op outside of GPU mode."),()=>({value:"workgroupBarrier()",dataType:W})),Ie=n(()=>console.warn("storageBarrier is a no-op outside of GPU mode."),()=>({value:"storageBarrier()",dataType:W})),Ke=n(()=>console.warn("textureBarrier is a no-op outside of GPU mode."),()=>({value:"textureBarrier()",dataType:W})),Re=n(e=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},e=>{if(f(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)}`)}),Ue=n((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(!f(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:W}}),We=n((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(f(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)}`)}),Ee=n((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(f(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)}`)}),Se=n((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(f(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)}`)}),Ce=n((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(f(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)}`)}),Pe=n((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(f(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)}`)}),_e=n((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(f(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)}`)}),Ge=n((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(f(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)}`)});var De=n(e=>e.length,e=>({value:`arrayLength(&${e.value})`,dataType:ne}));export{xe as abs,ue as acos,oe as add,De as arrayLength,ie as asin,le as atan2,We as atomicAdd,Pe as atomicAnd,Re as atomicLoad,Se as atomicMax,Ce as atomicMin,_e as atomicOr,Ue as atomicStore,Ee as atomicSub,Ge as atomicXor,we as ceil,fe as clamp,me as cos,Te as cross,ye as discard,Ve as distance,ce as dot,Be as exp,he as floor,ge as fract,Oe as isCloseTo,ve as length,pe as max,ze as min,$e as mix,re as mul,de as normalize,be as pow,Ae as reflect,Me as sin,Ie as storageBarrier,D as sub,Ke as textureBarrier,ke as workgroupBarrier};
|
1
|
+
import{A as x,B as y,C as T,D as p,E as z,F as u,G as ee,H as te,I as ne,M as S,N as O,P as U,R as F,Z as h,p as s,r as o,s as i,t as m,u as f,v,w as l,x as w,y as d,z as g}from"../chunk-T5Y2EQPZ.js";var he=s(()=>{throw new Error("discard() can only be used on the GPU.")},()=>({value:"discard;",dataType:F}));var R=e=>Math.sqrt(e.x**2+e.y**2),K=e=>Math.sqrt(e.x**2+e.y**2+e.z**2),N=e=>Math.sqrt(e.x**2+e.y**2+e.z**2+e.w**2),D=(e,t)=>e.x*t.x+e.y*t.y,P=(e,t)=>e.x*t.x+e.y*t.y+e.z*t.z,G=(e,t)=>e.x*t.x+e.y*t.y+e.z*t.z+e.w*t.w,r=(e,t,n)=>Math.min(Math.max(t,e),n),b=e=>t=>o(e(t.x),e(t.y)),M=e=>t=>i(e(t.x),e(t.y)),q=e=>t=>m(e(t.x),e(t.y)),J=e=>t=>f(e(t.x),e(t.y)),A=e=>t=>l(e(t.x),e(t.y),e(t.z)),V=e=>t=>w(e(t.x),e(t.y),e(t.z)),L=e=>t=>d(e(t.x),e(t.y),e(t.z)),j=e=>t=>g(e(t.x),e(t.y),e(t.z)),I=e=>t=>y(e(t.x),e(t.y),e(t.z),e(t.w)),$=e=>t=>T(e(t.x),e(t.y),e(t.z),e(t.w)),X=e=>t=>p(e(t.x),e(t.y),e(t.z),e(t.w)),Z=e=>t=>z(e(t.x),e(t.y),e(t.z),e(t.w)),ae=e=>(t,n)=>o(e(t.x,n.x),e(t.y,n.y)),se=e=>(t,n)=>i(e(t.x,n.x),e(t.y,n.y)),xe=e=>(t,n)=>m(e(t.x,n.x),e(t.y,n.y)),ue=e=>(t,n)=>f(e(t.x,n.x),e(t.y,n.y)),re=e=>(t,n)=>l(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z)),ce=e=>(t,n)=>w(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z)),we=e=>(t,n)=>d(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z)),ie=e=>(t,n)=>g(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z)),ye=e=>(t,n)=>y(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z),e(t.w,n.w)),oe=e=>(t,n)=>T(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z),e(t.w,n.w)),Te=e=>(t,n)=>p(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z),e(t.w,n.w)),me=e=>(t,n)=>z(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z),e(t.w,n.w)),c={eq:{vec2f:(e,t)=>v(e.x===t.x,e.y===t.y),vec2h:(e,t)=>v(e.x===t.x,e.y===t.y),vec2i:(e,t)=>v(e.x===t.x,e.y===t.y),vec2u:(e,t)=>v(e.x===t.x,e.y===t.y),"vec2<bool>":(e,t)=>v(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)=>u(e.x===t.x,e.y===t.y,e.z===t.z,e.w===t.w),vec4h:(e,t)=>u(e.x===t.x,e.y===t.y,e.z===t.z,e.w===t.w),vec4i:(e,t)=>u(e.x===t.x,e.y===t.y,e.z===t.z,e.w===t.w),vec4u:(e,t)=>u(e.x===t.x,e.y===t.y,e.z===t.z,e.w===t.w),"vec4<bool>":(e,t)=>u(e.x===t.x,e.y===t.y,e.z===t.z,e.w===t.w)},lt:{vec2f:(e,t)=>v(e.x<t.x,e.y<t.y),vec2h:(e,t)=>v(e.x<t.x,e.y<t.y),vec2i:(e,t)=>v(e.x<t.x,e.y<t.y),vec2u:(e,t)=>v(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)=>u(e.x<t.x,e.y<t.y,e.z<t.z,e.w<t.w),vec4h:(e,t)=>u(e.x<t.x,e.y<t.y,e.z<t.z,e.w<t.w),vec4i:(e,t)=>u(e.x<t.x,e.y<t.y,e.z<t.z,e.w<t.w),vec4u:(e,t)=>u(e.x<t.x,e.y<t.y,e.z<t.z,e.w<t.w)},or:{"vec2<bool>":(e,t)=>v(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)=>u(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:b(Math.abs),vec2h:M(Math.abs),vec2i:q(Math.abs),vec2u:J(Math.abs),vec3f:A(Math.abs),vec3h:V(Math.abs),vec3i:L(Math.abs),vec3u:j(Math.abs),vec4f:I(Math.abs),vec4h:$(Math.abs),vec4i:X(Math.abs),vec4u:Z(Math.abs)},atan2:{vec2f:ae(Math.atan2),vec2h:se(Math.atan2),vec3f:re(Math.atan2),vec3h:ce(Math.atan2),vec4f:ye(Math.atan2),vec4h:oe(Math.atan2)},acos:{vec2f:b(Math.acos),vec2h:M(Math.acos),vec2i:q(Math.acos),vec2u:J(Math.acos),vec3f:A(Math.acos),vec3h:V(Math.acos),vec3i:L(Math.acos),vec3u:j(Math.acos),vec4f:I(Math.acos),vec4h:$(Math.acos),vec4i:X(Math.acos),vec4u:Z(Math.acos)},asin:{vec2f:b(Math.asin),vec2h:M(Math.asin),vec2i:q(Math.asin),vec2u:J(Math.asin),vec3f:A(Math.asin),vec3h:V(Math.asin),vec3i:L(Math.asin),vec3u:j(Math.asin),vec4f:I(Math.asin),vec4h:$(Math.asin),vec4i:X(Math.asin),vec4u:Z(Math.asin)},ceil:{vec2f:b(Math.ceil),vec2h:M(Math.ceil),vec3f:A(Math.ceil),vec3h:V(Math.ceil),vec4f:I(Math.ceil),vec4h:$(Math.ceil)},clamp:{vec2f:(e,t,n)=>o(r(e.x,t.x,n.x),r(e.y,t.y,n.y)),vec2h:(e,t,n)=>i(r(e.x,t.x,n.x),r(e.y,t.y,n.y)),vec2i:(e,t,n)=>m(r(e.x,t.x,n.x),r(e.y,t.y,n.y)),vec2u:(e,t,n)=>f(r(e.x,t.x,n.x),r(e.y,t.y,n.y)),vec3f:(e,t,n)=>l(r(e.x,t.x,n.x),r(e.y,t.y,n.y),r(e.z,t.z,n.z)),vec3h:(e,t,n)=>w(r(e.x,t.x,n.x),r(e.y,t.y,n.y),r(e.z,t.z,n.z)),vec3i:(e,t,n)=>d(r(e.x,t.x,n.x),r(e.y,t.y,n.y),r(e.z,t.z,n.z)),vec3u:(e,t,n)=>g(r(e.x,t.x,n.x),r(e.y,t.y,n.y),r(e.z,t.z,n.z)),vec4f:(e,t,n)=>y(r(e.x,t.x,n.x),r(e.y,t.y,n.y),r(e.z,t.z,n.z),r(e.w,t.w,n.w)),vec4h:(e,t,n)=>T(r(e.x,t.x,n.x),r(e.y,t.y,n.y),r(e.z,t.z,n.z),r(e.w,t.w,n.w)),vec4i:(e,t,n)=>p(r(e.x,t.x,n.x),r(e.y,t.y,n.y),r(e.z,t.z,n.z),r(e.w,t.w,n.w)),vec4u:(e,t,n)=>z(r(e.x,t.x,n.x),r(e.y,t.y,n.y),r(e.z,t.z,n.z),r(e.w,t.w,n.w))},length:{vec2f:R,vec2h:R,vec3f:K,vec3h:K,vec4f:N,vec4h:N},add:{vec2f:(e,t)=>o(e.x+t.x,e.y+t.y),vec2h:(e,t)=>i(e.x+t.x,e.y+t.y),vec2i:(e,t)=>m(e.x+t.x,e.y+t.y),vec2u:(e,t)=>f(e.x+t.x,e.y+t.y),vec3f:(e,t)=>l(e.x+t.x,e.y+t.y,e.z+t.z),vec3h:(e,t)=>w(e.x+t.x,e.y+t.y,e.z+t.z),vec3i:(e,t)=>d(e.x+t.x,e.y+t.y,e.z+t.z),vec3u:(e,t)=>g(e.x+t.x,e.y+t.y,e.z+t.z),vec4f:(e,t)=>y(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)=>p(e.x+t.x,e.y+t.y,e.z+t.z,e.w+t.w),vec4u:(e,t)=>z(e.x+t.x,e.y+t.y,e.z+t.z,e.w+t.w)},sub:{vec2f:(e,t)=>o(e.x-t.x,e.y-t.y),vec2h:(e,t)=>i(e.x-t.x,e.y-t.y),vec2i:(e,t)=>m(e.x-t.x,e.y-t.y),vec2u:(e,t)=>f(e.x-t.x,e.y-t.y),vec3f:(e,t)=>l(e.x-t.x,e.y-t.y,e.z-t.z),vec3h:(e,t)=>w(e.x-t.x,e.y-t.y,e.z-t.z),vec3i:(e,t)=>d(e.x-t.x,e.y-t.y,e.z-t.z),vec3u:(e,t)=>g(e.x-t.x,e.y-t.y,e.z-t.z),vec4f:(e,t)=>y(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)=>p(e.x-t.x,e.y-t.y,e.z-t.z,e.w-t.w),vec4u:(e,t)=>z(e.x-t.x,e.y-t.y,e.z-t.z,e.w-t.w)},mulSxV:{vec2f:(e,t)=>o(e*t.x,e*t.y),vec2h:(e,t)=>i(e*t.x,e*t.y),vec2i:(e,t)=>m(e*t.x,e*t.y),vec2u:(e,t)=>f(e*t.x,e*t.y),vec3f:(e,t)=>l(e*t.x,e*t.y,e*t.z),vec3h:(e,t)=>w(e*t.x,e*t.y,e*t.z),vec3i:(e,t)=>d(e*t.x,e*t.y,e*t.z),vec3u:(e,t)=>g(e*t.x,e*t.y,e*t.z),vec4f:(e,t)=>y(e*t.x,e*t.y,e*t.z,e*t.w),vec4h:(e,t)=>T(e*t.x,e*t.y,e*t.z,e*t.w),vec4i:(e,t)=>p(e*t.x,e*t.y,e*t.z,e*t.w),vec4u:(e,t)=>z(e*t.x,e*t.y,e*t.z,e*t.w),mat2x2f:(e,t)=>{let n=t.columns;return ee(e*n[0].x,e*n[0].y,e*n[1].x,e*n[1].y)},mat3x3f:(e,t)=>{let n=t.columns;return te(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 ne(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)=>o(e.x*t.x,e.y*t.y),vec2h:(e,t)=>i(e.x*t.x,e.y*t.y),vec2i:(e,t)=>m(e.x*t.x,e.y*t.y),vec2u:(e,t)=>f(e.x*t.x,e.y*t.y),vec3f:(e,t)=>l(e.x*t.x,e.y*t.y,e.z*t.z),vec3h:(e,t)=>w(e.x*t.x,e.y*t.y,e.z*t.z),vec3i:(e,t)=>d(e.x*t.x,e.y*t.y,e.z*t.z),vec3u:(e,t)=>g(e.x*t.x,e.y*t.y,e.z*t.z),vec4f:(e,t)=>y(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)=>p(e.x*t.x,e.y*t.y,e.z*t.z,e.w*t.w),vec4u:(e,t)=>z(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 ee(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 te(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 ne(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 o(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 l(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 y(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 o(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 l(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 y(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:D,vec2h:D,vec2i:D,vec2u:D,vec3f:P,vec3h:P,vec3i:P,vec3u:P,vec4f:G,vec4h:G,vec4i:G,vec4u:G},normalize:{vec2f:e=>{let t=R(e);return o(e.x/t,e.y/t)},vec2h:e=>{let t=R(e);return i(e.x/t,e.y/t)},vec2i:e=>{let t=R(e);return m(e.x/t,e.y/t)},vec2u:e=>{let t=R(e);return f(e.x/t,e.y/t)},vec3f:e=>{let t=K(e);return l(e.x/t,e.y/t,e.z/t)},vec3h:e=>{let t=K(e);return w(e.x/t,e.y/t,e.z/t)},vec3i:e=>{let t=K(e);return d(e.x/t,e.y/t,e.z/t)},vec3u:e=>{let t=K(e);return g(e.x/t,e.y/t,e.z/t)},vec4f:e=>{let t=N(e);return y(e.x/t,e.y/t,e.z/t,e.w/t)},vec4h:e=>{let t=N(e);return T(e.x/t,e.y/t,e.z/t,e.w/t)},vec4i:e=>{let t=N(e);return p(e.x/t,e.y/t,e.z/t,e.w/t)},vec4u:e=>{let t=N(e);return z(e.x/t,e.y/t,e.z/t,e.w/t)}},cross:{vec3f:(e,t)=>l(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)=>w(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:b(Math.floor),vec2h:M(Math.floor),vec3f:A(Math.floor),vec3h:V(Math.floor),vec4f:I(Math.floor),vec4h:$(Math.floor)},max:{vec2f:ae(Math.max),vec2h:se(Math.max),vec2i:xe(Math.max),vec2u:ue(Math.max),vec3f:re(Math.max),vec3h:ce(Math.max),vec3i:we(Math.max),vec3u:ie(Math.max),vec4f:ye(Math.max),vec4h:oe(Math.max),vec4i:Te(Math.max),vec4u:me(Math.max)},min:{vec2f:ae(Math.min),vec2h:se(Math.min),vec2i:xe(Math.min),vec2u:ue(Math.min),vec3f:re(Math.min),vec3h:ce(Math.min),vec3i:we(Math.min),vec3u:ie(Math.min),vec4f:ye(Math.min),vec4h:oe(Math.min),vec4i:Te(Math.min),vec4u:me(Math.min)},pow:{vec2f:(e,t)=>o(e.x**t.x,e.y**t.y),vec2h:(e,t)=>i(e.x**t.x,e.y**t.y),vec3f:(e,t)=>l(e.x**t.x,e.y**t.y,e.z**t.z),vec3h:(e,t)=>w(e.x**t.x,e.y**t.y,e.z**t.z),vec4f:(e,t)=>y(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)},mix:{vec2f:(e,t,n)=>typeof n=="number"?o(e.x*(1-n)+t.x*n,e.y*(1-n)+t.y*n):o(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"?i(e.x*(1-n)+t.x*n,e.y*(1-n)+t.y*n):i(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"?l(e.x*(1-n)+t.x*n,e.y*(1-n)+t.y*n,e.z*(1-n)+t.z*n):l(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"?w(e.x*(1-n)+t.x*n,e.y*(1-n)+t.y*n,e.z*(1-n)+t.z*n):w(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"?y(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):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,e.w*(1-n.w)+t.w*n.w),vec4h:(e,t,n)=>typeof n=="number"?T(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):T(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:b(Math.sin),vec2h:M(Math.sin),vec3f:A(Math.sin),vec3h:V(Math.sin),vec4f:I(Math.sin),vec4h:$(Math.sin)},cos:{vec2f:b(Math.cos),vec2h:M(Math.cos),vec3f:A(Math.cos),vec3h:V(Math.cos),vec4f:I(Math.cos),vec4h:$(Math.cos)},exp:{vec2f:b(Math.exp),vec2h:M(Math.exp),vec3f:A(Math.exp),vec3h:V(Math.exp),vec4f:I(Math.exp),vec4h:$(Math.exp)},fract:{vec2f:b(e=>e-Math.floor(e)),vec2h:M(e=>e-Math.floor(e)),vec3f:A(e=>e-Math.floor(e)),vec3h:V(e=>e-Math.floor(e)),vec4f:I(e=>e-Math.floor(e)),vec4h:$(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:b(e=>-e),vec2h:M(e=>-e),vec2i:q(e=>-e),vec2u:J(e=>-e),"vec2<bool>":e=>v(!e.x,!e.y),vec3f:A(e=>-e),vec3h:V(e=>-e),vec3i:L(e=>-e),vec3u:j(e=>-e),"vec3<bool>":e=>x(!e.x,!e.y,!e.z),vec4f:I(e=>-e),vec4h:$(e=>-e),vec4i:X(e=>-e),vec4u:Z(e=>-e),"vec4<bool>":e=>u(!e.x,!e.y,!e.z,!e.w)},select:{vec2f:(e,t,n)=>o(n.x?t.x:e.x,n.y?t.y:e.y),vec2h:(e,t,n)=>i(n.x?t.x:e.x,n.y?t.y:e.y),vec2i:(e,t,n)=>m(n.x?t.x:e.x,n.y?t.y:e.y),vec2u:(e,t,n)=>f(n.x?t.x:e.x,n.y?t.y:e.y),"vec2<bool>":(e,t,n)=>v(n.x?t.x:e.x,n.y?t.y:e.y),vec3f:(e,t,n)=>l(n.x?t.x:e.x,n.y?t.y:e.y,n.z?t.z:e.z),vec3h:(e,t,n)=>w(n.x?t.x:e.x,n.y?t.y:e.y,n.z?t.z:e.z),vec3i:(e,t,n)=>d(n.x?t.x:e.x,n.y?t.y:e.y,n.z?t.z:e.z),vec3u:(e,t,n)=>g(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)=>y(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)=>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),vec4i:(e,t,n)=>p(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)=>z(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)=>u(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 W(e){let t=e.dataType.type;return t==="abstractInt"||t==="abstractFloat"||t==="f32"||t==="f16"||t==="i32"||t==="u32"}var be=s((e,t)=>c.add[e.kind](e,t),(e,t)=>({value:`(${e.value} + ${t.value})`,dataType:e.dataType})),_=s((e,t)=>c.sub[e.kind](e,t),(e,t)=>({value:`(${e.value} - ${t.value})`,dataType:e.dataType})),fe=s((e,t)=>{if(typeof e=="number")return c.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 c.mulMxV[e.kind](e,t);if(n&&!a)return c.mulVxM[t.kind](e,t)}return c.mulVxV[t.kind](e,t)},(e,t)=>{let n=W(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}}),Me=s(e=>typeof e=="number"?Math.abs(e):c.abs[e.kind](e),e=>({value:`abs(${e.value})`,dataType:e.dataType})),Ae=s((e,t)=>typeof e=="number"&&typeof t=="number"?Math.atan2(e,t):c.atan2[e.kind](e,t),(e,t)=>({value:`atan2(${e.value}, ${t.value})`,dataType:e.dataType})),Ve=s(e=>typeof e=="number"?Math.acos(e):c.acos[e.kind](e),e=>({value:`acos(${e.value})`,dataType:e.dataType})),Ie=s(e=>typeof e=="number"?Math.asin(e):c.asin[e.kind](e),e=>({value:`asin(${e.value})`,dataType:e.dataType})),$e=s(e=>typeof e=="number"?Math.ceil(e):c.ceil[e.kind](e),e=>({value:`ceil(${e.value})`,dataType:e.dataType})),Be=s((e,t,n)=>typeof e=="number"?Math.min(Math.max(t,e),n):c.clamp[e.kind](e,t,n),(e,t,n)=>({value:`clamp(${e.value}, ${t.value}, ${n.value})`,dataType:e.dataType})),ke=s(e=>typeof e=="number"?Math.cos(e):c.cos[e.kind](e),e=>({value:`cos(${e.value})`,dataType:e.dataType})),Se=s((e,t)=>c.cross[e.kind](e,t),(e,t)=>({value:`cross(${e.value}, ${t.value})`,dataType:e.dataType})),de=s((e,t)=>c.dot[e.kind](e,t),(e,t)=>({value:`dot(${e.value}, ${t.value})`,dataType:U})),Oe=s(e=>c.normalize[e.kind](e),e=>({value:`normalize(${e.value})`,dataType:e.dataType})),Fe=s(e=>typeof e=="number"?Math.floor(e):c.floor[e.kind](e),e=>({value:`floor(${e.value})`,dataType:e.dataType})),Ue=s(e=>typeof e=="number"?e-Math.floor(e):c.fract[e.kind](e),e=>({value:`fract(${e.value})`,dataType:e.dataType})),ge=s(e=>typeof e=="number"?Math.abs(e):c.length[e.kind](e),e=>({value:`length(${e.value})`,dataType:U})),Re=s((e,t)=>typeof e=="number"?Math.max(e,t):c.max[e.kind](e,t),(e,t)=>({value:`max(${e.value}, ${t.value})`,dataType:e.dataType})),Ke=s((e,t)=>typeof e=="number"?Math.min(e,t):c.min[e.kind](e,t),(e,t)=>({value:`min(${e.value}, ${t.value})`,dataType:e.dataType})),Ne=s(e=>typeof e=="number"?Math.sin(e):c.sin[e.kind](e),e=>({value:`sin(${e.value})`,dataType:e.dataType})),We=s(e=>typeof e=="number"?Math.exp(e):c.exp[e.kind](e),e=>({value:`exp(${e.value})`,dataType:e.dataType})),Ee=s((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 c.pow[e.kind](e,t);throw new Error("Invalid arguments to pow()")},(e,t)=>({value:`pow(${e.value}, ${t.value})`,dataType:e.dataType})),_e=s((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 c.mix[e.kind](e,t,n)},(e,t,n)=>({value:`mix(${e.value}, ${t.value}, ${n.value})`,dataType:e.dataType})),Ce=s((e,t)=>_(e,fe(2*de(t,e),t)),(e,t)=>({value:`reflect(${e.value}, ${t.value})`,dataType:e.dataType})),De=s((e,t)=>typeof e=="number"&&typeof t=="number"?Math.abs(e-t):ge(_(e,t)),(e,t)=>({value:`distance(${e.value}, ${t.value})`,dataType:U})),Pe=s(e=>typeof e=="number"?-e:c.neg[e.kind](e),e=>({value:`-(${e.value})`,dataType:e.dataType}));function E(e){return e.dataType.type.includes("2")?v:e.dataType.type.includes("3")?x:u}var Ge=s((e,t)=>ve(C(e,t)),(e,t)=>({value:`all(${e.value} == ${t.value})`,dataType:S})),C=s((e,t)=>c.eq[e.kind](e,t),(e,t)=>({value:`(${e.value} == ${t.value})`,dataType:E(e)})),qe=s((e,t)=>k(C(e,t)),(e,t)=>({value:`(${e.value} != ${t.value})`,dataType:E(e)})),H=s((e,t)=>c.lt[e.kind](e,t),(e,t)=>({value:`(${e.value} < ${t.value})`,dataType:E(e)})),Je=s((e,t)=>le(H(e,t),C(e,t)),(e,t)=>({value:`(${e.value} <= ${t.value})`,dataType:E(e)})),Le=s((e,t)=>pe(k(H(e,t)),k(C(e,t))),(e,t)=>({value:`(${e.value} > ${t.value})`,dataType:E(e)})),je=s((e,t)=>k(H(e,t)),(e,t)=>({value:`(${e.value} >= ${t.value})`,dataType:E(e)})),k=s(e=>c.neg[e.kind](e),e=>({value:`!(${e.value})`,dataType:e.dataType})),le=s((e,t)=>c.or[e.kind](e,t),(e,t)=>({value:`(${e.value} | ${t.value})`,dataType:e.dataType})),pe=s((e,t)=>k(le(k(e),k(t))),(e,t)=>({value:`(${e.value} & ${t.value})`,dataType:e.dataType})),ve=s(e=>c.all[e.kind](e),e=>({value:`all(${e.value})`,dataType:S})),Xe=s(e=>!ve(k(e)),e=>({value:`any(${e.value})`,dataType:S})),Ze=s((e,t,n=.01)=>typeof e=="number"&&typeof t=="number"?Math.abs(e-t)<n:typeof e!="number"&&typeof t!="number"?c.isCloseToZero[e.kind](_(e,t),n):!1,(e,t,n={value:.01,dataType:U})=>W(e)&&W(t)?{value:`(abs(f32(${e.value}) - f32(${t.value})) <= ${n.value})`,dataType:S}:!W(e)&&!W(t)?{value:`all(abs(${e.value} - ${t.value}) <= (${e.value} - ${e.value}) + ${n.value})`,dataType:S}:{value:"false",dataType:S}),He=s((e,t,n)=>typeof n=="boolean"?n?t:e:c.select[e.kind](e,t,n),(e,t,n)=>({value:`select(${e.value}, ${t.value}, ${n.value})`,dataType:e.dataType}));var Qe=s(()=>console.warn("workgroupBarrier is a no-op outside of GPU mode."),()=>({value:"workgroupBarrier()",dataType:F})),Ye=s(()=>console.warn("storageBarrier is a no-op outside of GPU mode."),()=>({value:"storageBarrier()",dataType:F})),et=s(()=>console.warn("textureBarrier is a no-op outside of GPU mode."),()=>({value:"textureBarrier()",dataType:F})),tt=s(e=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},e=>{if(h(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)}`)}),nt=s((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(!h(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:F}}),at=s((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(h(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)}`)}),st=s((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(h(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)}`)}),rt=s((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(h(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)}`)}),ct=s((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(h(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)}`)}),yt=s((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(h(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)}`)}),ot=s((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(h(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)}`)}),lt=s((e,t)=>{throw new Error("Atomic operations are not supported outside of GPU mode.")},(e,t)=>{if(h(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)}`)});var vt=s(e=>e.length,e=>({value:`arrayLength(&${e.value})`,dataType:O}));import*as B from"typed-binary";var xt=s(e=>{let t=new ArrayBuffer(4);new B.BufferWriter(t).writeUint32(e);let a=new B.BufferReader(t);return o(a.readFloat16(),a.readFloat16())},e=>({value:`unpack2x16float(${e.value})`,dataType:o})),ut=s(e=>{let t=new ArrayBuffer(4),n=new B.BufferWriter(t);n.writeFloat16(e.x),n.writeFloat16(e.y);let a=new B.BufferReader(t);return O(a.readUint32())},e=>({value:`pack2x16float(${e.value})`,dataType:O})),wt=s(e=>{let t=new ArrayBuffer(4);new B.BufferWriter(t).writeUint32(e);let a=new B.BufferReader(t);return y(a.readUint8()/255,a.readUint8()/255,a.readUint8()/255,a.readUint8()/255)},e=>({value:`unpack4x8unorm(${e.value})`,dataType:y})),it=s(e=>{let t=new ArrayBuffer(4),n=new B.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 B.BufferReader(t);return O(a.readUint32())},e=>({value:`pack4x8unorm(${e.value})`,dataType:O}));var Tt=s((e,t,n,a,Q)=>{throw new Error("Texture sampling is not supported outside of GPU mode.")},(e,t,n,a,Q)=>{let Y=[e,t,n];return a!==void 0&&Y.push(a),Q!==void 0&&Y.push(Q),{value:`textureSample(${Y.map(ze=>ze.value).join(", ")})`,dataType:y}});export{Me as abs,Ve as acos,be as add,ve as all,Ge as allEq,pe as and,Xe as any,vt as arrayLength,Ie as asin,Ae as atan2,at as atomicAdd,yt as atomicAnd,tt as atomicLoad,rt as atomicMax,ct as atomicMin,ot as atomicOr,nt as atomicStore,st as atomicSub,lt as atomicXor,$e as ceil,Be as clamp,ke as cos,Se as cross,he as discard,De as distance,de as dot,C as eq,We as exp,Fe as floor,Ue as fract,je as ge,Le as gt,Ze as isCloseTo,Je as le,ge as length,H as lt,Re as max,Ke as min,_e as mix,fe as mul,qe as ne,Pe as neg,Oe as normalize,k as not,le as or,ut as pack2x16float,it as pack4x8unorm,Ee as pow,Ce as reflect,He as select,Ne as sin,Ye as storageBarrier,_ as sub,et as textureBarrier,Tt as textureSample,xt as unpack2x16float,wt as unpack4x8unorm,Qe as workgroupBarrier};
|
2
2
|
//# sourceMappingURL=index.js.map
|