typegpu 0.8.0-alpha.2 → 0.8.1

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.
Files changed (56) hide show
  1. package/README.md +33 -6
  2. package/chunk-2UXPGML5.js +7 -0
  3. package/chunk-2UXPGML5.js.map +1 -0
  4. package/chunk-3246CM7C.cjs +2 -0
  5. package/chunk-3246CM7C.cjs.map +1 -0
  6. package/{chunk-BDGVKGU4.js → chunk-4W5Z7BO4.js} +6 -6
  7. package/chunk-4W5Z7BO4.js.map +1 -0
  8. package/{chunk-ESIHND6W.cjs → chunk-5Y6GTBWR.cjs} +3 -3
  9. package/{chunk-ESIHND6W.cjs.map → chunk-5Y6GTBWR.cjs.map} +1 -1
  10. package/{chunk-DH4X56C7.js → chunk-7S3IK3D4.js} +2 -2
  11. package/{chunk-MJ6A4DOA.js → chunk-7XFSK632.js} +2 -2
  12. package/{chunk-WDMOZFKN.cjs → chunk-PRMFGUQT.cjs} +2 -2
  13. package/{chunk-WDMOZFKN.cjs.map → chunk-PRMFGUQT.cjs.map} +1 -1
  14. package/{chunk-44LAYHPR.cjs → chunk-TRE7NUKE.cjs} +6 -6
  15. package/chunk-TRE7NUKE.cjs.map +1 -0
  16. package/chunk-VOVQAOVG.js +2 -0
  17. package/chunk-VOVQAOVG.js.map +1 -0
  18. package/chunk-ZYGTVBDH.cjs +7 -0
  19. package/chunk-ZYGTVBDH.cjs.map +1 -0
  20. package/common/index.cjs +1 -1
  21. package/common/index.d.cts +1 -1
  22. package/common/index.d.ts +1 -1
  23. package/common/index.js +1 -1
  24. package/data/index.cjs +1 -1
  25. package/data/index.d.cts +3 -3
  26. package/data/index.d.ts +3 -3
  27. package/data/index.js +1 -1
  28. package/index.cjs +51 -51
  29. package/index.cjs.map +1 -1
  30. package/index.d.cts +2 -2
  31. package/index.d.ts +2 -2
  32. package/index.js +40 -40
  33. package/index.js.map +1 -1
  34. package/{matrix-UOB09LaW.d.cts → matrix-DHFT4O8f.d.cts} +1 -1
  35. package/{matrix-CjLuYXH1.d.ts → matrix-DLipCOZF.d.ts} +1 -1
  36. package/package.json +2 -2
  37. package/std/index.cjs +1 -1
  38. package/std/index.cjs.map +1 -1
  39. package/std/index.d.cts +2 -2
  40. package/std/index.d.ts +2 -2
  41. package/std/index.js +1 -1
  42. package/std/index.js.map +1 -1
  43. package/{tgpuConstant-sKeoSjPD.d.ts → tgpuConstant-BU72w5qs.d.cts} +15 -13
  44. package/{tgpuConstant-sKeoSjPD.d.cts → tgpuConstant-BU72w5qs.d.ts} +15 -13
  45. package/chunk-44LAYHPR.cjs.map +0 -1
  46. package/chunk-6OJFCDQF.js +0 -7
  47. package/chunk-6OJFCDQF.js.map +0 -1
  48. package/chunk-BDGVKGU4.js.map +0 -1
  49. package/chunk-CODEFPMD.cjs +0 -2
  50. package/chunk-CODEFPMD.cjs.map +0 -1
  51. package/chunk-HLB6TY7I.cjs +0 -7
  52. package/chunk-HLB6TY7I.cjs.map +0 -1
  53. package/chunk-ZYSFFI3M.js +0 -2
  54. package/chunk-ZYSFFI3M.js.map +0 -1
  55. /package/{chunk-DH4X56C7.js.map → chunk-7S3IK3D4.js.map} +0 -0
  56. /package/{chunk-MJ6A4DOA.js.map → chunk-7XFSK632.js.map} +0 -0
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }var _chunkHLB6TY7Icjs = require('./chunk-HLB6TY7I.cjs');var _chunk44LAYHPRcjs = require('./chunk-44LAYHPR.cjs');var ae=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"bitcastU32toF32",normalImpl:(e=>typeof e=="number"?_chunkHLB6TY7Icjs.S.call(void 0, e):_chunkHLB6TY7Icjs.U.bitcastU32toF32[e.kind](e)),codegenImpl:e=>_chunk44LAYHPRcjs.Ea`bitcast<f32>(${e})`,signature:(...e)=>{let t=_nullishCoalesce(_chunk44LAYHPRcjs.Ia.call(void 0, e,[_chunk44LAYHPRcjs.Sa]), () => (e));return{argTypes:t,returnType:_chunk44LAYHPRcjs.v.call(void 0, t[0])?t[0].type==="vec2u"?_chunk44LAYHPRcjs.Ya:t[0].type==="vec3u"?_chunk44LAYHPRcjs.bb:_chunk44LAYHPRcjs.gb:_chunk44LAYHPRcjs.Va}}}),ne= exports.d =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"bitcastU32toI32",normalImpl:(e=>typeof e=="number"?_chunkHLB6TY7Icjs.T.call(void 0, e):_chunkHLB6TY7Icjs.U.bitcastU32toI32[e.kind](e)),codegenImpl:e=>_chunk44LAYHPRcjs.Ea`bitcast<i32>(${e})`,signature:(...e)=>{let t=_nullishCoalesce(_chunk44LAYHPRcjs.Ia.call(void 0, e,[_chunk44LAYHPRcjs.Sa]), () => (e));return{argTypes:t,returnType:_chunk44LAYHPRcjs.v.call(void 0, t[0])?t[0].type==="vec2u"?_chunk44LAYHPRcjs._a:t[0].type==="vec3u"?_chunk44LAYHPRcjs.db:_chunk44LAYHPRcjs.ib:_chunk44LAYHPRcjs.Ua}}});var _typedbinary = require('typed-binary'); var m = _interopRequireWildcard(_typedbinary);var ie=_chunk44LAYHPRcjs.Ma.call(void 0, e=>{let t=new ArrayBuffer(4);new m.BufferWriter(t).writeUint32(e);let s=new m.BufferReader(t);return _chunk44LAYHPRcjs.Ya.call(void 0, s.readFloat16(),s.readFloat16())},e=>_chunk44LAYHPRcjs.aa.call(void 0, _chunk44LAYHPRcjs.Ea`unpack2x16float(${e})`,_chunk44LAYHPRcjs.Ya),"unpack2x16float"),pe= exports.f =_chunk44LAYHPRcjs.Ma.call(void 0, e=>{let t=new ArrayBuffer(4),l=new m.BufferWriter(t);l.writeFloat16(e.x),l.writeFloat16(e.y);let s=new m.BufferReader(t);return _chunk44LAYHPRcjs.Sa.call(void 0, s.readUint32())},e=>_chunk44LAYHPRcjs.aa.call(void 0, _chunk44LAYHPRcjs.Ea`pack2x16float(${e})`,_chunk44LAYHPRcjs.Sa),"pack2x16float"),fe= exports.g =_chunk44LAYHPRcjs.Ma.call(void 0, e=>{let t=new ArrayBuffer(4);new m.BufferWriter(t).writeUint32(e);let s=new m.BufferReader(t);return _chunk44LAYHPRcjs.gb.call(void 0, s.readUint8()/255,s.readUint8()/255,s.readUint8()/255,s.readUint8()/255)},e=>_chunk44LAYHPRcjs.aa.call(void 0, _chunk44LAYHPRcjs.Ea`unpack4x8unorm(${e})`,_chunk44LAYHPRcjs.gb),"unpack4x8unorm"),ue= exports.h =_chunk44LAYHPRcjs.Ma.call(void 0, e=>{let t=new ArrayBuffer(4),l=new m.BufferWriter(t);l.writeUint8(e.x*255),l.writeUint8(e.y*255),l.writeUint8(e.z*255),l.writeUint8(e.w*255);let s=new m.BufferReader(t);return _chunk44LAYHPRcjs.Sa.call(void 0, s.readUint32())},e=>_chunk44LAYHPRcjs.aa.call(void 0, _chunk44LAYHPRcjs.Ea`pack4x8unorm(${e})`,_chunk44LAYHPRcjs.Sa),"pack4x8unorm");function T(e){return e.type.includes("2")?_chunk44LAYHPRcjs.ab:e.type.includes("3")?_chunk44LAYHPRcjs.fb:_chunk44LAYHPRcjs.kb}var Re=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"allEq",signature:(...e)=>({argTypes:e,returnType:_chunk44LAYHPRcjs.Ra}),normalImpl:(e,t)=>$(x(e,t)),codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`all(${e} == ${t})`}),x=(e,t)=>_chunkHLB6TY7Icjs.U.eq[e.kind](e,t),Ae= exports.l =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"eq",signature:(...e)=>({argTypes:e,returnType:T(e[0])}),normalImpl:x,codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`(${e} == ${t})`}),Se= exports.m =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"ne",signature:(...e)=>({argTypes:e,returnType:T(e[0])}),normalImpl:(e,t)=>d(x(e,t)),codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`(${e} != ${t})`}),A=(e,t)=>_chunkHLB6TY7Icjs.U.lt[e.kind](e,t),Me= exports.n =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"lt",signature:(...e)=>({argTypes:e,returnType:T(e[0])}),normalImpl:A,codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`(${e} < ${t})`}),ze= exports.o =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"le",signature:(...e)=>({argTypes:e,returnType:T(e[0])}),normalImpl:(e,t)=>I(A(e,t),x(e,t)),codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`(${e} <= ${t})`}),we= exports.p =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"gt",signature:(...e)=>({argTypes:e,returnType:T(e[0])}),normalImpl:(e,t)=>O(d(A(e,t)),d(x(e,t))),codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`(${e} > ${t})`}),Ie= exports.q =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"ge",signature:(...e)=>({argTypes:e,returnType:T(e[0])}),normalImpl:(e,t)=>d(A(e,t)),codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`(${e} >= ${t})`}),d=e=>_chunkHLB6TY7Icjs.U.neg[e.kind](e),$e= exports.r =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"not",signature:(...e)=>({argTypes:e,returnType:e[0]}),normalImpl:d,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`!(${e})`}),I=(e,t)=>_chunkHLB6TY7Icjs.U.or[e.kind](e,t),Ve= exports.s =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"or",signature:(...e)=>({argTypes:e,returnType:e[0]}),normalImpl:I,codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`(${e} | ${t})`}),O=(e,t)=>d(I(d(e),d(t))),Fe= exports.t =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"and",signature:(...e)=>({argTypes:e,returnType:e[0]}),normalImpl:O,codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`(${e} & ${t})`}),$=e=>_chunkHLB6TY7Icjs.U.all[e.kind](e),Ue= exports.u =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"all",signature:(...e)=>({argTypes:e,returnType:_chunk44LAYHPRcjs.Ra}),normalImpl:$,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`all(${e})`}),ke= exports.v =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"any",signature:(...e)=>({argTypes:e,returnType:_chunk44LAYHPRcjs.Ra}),normalImpl:e=>!$(d(e)),codegenImpl:e=>_chunk44LAYHPRcjs.Ea`any(${e})`}),Ne= exports.w =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"isCloseTo",signature:(...e)=>({argTypes:e,returnType:_chunk44LAYHPRcjs.Ra}),normalImpl:(e,t,l=.01)=>typeof e=="number"&&typeof t=="number"?Math.abs(e-t)<l:_chunk44LAYHPRcjs.r.call(void 0, e)&&_chunk44LAYHPRcjs.r.call(void 0, t)?_chunkHLB6TY7Icjs.U.isCloseToZero[e.kind](_chunkHLB6TY7Icjs.W[_chunk44LAYHPRcjs.a].jsImpl(e,t),l):!1,codegenImpl:(e,t,l=_chunk44LAYHPRcjs.aa.call(void 0, .01,_chunk44LAYHPRcjs.Va))=>_chunk44LAYHPRcjs.$.call(void 0, e)&&_chunk44LAYHPRcjs.$.call(void 0, t)?_chunk44LAYHPRcjs.Ea`(abs(f32(${e}) - f32(${t})) <= ${l})`:!_chunk44LAYHPRcjs.$.call(void 0, e)&&!_chunk44LAYHPRcjs.$.call(void 0, t)?_chunk44LAYHPRcjs.Ea`all(abs(${e} - ${t}) <= (${e} - ${e}) + ${l})`:"false"});function j(e,t,l){return typeof l=="boolean"?l?t:e:_chunkHLB6TY7Icjs.U.select[e.kind](e,t,l)}var De=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"select",signature:(...e)=>({argTypes:e,returnType:e[0]}),normalImpl:j,codegenImpl:(e,t,l)=>_chunk44LAYHPRcjs.Ea`select(${e}, ${t}, ${l})`});var L={r8unorm:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:1,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!0,canMultisample:!0,canResolve:!0,storageBindings:["write-only","read-only","read-write"]},r8snorm:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:1,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:["write-only","read-only"]},r8uint:{channelType:_chunk44LAYHPRcjs.Sa,vectorType:_chunk44LAYHPRcjs.jb,texelSize:1,sampleTypes:["uint"],aspects:["color"],canRenderAttachment:!0,canBlend:!1,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only","read-write"]},r8sint:{channelType:_chunk44LAYHPRcjs.Ua,vectorType:_chunk44LAYHPRcjs.ib,texelSize:1,sampleTypes:["sint"],aspects:["color"],canRenderAttachment:!0,canBlend:!1,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only","read-write"]},rg8unorm:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:2,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!0,canMultisample:!0,canResolve:!0,storageBindings:["write-only","read-only"]},rg8snorm:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:2,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:["write-only","read-only"]},rg8uint:{channelType:_chunk44LAYHPRcjs.Sa,vectorType:_chunk44LAYHPRcjs.jb,texelSize:2,sampleTypes:["uint"],aspects:["color"],canRenderAttachment:!0,canBlend:!1,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only"]},rg8sint:{channelType:_chunk44LAYHPRcjs.Ua,vectorType:_chunk44LAYHPRcjs.ib,texelSize:2,sampleTypes:["sint"],aspects:["color"],canRenderAttachment:!0,canBlend:!1,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only"]},rgba8unorm:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:4,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!0,canMultisample:!0,canResolve:!0,storageBindings:["write-only","read-only","read-write"]},"rgba8unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:4,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!0,canMultisample:!0,canResolve:!0,storageBindings:null},rgba8snorm:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:4,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!1,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only"]},rgba8uint:{channelType:_chunk44LAYHPRcjs.Sa,vectorType:_chunk44LAYHPRcjs.jb,texelSize:4,sampleTypes:["uint"],aspects:["color"],canRenderAttachment:!0,canBlend:!1,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only","read-write"]},rgba8sint:{channelType:_chunk44LAYHPRcjs.Ua,vectorType:_chunk44LAYHPRcjs.ib,texelSize:4,sampleTypes:["sint"],aspects:["color"],canRenderAttachment:!0,canBlend:!1,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only","read-write"]},bgra8unorm:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:4,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!0,canMultisample:!0,canResolve:!0,storageBindings:["write-only"]},"bgra8unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:4,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!0,canMultisample:!0,canResolve:!0,storageBindings:null},r16unorm:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:2,sampleTypes:["unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!0,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only"]},r16snorm:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:2,sampleTypes:["unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!0,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only"]},r16uint:{channelType:_chunk44LAYHPRcjs.Sa,vectorType:_chunk44LAYHPRcjs.jb,texelSize:2,sampleTypes:["uint"],aspects:["color"],canRenderAttachment:!0,canBlend:!1,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only","read-write"]},r16sint:{channelType:_chunk44LAYHPRcjs.Ua,vectorType:_chunk44LAYHPRcjs.ib,texelSize:2,sampleTypes:["sint"],aspects:["color"],canRenderAttachment:!0,canBlend:!1,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only","read-write"]},r16float:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:2,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!0,canMultisample:!0,canResolve:!0,storageBindings:["write-only","read-only","read-write"]},rg16unorm:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:4,sampleTypes:["unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!0,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only"]},rg16snorm:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:4,sampleTypes:["unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!0,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only"]},rg16uint:{channelType:_chunk44LAYHPRcjs.Sa,vectorType:_chunk44LAYHPRcjs.jb,texelSize:4,sampleTypes:["uint"],aspects:["color"],canRenderAttachment:!0,canBlend:!1,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only"]},rg16sint:{channelType:_chunk44LAYHPRcjs.Ua,vectorType:_chunk44LAYHPRcjs.ib,texelSize:4,sampleTypes:["sint"],aspects:["color"],canRenderAttachment:!0,canBlend:!1,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only"]},rg16float:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:4,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!0,canMultisample:!0,canResolve:!0,storageBindings:["write-only","read-only"]},rgba16unorm:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:8,sampleTypes:["unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!0,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only"]},rgba16snorm:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:8,sampleTypes:["unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!0,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only"]},rgba16uint:{channelType:_chunk44LAYHPRcjs.Sa,vectorType:_chunk44LAYHPRcjs.jb,texelSize:8,sampleTypes:["uint"],aspects:["color"],canRenderAttachment:!0,canBlend:!1,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only","read-write"]},rgba16sint:{channelType:_chunk44LAYHPRcjs.Ua,vectorType:_chunk44LAYHPRcjs.ib,texelSize:8,sampleTypes:["sint"],aspects:["color"],canRenderAttachment:!0,canBlend:!1,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only","read-write"]},rgba16float:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:8,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!0,canMultisample:!0,canResolve:!0,storageBindings:["write-only","read-only","read-write"]},r32uint:{channelType:_chunk44LAYHPRcjs.Sa,vectorType:_chunk44LAYHPRcjs.jb,texelSize:4,sampleTypes:["uint"],aspects:["color"],canRenderAttachment:!0,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:["write-only","read-only","read-write"]},r32sint:{channelType:_chunk44LAYHPRcjs.Ua,vectorType:_chunk44LAYHPRcjs.ib,texelSize:4,sampleTypes:["sint"],aspects:["color"],canRenderAttachment:!0,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:["write-only","read-only","read-write"]},r32float:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:4,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!0,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only","read-write"]},rg32uint:{channelType:_chunk44LAYHPRcjs.Sa,vectorType:_chunk44LAYHPRcjs.jb,texelSize:8,sampleTypes:["uint"],aspects:["color"],canRenderAttachment:!0,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:["write-only","read-only"]},rg32sint:{channelType:_chunk44LAYHPRcjs.Ua,vectorType:_chunk44LAYHPRcjs.ib,texelSize:8,sampleTypes:["sint"],aspects:["color"],canRenderAttachment:!0,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:["write-only","read-only"]},rg32float:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:8,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!0,canMultisample:!1,canResolve:!1,storageBindings:["write-only","read-only","read-write"]},rgba32uint:{channelType:_chunk44LAYHPRcjs.Sa,vectorType:_chunk44LAYHPRcjs.jb,texelSize:16,sampleTypes:["uint"],aspects:["color"],canRenderAttachment:!0,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:["write-only","read-only","read-write"]},rgba32sint:{channelType:_chunk44LAYHPRcjs.Ua,vectorType:_chunk44LAYHPRcjs.ib,texelSize:16,sampleTypes:["sint"],aspects:["color"],canRenderAttachment:!0,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:["write-only","read-only","read-write"]},rgba32float:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!0,canMultisample:!1,canResolve:!1,storageBindings:["write-only","read-only","read-write"]},rgb10a2uint:{channelType:_chunk44LAYHPRcjs.Sa,vectorType:_chunk44LAYHPRcjs.jb,texelSize:4,sampleTypes:["uint"],aspects:["color"],canRenderAttachment:!0,canBlend:!1,canMultisample:!0,canResolve:!1,storageBindings:["write-only","read-only"]},rgb10a2unorm:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:4,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!0,canMultisample:!0,canResolve:!0,storageBindings:["write-only","read-only"]},rg11b10ufloat:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:4,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!0,canBlend:!0,canMultisample:!0,canResolve:!0,storageBindings:["write-only","read-only"]},rgb9e5ufloat:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:4,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},stencil8:{channelType:_chunk44LAYHPRcjs.Sa,vectorType:_chunk44LAYHPRcjs.jb,texelSize:1,sampleTypes:["uint"],aspects:["stencil"],canRenderAttachment:!0,canBlend:!1,canMultisample:!0,canResolve:!1,storageBindings:null},depth16unorm:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:2,sampleTypes:["depth","unfilterable-float"],aspects:["depth"],canRenderAttachment:!0,canBlend:!1,canMultisample:!0,canResolve:!1,storageBindings:null},depth24plus:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:4,sampleTypes:["depth","unfilterable-float"],aspects:["depth"],canRenderAttachment:!0,canBlend:!1,canMultisample:!0,canResolve:!1,storageBindings:null},"depth24plus-stencil8":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:4,sampleTypes:["depth","unfilterable-float"],aspects:["depth","stencil"],canRenderAttachment:!0,canBlend:!1,canMultisample:!0,canResolve:!1,storageBindings:null},depth32float:{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:4,sampleTypes:["depth","unfilterable-float"],aspects:["depth"],canRenderAttachment:!0,canBlend:!1,canMultisample:!0,canResolve:!1,storageBindings:null},"depth32float-stencil8":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:4,sampleTypes:["depth","unfilterable-float"],aspects:["depth","stencil"],canRenderAttachment:!0,canBlend:!1,canMultisample:!0,canResolve:!1,storageBindings:null},"bc1-rgba-unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:8,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"bc1-rgba-unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:8,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"bc2-rgba-unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"bc2-rgba-unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"bc3-rgba-unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"bc3-rgba-unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"bc4-r-unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:8,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"bc4-r-snorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:8,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"bc5-rg-unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"bc5-rg-snorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"bc6h-rgb-ufloat":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"bc6h-rgb-float":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"bc7-rgba-unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"bc7-rgba-unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"etc2-rgb8unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:8,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"etc2-rgb8unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:8,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"etc2-rgb8a1unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:8,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"etc2-rgb8a1unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:8,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"etc2-rgba8unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"etc2-rgba8unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"eac-r11unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:8,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"eac-r11snorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:8,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"eac-rg11unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"eac-rg11snorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-4x4-unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-4x4-unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-5x4-unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-5x4-unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-5x5-unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-5x5-unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-6x5-unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-6x5-unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-6x6-unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-6x6-unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-8x5-unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-8x5-unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-8x6-unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-8x6-unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-8x8-unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-8x8-unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-10x5-unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-10x5-unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-10x6-unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-10x6-unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-10x8-unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-10x8-unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-10x10-unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-10x10-unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-12x10-unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-12x10-unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-12x12-unorm":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null},"astc-12x12-unorm-srgb":{channelType:_chunk44LAYHPRcjs.Va,vectorType:_chunk44LAYHPRcjs.gb,texelSize:16,sampleTypes:["float","unfilterable-float"],aspects:["color"],canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1,storageBindings:null}};function _e(e,t){let l=L[e];if(!l)throw new Error(`Unknown texture format: ${e}`);let s={...l};switch(e){case"r32float":case"rg32float":case"rgba32float":t.features.has("float32-filterable")||(s={...s,sampleTypes:l.sampleTypes.filter(S=>S!=="float")}),t.features.has("float32-blendable")||(s={...s,canBlend:!1});break;case"bgra8unorm":t.features.has("bgra8unorm-storage")||(s={...s,storageBindings:null});break;case"rg11b10ufloat":t.features.has("rg11b10ufloat-renderable")||(s={...s,canRenderAttachment:!1,canBlend:!1,canMultisample:!1,canResolve:!1});break}if(s.storageBindings){let S=t.features.has("texture-formats-tier1"),G=t.features.has("texture-formats-tier2"),g=[...s.storageBindings],P=["r8unorm","r8uint","r8sint","r16uint","r16sint","r16float","rgba8unorm","rgba8uint","rgba8sint","rgba16uint","rgba16sint","rgba16float","r32uint","r32sint","r32float","rgba32uint","rgba32sint","rgba32float"],C=["r8snorm","rg8unorm","rg8snorm","rg8uint","rg8sint","rgba8snorm","r16unorm","r16snorm","rg16unorm","rg16snorm","rg16uint","rg16sint","rg16float","rgba16unorm","rgba16snorm","rgb10a2uint","rgb10a2unorm","rg11b10ufloat"];P.includes(e)&&!G&&(g=g.filter(R=>R!=="read-write")),C.includes(e)&&!S&&(g=g.filter(R=>R!=="write-only"&&R!=="read-only")),s={...s,storageBindings:g.length>0?g:null}}return s}var Ge=["f16","clip_distances","dual_source_blending","subgroups","primitive_index"],Pe= exports.j ={f16:"shader-f16",clip_distances:"clip-distances",dual_source_blending:"dual-source-blending",subgroups:"subgroups",primitive_index:"primitive-index"};exports.a = L; exports.b = _e; exports.c = ae; exports.d = ne; exports.e = ie; exports.f = pe; exports.g = fe; exports.h = ue; exports.i = Ge; exports.j = Pe; exports.k = Re; exports.l = Ae; exports.m = Se; exports.n = Me; exports.o = ze; exports.p = we; exports.q = Ie; exports.r = $e; exports.s = Ve; exports.t = Fe; exports.u = Ue; exports.v = ke; exports.w = Ne; exports.x = De;
2
- //# sourceMappingURL=chunk-CODEFPMD.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/Users/iwo/Projects/wigsill/packages/typegpu/dist/chunk-CODEFPMD.cjs","../src/std/bitcast.ts","../src/std/packing.ts","../src/std/boolean.ts","../src/core/texture/textureFormats.ts"],"names":["bitcastU32toF32","dualImpl","value","bitcastU32toF32Impl","VectorOps","n","stitch","arg","uargs","unify","u32","isVec","vec2f","vec3f","vec4f","f32","bitcastU32toI32","bitcastU32toI32Impl","vec2i","vec3i","vec4i","i32","unpack2x16float","createDualImpl","buffer","reader","snip","pack2x16float","writer","unpack4x8unorm","pack4x8unorm","correspondingBooleanVectorSchema","dataType","vec2b","vec3b","vec4b","allEq","argTypes","bool","lhs","rhs","cpuAll","cpuEq","eq","ne","cpuNot","cpuLt","lt","le","cpuOr","gt","cpuAnd","ge","not","or","and","all","any","isCloseTo","args","precision","isVecInstance","sub","$internal","isSnippetNumeric","cpuSelect","f","cond","select","textureFormats","vec4u","getDeviceTextureFormatInfo","format","device","baseInfo"],"mappings":"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","file":"/Users/iwo/Projects/wigsill/packages/typegpu/dist/chunk-CODEFPMD.cjs","sourcesContent":[null,"import { dualImpl } from '../core/function/dualImpl.ts';\nimport { stitch } from '../core/resolve/stitch.ts';\nimport { bitcastU32toF32Impl, bitcastU32toI32Impl } from '../data/numberOps.ts';\nimport { f32, i32, u32 } from '../data/numeric.ts';\nimport { isVec } from '../data/wgslTypes.ts';\nimport { vec2f, vec2i, vec3f, vec3i, vec4f, vec4i } from '../data/vector.ts';\nimport { VectorOps } from '../data/vectorOps.ts';\nimport type {\n v2f,\n v2i,\n v2u,\n v3f,\n v3i,\n v3u,\n v4f,\n v4i,\n v4u,\n} from '../data/wgslTypes.ts';\nimport { unify } from '../tgsl/conversion.ts';\n\nexport type BitcastU32toF32Overload =\n & ((value: number) => number)\n & ((value: v2u) => v2f)\n & ((value: v3u) => v3f)\n & ((value: v4u) => v4f);\n\nexport const bitcastU32toF32 = dualImpl({\n name: 'bitcastU32toF32',\n normalImpl: ((value) => {\n if (typeof value === 'number') {\n return bitcastU32toF32Impl(value);\n }\n return VectorOps.bitcastU32toF32[value.kind](value);\n }) as BitcastU32toF32Overload,\n codegenImpl: (n) => stitch`bitcast<f32>(${n})`,\n signature: (...arg) => {\n const uargs = unify(arg, [u32]) ?? arg;\n return {\n argTypes: uargs,\n returnType: isVec(uargs[0])\n ? uargs[0].type === 'vec2u'\n ? vec2f\n : uargs[0].type === 'vec3u'\n ? vec3f\n : vec4f\n : f32,\n };\n },\n});\n\nexport type BitcastU32toI32Overload =\n & ((value: number) => number)\n & ((value: v2u) => v2i)\n & ((value: v3u) => v3i)\n & ((value: v4u) => v4i);\n\nexport const bitcastU32toI32 = dualImpl({\n name: 'bitcastU32toI32',\n normalImpl: ((value) => {\n if (typeof value === 'number') {\n return bitcastU32toI32Impl(value);\n }\n return VectorOps.bitcastU32toI32[value.kind](value);\n }) as BitcastU32toI32Overload,\n codegenImpl: (n) => stitch`bitcast<i32>(${n})`,\n signature: (...arg) => {\n const uargs = unify(arg, [u32]) ?? arg;\n return {\n argTypes: uargs,\n returnType: isVec(uargs[0])\n ? uargs[0].type === 'vec2u'\n ? vec2i\n : uargs[0].type === 'vec3u'\n ? vec3i\n : vec4i\n : i32,\n };\n },\n});\n","import * as TB from 'typed-binary';\nimport { u32 } from '../data/numeric.ts';\nimport { vec2f, vec4f } from '../data/vector.ts';\nimport type { v2f, v4f } from '../data/wgslTypes.ts';\nimport { createDualImpl } from '../core/function/dualImpl.ts';\nimport { stitch } from '../core/resolve/stitch.ts';\nimport { snip } from '../data/snippet.ts';\n\n/**\n * @privateRemarks\n * https://gpuweb.github.io/gpuweb/wgsl/#unpack2x16float-builtin\n */\nexport const unpack2x16float = createDualImpl(\n // CPU implementation\n (e: number): v2f => {\n const buffer = new ArrayBuffer(4);\n const writer = new TB.BufferWriter(buffer);\n writer.writeUint32(e);\n const reader = new TB.BufferReader(buffer);\n return vec2f(reader.readFloat16(), reader.readFloat16());\n },\n // GPU implementation\n (e) => snip(stitch`unpack2x16float(${e})`, vec2f),\n 'unpack2x16float',\n);\n\n/**\n * @privateRemarks\n * https://gpuweb.github.io/gpuweb/wgsl/#pack2x16float-builtin\n */\nexport const pack2x16float = createDualImpl(\n // CPU implementation\n (e: v2f): number => {\n const buffer = new ArrayBuffer(4);\n const writer = new TB.BufferWriter(buffer);\n writer.writeFloat16(e.x);\n writer.writeFloat16(e.y);\n const reader = new TB.BufferReader(buffer);\n return u32(reader.readUint32());\n },\n // GPU implementation\n (e) => snip(stitch`pack2x16float(${e})`, u32),\n 'pack2x16float',\n);\n\n/**\n * @privateRemarks\n * https://gpuweb.github.io/gpuweb/wgsl/#unpack4x8unorm-builtin\n */\nexport const unpack4x8unorm = createDualImpl(\n // CPU implementation\n (e: number): v4f => {\n const buffer = new ArrayBuffer(4);\n const writer = new TB.BufferWriter(buffer);\n writer.writeUint32(e);\n const reader = new TB.BufferReader(buffer);\n return vec4f(\n reader.readUint8() / 255,\n reader.readUint8() / 255,\n reader.readUint8() / 255,\n reader.readUint8() / 255,\n );\n },\n // GPU implementation\n (e) => snip(stitch`unpack4x8unorm(${e})`, vec4f),\n 'unpack4x8unorm',\n);\n\n/**\n * @privateRemarks\n * https://gpuweb.github.io/gpuweb/wgsl/#pack4x8unorm-builtin\n */\nexport const pack4x8unorm = createDualImpl(\n // CPU implementation\n (e: v4f): number => {\n const buffer = new ArrayBuffer(4);\n const writer = new TB.BufferWriter(buffer);\n writer.writeUint8(e.x * 255);\n writer.writeUint8(e.y * 255);\n writer.writeUint8(e.z * 255);\n writer.writeUint8(e.w * 255);\n const reader = new TB.BufferReader(buffer);\n return u32(reader.readUint32());\n },\n // GPU implementation\n (e) => snip(stitch`pack4x8unorm(${e})`, u32),\n 'pack4x8unorm',\n);\n","import { dualImpl } from '../core/function/dualImpl.ts';\nimport { stitch } from '../core/resolve/stitch.ts';\nimport type { AnyData } from '../data/dataTypes.ts';\nimport { bool, f32 } from '../data/numeric.ts';\nimport { isSnippetNumeric, snip } from '../data/snippet.ts';\nimport { vec2b, vec3b, vec4b } from '../data/vector.ts';\nimport { VectorOps } from '../data/vectorOps.ts';\nimport {\n type AnyBooleanVecInstance,\n type AnyFloatVecInstance,\n type AnyNumericVecInstance,\n type AnyVec2Instance,\n type AnyVec3Instance,\n type AnyVecInstance,\n type AnyWgslData,\n isVecInstance,\n type v2b,\n type v3b,\n type v4b,\n} from '../data/wgslTypes.ts';\nimport { $internal } from '../shared/symbols.ts';\nimport { sub } from './operators.ts';\n\nfunction correspondingBooleanVectorSchema(dataType: AnyData) {\n if (dataType.type.includes('2')) {\n return vec2b;\n }\n if (dataType.type.includes('3')) {\n return vec3b;\n }\n return vec4b;\n}\n\n// comparison\n\n/**\n * Checks whether `lhs == rhs` on all components.\n * Equivalent to `all(eq(lhs, rhs))`.\n * @example\n * allEq(vec2f(0.0, 1.0), vec2f(0.0, 2.0)) // returns false\n * allEq(vec3u(0, 1, 2), vec3u(0, 1, 2)) // returns true\n */\nexport const allEq = dualImpl({\n name: 'allEq',\n signature: (...argTypes) => ({ argTypes, returnType: bool }),\n normalImpl: <T extends AnyVecInstance>(lhs: T, rhs: T) =>\n cpuAll(cpuEq(lhs, rhs)),\n codegenImpl: (lhs, rhs) => stitch`all(${lhs} == ${rhs})`,\n});\n\nconst cpuEq = <T extends AnyVecInstance>(lhs: T, rhs: T) =>\n VectorOps.eq[lhs.kind](lhs, rhs);\n\n/**\n * Checks **component-wise** whether `lhs == rhs`.\n * This function does **not** return `bool`, for that use-case, wrap the result in `all`, or use `allEq`.\n * @example\n * eq(vec2f(0.0, 1.0), vec2f(0.0, 2.0)) // returns vec2b(true, false)\n * eq(vec3u(0, 1, 2), vec3u(2, 1, 0)) // returns vec3b(false, true, false)\n * all(eq(vec4i(4, 3, 2, 1), vec4i(4, 3, 2, 1))) // returns true\n * allEq(vec4i(4, 3, 2, 1), vec4i(4, 3, 2, 1)) // returns true\n */\nexport const eq = dualImpl({\n name: 'eq',\n signature: (...argTypes) => ({\n argTypes,\n returnType: correspondingBooleanVectorSchema(argTypes[0]),\n }),\n normalImpl: cpuEq,\n codegenImpl: (lhs, rhs) => stitch`(${lhs} == ${rhs})`,\n});\n\n/**\n * Checks **component-wise** whether `lhs != rhs`.\n * This function does **not** return `bool`, for that use-case, wrap the result in `any`.\n * @example\n * ne(vec2f(0.0, 1.0), vec2f(0.0, 2.0)) // returns vec2b(false, true)\n * ne(vec3u(0, 1, 2), vec3u(2, 1, 0)) // returns vec3b(true, false, true)\n * any(ne(vec4i(4, 3, 2, 1), vec4i(4, 2, 2, 1))) // returns true\n */\nexport const ne = dualImpl({\n name: 'ne',\n signature: (...argTypes) => ({\n argTypes,\n returnType: correspondingBooleanVectorSchema(argTypes[0]),\n }),\n normalImpl: <T extends AnyVecInstance>(lhs: T, rhs: T) =>\n cpuNot(cpuEq(lhs, rhs)),\n codegenImpl: (lhs, rhs) => stitch`(${lhs} != ${rhs})`,\n});\n\nconst cpuLt = <T extends AnyNumericVecInstance>(lhs: T, rhs: T) =>\n VectorOps.lt[lhs.kind](lhs, rhs);\n\n/**\n * Checks **component-wise** whether `lhs < rhs`.\n * This function does **not** return `bool`, for that use-case, wrap the result in `all`.\n * @example\n * lt(vec2f(0.0, 0.0), vec2f(0.0, 1.0)) // returns vec2b(false, true)\n * lt(vec3u(0, 1, 2), vec3u(2, 1, 0)) // returns vec3b(true, false, false)\n * all(lt(vec4i(1, 2, 3, 4), vec4i(2, 3, 4, 5))) // returns true\n */\nexport const lt = dualImpl({\n name: 'lt',\n signature: (...argTypes) => ({\n argTypes,\n returnType: correspondingBooleanVectorSchema(argTypes[0]),\n }),\n normalImpl: cpuLt,\n codegenImpl: (lhs, rhs) => stitch`(${lhs} < ${rhs})`,\n});\n\n/**\n * Checks **component-wise** whether `lhs <= rhs`.\n * This function does **not** return `bool`, for that use-case, wrap the result in `all`.\n * @example\n * le(vec2f(0.0, 0.0), vec2f(0.0, 1.0)) // returns vec2b(true, true)\n * le(vec3u(0, 1, 2), vec3u(2, 1, 0)) // returns vec3b(true, true, false)\n * all(le(vec4i(1, 2, 3, 4), vec4i(2, 3, 3, 5))) // returns true\n */\nexport const le = dualImpl({\n name: 'le',\n signature: (...argTypes) => ({\n argTypes,\n returnType: correspondingBooleanVectorSchema(argTypes[0]),\n }),\n normalImpl: <T extends AnyNumericVecInstance>(lhs: T, rhs: T) =>\n cpuOr(cpuLt(lhs, rhs), cpuEq(lhs, rhs)),\n codegenImpl: (lhs, rhs) => stitch`(${lhs} <= ${rhs})`,\n});\n\n/**\n * Checks **component-wise** whether `lhs > rhs`.\n * This function does **not** return `bool`, for that use-case, wrap the result in `all`.\n * @example\n * gt(vec2f(0.0, 0.0), vec2f(0.0, 1.0)) // returns vec2b(false, false)\n * gt(vec3u(0, 1, 2), vec3u(2, 1, 0)) // returns vec3b(false, false, true)\n * all(gt(vec4i(2, 3, 4, 5), vec4i(1, 2, 3, 4))) // returns true\n */\nexport const gt = dualImpl({\n name: 'gt',\n signature: (...argTypes) => ({\n argTypes,\n returnType: correspondingBooleanVectorSchema(argTypes[0]),\n }),\n normalImpl: <T extends AnyNumericVecInstance>(lhs: T, rhs: T) =>\n cpuAnd(cpuNot(cpuLt(lhs, rhs)), cpuNot(cpuEq(lhs, rhs))),\n codegenImpl: (lhs, rhs) => stitch`(${lhs} > ${rhs})`,\n});\n\n/**\n * Checks **component-wise** whether `lhs >= rhs`.\n * This function does **not** return `bool`, for that use-case, wrap the result in `all`.\n * @example\n * ge(vec2f(0.0, 0.0), vec2f(0.0, 1.0)) // returns vec2b(true, false)\n * ge(vec3u(0, 1, 2), vec3u(2, 1, 0)) // returns vec3b(false, true, true)\n * all(ge(vec4i(2, 2, 4, 5), vec4i(1, 2, 3, 4))) // returns true\n */\nexport const ge = dualImpl({\n name: 'ge',\n signature: (...argTypes) => ({\n argTypes: argTypes,\n returnType: correspondingBooleanVectorSchema(argTypes[0]),\n }),\n normalImpl: <T extends AnyNumericVecInstance>(lhs: T, rhs: T) =>\n cpuNot(cpuLt(lhs, rhs)),\n codegenImpl: (lhs, rhs) => stitch`(${lhs} >= ${rhs})`,\n});\n\n// logical ops\n\nconst cpuNot = <T extends AnyBooleanVecInstance>(value: T): T =>\n VectorOps.neg[value.kind](value);\n\n/**\n * Returns **component-wise** `!value`.\n * @example\n * not(vec2b(false, true)) // returns vec2b(true, false)\n * not(vec3b(true, true, false)) // returns vec3b(false, false, true)\n */\nexport const not = dualImpl({\n name: 'not',\n signature: (...argTypes) => ({ argTypes, returnType: argTypes[0] }),\n normalImpl: cpuNot,\n codegenImpl: (arg) => stitch`!(${arg})`,\n});\n\nconst cpuOr = <T extends AnyBooleanVecInstance>(lhs: T, rhs: T) =>\n VectorOps.or[lhs.kind](lhs, rhs);\n\n/**\n * Returns **component-wise** logical `or` result.\n * @example\n * or(vec2b(false, true), vec2b(false, false)) // returns vec2b(false, true)\n * or(vec3b(true, true, false), vec3b(false, true, false)) // returns vec3b(true, true, false)\n */\nexport const or = dualImpl({\n name: 'or',\n signature: (...argTypes) => ({ argTypes, returnType: argTypes[0] }),\n normalImpl: cpuOr,\n codegenImpl: (lhs, rhs) => stitch`(${lhs} | ${rhs})`,\n});\n\nconst cpuAnd = <T extends AnyBooleanVecInstance>(lhs: T, rhs: T) =>\n cpuNot(cpuOr(cpuNot(lhs), cpuNot(rhs)));\n\n/**\n * Returns **component-wise** logical `and` result.\n * @example\n * and(vec2b(false, true), vec2b(true, true)) // returns vec2b(false, true)\n * and(vec3b(true, true, false), vec3b(false, true, false)) // returns vec3b(false, true, false)\n */\nexport const and = dualImpl({\n name: 'and',\n signature: (...argTypes) => ({ argTypes, returnType: argTypes[0] }),\n normalImpl: cpuAnd,\n codegenImpl: (lhs, rhs) => stitch`(${lhs} & ${rhs})`,\n});\n\n// logical aggregation\n\nconst cpuAll = (value: AnyBooleanVecInstance) =>\n VectorOps.all[value.kind](value);\n\n/**\n * Returns `true` if each component of `value` is true.\n * @example\n * all(vec2b(false, true)) // returns false\n * all(vec3b(true, true, true)) // returns true\n */\nexport const all = dualImpl({\n name: 'all',\n signature: (...argTypes) => ({ argTypes, returnType: bool }),\n normalImpl: cpuAll,\n codegenImpl: (value) => stitch`all(${value})`,\n});\n\n/**\n * Returns `true` if any component of `value` is true.\n * @example\n * any(vec2b(false, true)) // returns true\n * any(vec3b(false, false, false)) // returns false\n */\nexport const any = dualImpl({\n name: 'any',\n signature: (...argTypes) => ({ argTypes, returnType: bool }),\n normalImpl: (value: AnyBooleanVecInstance) => !cpuAll(cpuNot(value)),\n codegenImpl: (arg) => stitch`any(${arg})`,\n});\n\n// other\n\n/**\n * Checks whether the given elements differ by at most the `precision` value.\n * Checks all elements of `lhs` and `rhs` if arguments are vectors.\n * @example\n * isCloseTo(0, 0.1) // returns false\n * isCloseTo(vec3f(0, 0, 0), vec3f(0.002, -0.009, 0)) // returns true\n *\n * @param {number} precision argument that specifies the maximum allowed difference, 0.01 by default.\n */\nexport const isCloseTo = dualImpl({\n name: 'isCloseTo',\n signature: (...args) => ({\n argTypes: args as AnyWgslData[],\n returnType: bool,\n }),\n // CPU implementation\n normalImpl: <T extends AnyFloatVecInstance | number>(\n lhs: T,\n rhs: T,\n precision = 0.01,\n ): boolean => {\n if (typeof lhs === 'number' && typeof rhs === 'number') {\n return Math.abs(lhs - rhs) < precision;\n }\n if (isVecInstance(lhs) && isVecInstance(rhs)) {\n return VectorOps.isCloseToZero[lhs.kind](\n sub[$internal].jsImpl(lhs, rhs),\n precision,\n );\n }\n return false;\n },\n // GPU implementation\n codegenImpl: (lhs, rhs, precision = snip(0.01, f32)) => {\n if (isSnippetNumeric(lhs) && isSnippetNumeric(rhs)) {\n return stitch`(abs(f32(${lhs}) - f32(${rhs})) <= ${precision})`;\n }\n if (!isSnippetNumeric(lhs) && !isSnippetNumeric(rhs)) {\n // https://www.w3.org/TR/WGSL/#vector-multi-component:~:text=Binary%20arithmetic%20expressions%20with%20mixed%20scalar%20and%20vector%20operands\n // (a-a)+prec creates a vector of a.length elements, all equal to prec\n return stitch`all(abs(${lhs} - ${rhs}) <= (${lhs} - ${lhs}) + ${precision})`;\n }\n return 'false';\n },\n});\n\nfunction cpuSelect(f: boolean, t: boolean, cond: boolean): boolean;\nfunction cpuSelect(f: number, t: number, cond: boolean): number;\nfunction cpuSelect<T extends AnyVecInstance>(\n f: T,\n t: T,\n cond:\n | boolean\n | (T extends AnyVec2Instance ? v2b\n : T extends AnyVec3Instance ? v3b\n : v4b),\n): T;\nfunction cpuSelect<T extends number | boolean | AnyVecInstance>(\n f: T,\n t: T,\n cond: AnyBooleanVecInstance | boolean,\n) {\n if (typeof cond === 'boolean') {\n return cond ? t : f;\n }\n return VectorOps.select[(f as AnyVecInstance).kind](\n f as AnyVecInstance,\n t as AnyVecInstance,\n cond,\n );\n}\n\n/**\n * Returns `t` if `cond` is `true`, and `f` otherwise.\n * Component-wise if `cond` is a vector.\n * @example\n * select(1, 2, false) // returns 1\n * select(1, 2, true) // returns 2\n * select(vec2i(1, 2), vec2i(3, 4), true) // returns vec2i(3, 4)\n * select(vec2i(1, 2), vec2i(3, 4), vec2b(false, true)) // returns vec2i(1, 4)\n */\nexport const select = dualImpl({\n name: 'select',\n signature: (...argTypes) => ({ argTypes, returnType: argTypes[0] }),\n normalImpl: cpuSelect,\n codegenImpl: (f, t, cond) => stitch`select(${f}, ${t}, ${cond})`,\n});\n","import { f32, i32, u32 } from '../../data/numeric.ts';\nimport { vec4f, vec4i, vec4u } from '../../data/vector.ts';\nimport type { F32, I32, U32 } from '../../data/wgslTypes.ts';\n\nexport type ViewDimensionToDimension = {\n '1d': '1d';\n '2d': '2d';\n '2d-array': '2d';\n '3d': '3d';\n cube: '2d';\n 'cube-array': '2d';\n};\n\n/**\n * https://www.w3.org/TR/WGSL/#storage-texel-formats\n */\nexport type StorageTextureFormats =\n | 'rgba8unorm'\n | 'rgba8snorm'\n | 'rgba8uint'\n | 'rgba8sint'\n | 'rgba16unorm'\n | 'rgba16snorm'\n | 'rgba16uint'\n | 'rgba16sint'\n | 'rgba16float'\n | 'rg8unorm'\n | 'rg8snorm'\n | 'rg8uint'\n | 'rg8sint'\n | 'rg16unorm'\n | 'rg16snorm'\n | 'rg16uint'\n | 'rg16sint'\n | 'rg16float'\n | 'r32uint'\n | 'r32sint'\n | 'r32float'\n | 'rg32uint'\n | 'rg32sint'\n | 'rg32float'\n | 'rgba32uint'\n | 'rgba32sint'\n | 'rgba32float'\n | 'bgra8unorm'\n | 'r8unorm'\n | 'r8snorm'\n | 'r8uint'\n | 'r8sint'\n | 'r16unorm'\n | 'r16snorm'\n | 'r16uint'\n | 'r16sint'\n | 'r16float'\n | 'rgb10a2unorm'\n | 'rgb10a2uint'\n | 'rg11b10ufloat';\n\n// TODO: use this for texture view validation\n// deno-fmt-ignore - this is not really meant to be read\nexport const textureFormats = {\n // 8-bit formats\n 'r8unorm': { channelType: f32, vectorType: vec4f, texelSize: 1, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: true, canMultisample: true, canResolve: true, storageBindings: ['write-only', 'read-only', 'read-write'] },\n 'r8snorm': { channelType: f32, vectorType: vec4f, texelSize: 1, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: ['write-only', 'read-only'] },\n 'r8uint': { channelType: u32, vectorType: vec4u, texelSize: 1, sampleTypes: ['uint'], aspects: ['color'], canRenderAttachment: true, canBlend: false, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only', 'read-write'] },\n 'r8sint': { channelType: i32, vectorType: vec4i, texelSize: 1, sampleTypes: ['sint'], aspects: ['color'], canRenderAttachment: true, canBlend: false, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only', 'read-write'] },\n\n 'rg8unorm': { channelType: f32, vectorType: vec4f, texelSize: 2, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: true, canMultisample: true, canResolve: true, storageBindings: ['write-only', 'read-only'] },\n 'rg8snorm': { channelType: f32, vectorType: vec4f, texelSize: 2, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: ['write-only', 'read-only'] },\n 'rg8uint': { channelType: u32, vectorType: vec4u, texelSize: 2, sampleTypes: ['uint'], aspects: ['color'], canRenderAttachment: true, canBlend: false, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only'] },\n 'rg8sint': { channelType: i32, vectorType: vec4i, texelSize: 2, sampleTypes: ['sint'], aspects: ['color'], canRenderAttachment: true, canBlend: false, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only'] },\n\n 'rgba8unorm': { channelType: f32, vectorType: vec4f, texelSize: 4, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: true, canMultisample: true, canResolve: true, storageBindings: ['write-only', 'read-only', 'read-write'] },\n 'rgba8unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 4, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: true, canMultisample: true, canResolve: true, storageBindings: null },\n 'rgba8snorm': { channelType: f32, vectorType: vec4f, texelSize: 4, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: false, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only'] },\n 'rgba8uint': { channelType: u32, vectorType: vec4u, texelSize: 4, sampleTypes: ['uint'], aspects: ['color'], canRenderAttachment: true, canBlend: false, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only', 'read-write'] },\n 'rgba8sint': { channelType: i32, vectorType: vec4i, texelSize: 4, sampleTypes: ['sint'], aspects: ['color'], canRenderAttachment: true, canBlend: false, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only', 'read-write'] },\n\n 'bgra8unorm': { channelType: f32, vectorType: vec4f, texelSize: 4, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: true, canMultisample: true, canResolve: true, storageBindings: ['write-only'] },\n 'bgra8unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 4, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: true, canMultisample: true, canResolve: true, storageBindings: null },\n\n // 16-bit formats\n 'r16unorm': { channelType: f32, vectorType: vec4f, texelSize: 2, sampleTypes: ['unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: true, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only'] },\n 'r16snorm': { channelType: f32, vectorType: vec4f, texelSize: 2, sampleTypes: ['unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: true, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only'] },\n 'r16uint': { channelType: u32, vectorType: vec4u, texelSize: 2, sampleTypes: ['uint'], aspects: ['color'], canRenderAttachment: true, canBlend: false, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only', 'read-write'] },\n 'r16sint': { channelType: i32, vectorType: vec4i, texelSize: 2, sampleTypes: ['sint'], aspects: ['color'], canRenderAttachment: true, canBlend: false, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only', 'read-write'] },\n 'r16float': { channelType: f32, vectorType: vec4f, texelSize: 2, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: true, canMultisample: true, canResolve: true, storageBindings: ['write-only', 'read-only', 'read-write'] },\n\n 'rg16unorm': { channelType: f32, vectorType: vec4f, texelSize: 4, sampleTypes: ['unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: true, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only'] },\n 'rg16snorm': { channelType: f32, vectorType: vec4f, texelSize: 4, sampleTypes: ['unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: true, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only'] },\n 'rg16uint': { channelType: u32, vectorType: vec4u, texelSize: 4, sampleTypes: ['uint'], aspects: ['color'], canRenderAttachment: true, canBlend: false, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only'] },\n 'rg16sint': { channelType: i32, vectorType: vec4i, texelSize: 4, sampleTypes: ['sint'], aspects: ['color'], canRenderAttachment: true, canBlend: false, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only'] },\n 'rg16float': { channelType: f32, vectorType: vec4f, texelSize: 4, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: true, canMultisample: true, canResolve: true, storageBindings: ['write-only', 'read-only'] },\n\n 'rgba16unorm': { channelType: f32, vectorType: vec4f, texelSize: 8, sampleTypes: ['unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: true, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only'] },\n 'rgba16snorm': { channelType: f32, vectorType: vec4f, texelSize: 8, sampleTypes: ['unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: true, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only'] },\n 'rgba16uint': { channelType: u32, vectorType: vec4u, texelSize: 8, sampleTypes: ['uint'], aspects: ['color'], canRenderAttachment: true, canBlend: false, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only', 'read-write'] },\n 'rgba16sint': { channelType: i32, vectorType: vec4i, texelSize: 8, sampleTypes: ['sint'], aspects: ['color'], canRenderAttachment: true, canBlend: false, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only', 'read-write'] },\n 'rgba16float': { channelType: f32, vectorType: vec4f, texelSize: 8, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: true, canMultisample: true, canResolve: true, storageBindings: ['write-only', 'read-only', 'read-write'] },\n\n // 32-bit formats\n 'r32uint': { channelType: u32, vectorType: vec4u, texelSize: 4, sampleTypes: ['uint'], aspects: ['color'], canRenderAttachment: true, canBlend: false, canMultisample: false, canResolve: false, storageBindings: ['write-only', 'read-only', 'read-write'] },\n 'r32sint': { channelType: i32, vectorType: vec4i, texelSize: 4, sampleTypes: ['sint'], aspects: ['color'], canRenderAttachment: true, canBlend: false, canMultisample: false, canResolve: false, storageBindings: ['write-only', 'read-only', 'read-write'] },\n 'r32float': { channelType: f32, vectorType: vec4f, texelSize: 4, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: true, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only', 'read-write'] },\n\n 'rg32uint': { channelType: u32, vectorType: vec4u, texelSize: 8, sampleTypes: ['uint'], aspects: ['color'], canRenderAttachment: true, canBlend: false, canMultisample: false, canResolve: false, storageBindings: ['write-only', 'read-only'] },\n 'rg32sint': { channelType: i32, vectorType: vec4i, texelSize: 8, sampleTypes: ['sint'], aspects: ['color'], canRenderAttachment: true, canBlend: false, canMultisample: false, canResolve: false, storageBindings: ['write-only', 'read-only'] },\n 'rg32float': { channelType: f32, vectorType: vec4f, texelSize: 8, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: true, canMultisample: false, canResolve: false, storageBindings: ['write-only', 'read-only', 'read-write'] },\n\n 'rgba32uint': { channelType: u32, vectorType: vec4u, texelSize: 16, sampleTypes: ['uint'], aspects: ['color'], canRenderAttachment: true, canBlend: false, canMultisample: false, canResolve: false, storageBindings: ['write-only', 'read-only', 'read-write'] },\n 'rgba32sint': { channelType: i32, vectorType: vec4i, texelSize: 16, sampleTypes: ['sint'], aspects: ['color'], canRenderAttachment: true, canBlend: false, canMultisample: false, canResolve: false, storageBindings: ['write-only', 'read-only', 'read-write'] },\n 'rgba32float': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: true, canMultisample: false, canResolve: false, storageBindings: ['write-only', 'read-only', 'read-write'] },\n\n // Mixed component formats\n 'rgb10a2uint': { channelType: u32, vectorType: vec4u, texelSize: 4, sampleTypes: ['uint'], aspects: ['color'], canRenderAttachment: true, canBlend: false, canMultisample: true, canResolve: false, storageBindings: ['write-only', 'read-only'] },\n 'rgb10a2unorm': { channelType: f32, vectorType: vec4f, texelSize: 4, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: true, canMultisample: true, canResolve: true, storageBindings: ['write-only', 'read-only'] },\n 'rg11b10ufloat': { channelType: f32, vectorType: vec4f, texelSize: 4, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: true, canBlend: true, canMultisample: true, canResolve: true, storageBindings: ['write-only', 'read-only'] },\n\n // Special formats\n 'rgb9e5ufloat': { channelType: f32, vectorType: vec4f, texelSize: 4, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n\n // Depth/Stencil formats\n 'stencil8': { channelType: u32, vectorType: vec4u, texelSize: 1, sampleTypes: ['uint'], aspects: ['stencil'], canRenderAttachment: true, canBlend: false, canMultisample: true, canResolve: false, storageBindings: null },\n 'depth16unorm': { channelType: f32, vectorType: vec4f, texelSize: 2, sampleTypes: ['depth', 'unfilterable-float'], aspects: ['depth'], canRenderAttachment: true, canBlend: false, canMultisample: true, canResolve: false, storageBindings: null },\n 'depth24plus': { channelType: f32, vectorType: vec4f, texelSize: 4, sampleTypes: ['depth', 'unfilterable-float'], aspects: ['depth'], canRenderAttachment: true, canBlend: false, canMultisample: true, canResolve: false, storageBindings: null },\n 'depth24plus-stencil8': { channelType: f32, vectorType: vec4f, texelSize: 4, sampleTypes: ['depth', 'unfilterable-float'], aspects: ['depth', 'stencil'], canRenderAttachment: true, canBlend: false, canMultisample: true, canResolve: false, storageBindings: null },\n 'depth32float': { channelType: f32, vectorType: vec4f, texelSize: 4, sampleTypes: ['depth', 'unfilterable-float'], aspects: ['depth'], canRenderAttachment: true, canBlend: false, canMultisample: true, canResolve: false, storageBindings: null },\n 'depth32float-stencil8': { channelType: f32, vectorType: vec4f, texelSize: 4, sampleTypes: ['depth', 'unfilterable-float'], aspects: ['depth', 'stencil'], canRenderAttachment: true, canBlend: false, canMultisample: true, canResolve: false, storageBindings: null },\n\n // BC compressed formats\n 'bc1-rgba-unorm': { channelType: f32, vectorType: vec4f, texelSize: 8, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'bc1-rgba-unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 8, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'bc2-rgba-unorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'bc2-rgba-unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'bc3-rgba-unorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'bc3-rgba-unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'bc4-r-unorm': { channelType: f32, vectorType: vec4f, texelSize: 8, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'bc4-r-snorm': { channelType: f32, vectorType: vec4f, texelSize: 8, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'bc5-rg-unorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'bc5-rg-snorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'bc6h-rgb-ufloat': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'bc6h-rgb-float': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'bc7-rgba-unorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'bc7-rgba-unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n\n // ETC2/EAC compressed formats\n 'etc2-rgb8unorm': { channelType: f32, vectorType: vec4f, texelSize: 8, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'etc2-rgb8unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 8, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'etc2-rgb8a1unorm': { channelType: f32, vectorType: vec4f, texelSize: 8, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'etc2-rgb8a1unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 8, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'etc2-rgba8unorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'etc2-rgba8unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'eac-r11unorm': { channelType: f32, vectorType: vec4f, texelSize: 8, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'eac-r11snorm': { channelType: f32, vectorType: vec4f, texelSize: 8, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'eac-rg11unorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'eac-rg11snorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n\n // ASTC compressed formats\n 'astc-4x4-unorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-4x4-unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-5x4-unorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-5x4-unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-5x5-unorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-5x5-unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-6x5-unorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-6x5-unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-6x6-unorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-6x6-unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-8x5-unorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-8x5-unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-8x6-unorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-8x6-unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-8x8-unorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-8x8-unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-10x5-unorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-10x5-unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-10x6-unorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-10x6-unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-10x8-unorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-10x8-unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-10x10-unorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-10x10-unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-12x10-unorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-12x10-unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-12x12-unorm': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n 'astc-12x12-unorm-srgb': { channelType: f32, vectorType: vec4f, texelSize: 16, sampleTypes: ['float', 'unfilterable-float'], aspects: ['color'], canRenderAttachment: false, canBlend: false, canMultisample: false, canResolve: false, storageBindings: null },\n} as const satisfies Record<GPUTextureFormat, TextureFormatInfo>;\n\nexport type TextureFormatInfo = {\n readonly channelType: F32 | I32 | U32;\n readonly vectorType: typeof vec4f | typeof vec4i | typeof vec4u;\n readonly texelSize: number;\n readonly sampleTypes: readonly string[];\n readonly aspects: readonly string[];\n readonly canRenderAttachment: boolean;\n readonly canBlend: boolean;\n readonly canMultisample: boolean;\n readonly canResolve: boolean;\n readonly storageBindings: readonly string[] | null;\n};\n\nexport type TextureFormats = typeof textureFormats;\n\nexport function getDeviceTextureFormatInfo<T extends GPUTextureFormat>(\n format: T,\n device: GPUDevice,\n): typeof textureFormats[T] {\n const baseInfo = textureFormats[format];\n\n if (!baseInfo) {\n throw new Error(`Unknown texture format: ${format}`);\n }\n\n let filteredInfo = { ...baseInfo } as TextureFormatInfo;\n switch (format) {\n case 'r32float':\n case 'rg32float':\n case 'rgba32float':\n if (!device.features.has('float32-filterable')) {\n filteredInfo = {\n ...filteredInfo,\n sampleTypes: baseInfo.sampleTypes.filter((type) => type !== 'float'),\n } as TextureFormatInfo;\n }\n if (!device.features.has('float32-blendable')) {\n filteredInfo = {\n ...filteredInfo,\n canBlend: false,\n };\n }\n break;\n\n case 'bgra8unorm':\n if (!device.features.has('bgra8unorm-storage')) {\n filteredInfo = {\n ...filteredInfo,\n storageBindings: null,\n };\n }\n break;\n\n case 'rg11b10ufloat':\n if (!device.features.has('rg11b10ufloat-renderable')) {\n filteredInfo = {\n ...filteredInfo,\n canRenderAttachment: false,\n canBlend: false,\n canMultisample: false,\n canResolve: false,\n };\n }\n break;\n }\n\n if (filteredInfo.storageBindings) {\n const hasTexture1 = device.features.has('texture-formats-tier1');\n const hasTexture2 = device.features.has('texture-formats-tier2');\n\n let availableBindings = [...filteredInfo.storageBindings];\n\n // deno-fmt-ignore\n const tier2RequiredFormats = [\n 'r8unorm', 'r8uint', 'r8sint',\n 'r16uint', 'r16sint', 'r16float',\n 'rgba8unorm', 'rgba8uint', 'rgba8sint',\n 'rgba16uint', 'rgba16sint', 'rgba16float',\n 'r32uint', 'r32sint', 'r32float',\n 'rgba32uint', 'rgba32sint', 'rgba32float',\n ];\n\n // deno-fmt-ignore\n const tier1RequiredFormats = [\n 'r8snorm',\n 'rg8unorm', 'rg8snorm', 'rg8uint', 'rg8sint',\n 'rgba8snorm',\n 'r16unorm', 'r16snorm',\n 'rg16unorm', 'rg16snorm', 'rg16uint', 'rg16sint', 'rg16float',\n 'rgba16unorm', 'rgba16snorm',\n 'rgb10a2uint', 'rgb10a2unorm', 'rg11b10ufloat',\n ];\n\n if (tier2RequiredFormats.includes(format) && !hasTexture2) {\n availableBindings = availableBindings.filter((binding) =>\n binding !== 'read-write'\n );\n }\n\n if (tier1RequiredFormats.includes(format) && !hasTexture1) {\n availableBindings = availableBindings.filter(\n (binding) => binding !== 'write-only' && binding !== 'read-only',\n );\n }\n\n filteredInfo = {\n ...filteredInfo,\n storageBindings: availableBindings.length > 0 ? availableBindings : null,\n };\n }\n\n return filteredInfo as typeof textureFormats[T];\n}\n"]}
@@ -1,7 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } var _class; var _class2; var _class3; var _class4; var _class5; var _class6; var _class7;var _chunk44LAYHPRcjs = require('./chunk-44LAYHPR.cjs');var Ze=class{};function Ct(e){let t=_chunk44LAYHPRcjs.Ma.call(void 0, (...r)=>{let a=[];for(let s of r)if(typeof s=="number")a.push(s);else for(let c=0;c<s.length;++c)a.push(s[c]);if(a.length!==0&&a.length!==e.columns*e.rows)throw new Error(`'${e.type}' constructor called with invalid number of arguments.`);for(let s=a.length;s<e.columns*e.rows;++s)a.push(0);return new e.MatImpl(...a)},(...r)=>_chunk44LAYHPRcjs.aa.call(void 0, _chunk44LAYHPRcjs.Ea`${e.type}(${r})`,n),e.type),n=Object.assign(t,{type:e.type,identity:ln[e.columns],translation:e.columns===4?mn:void 0,scaling:e.columns===4?pn:void 0,rotationX:e.columns===4?yn:void 0,rotationY:e.columns===4?xn:void 0,rotationZ:e.columns===4?Tn:void 0});return n}var It= (_class =class extends Ze{__init() {this[_chunk44LAYHPRcjs.a]=!0}__init2() {this.length=4}constructor(...t){super();_class.prototype.__init.call(this);_class.prototype.__init2.call(this);,this.columns=[this.makeColumn(t[0],t[1]),this.makeColumn(t[2],t[3])]}get 0(){return this.columns[0].x}get 1(){return this.columns[0].y}get 2(){return this.columns[1].x}get 3(){return this.columns[1].y}set 0(t){this.columns[0].x=t}set 1(t){this.columns[0].y=t}set 2(t){this.columns[1].x=t}set 3(t){this.columns[1].y=t}*[Symbol.iterator](){yield this[0],yield this[1],yield this[2],yield this[3]}[_chunk44LAYHPRcjs.f](){return _chunk44LAYHPRcjs.aa.call(void 0, `${this.kind}(${Array.from({length:this.length}).map((t,n)=>this[n]).join(", ")})`,ce)}toString(){return this[_chunk44LAYHPRcjs.f]().value}}, _class),At= (_class2 =class extends It{constructor(...args) { super(...args); _class2.prototype.__init3.call(this); }__init3() {this.kind="mat2x2f"}makeColumn(t,n){return _chunk44LAYHPRcjs.Ya.call(void 0, t,n)}}, _class2),zt= (_class3 =class extends Ze{__init4() {this[_chunk44LAYHPRcjs.a]=!0}__init5() {this.length=12}constructor(...t){super();_class3.prototype.__init4.call(this);_class3.prototype.__init5.call(this);,this.columns=[this.makeColumn(t[0],t[1],t[2]),this.makeColumn(t[3],t[4],t[5]),this.makeColumn(t[6],t[7],t[8])]}get 0(){return this.columns[0].x}get 1(){return this.columns[0].y}get 2(){return this.columns[0].z}get 3(){return 0}get 4(){return this.columns[1].x}get 5(){return this.columns[1].y}get 6(){return this.columns[1].z}get 7(){return 0}get 8(){return this.columns[2].x}get 9(){return this.columns[2].y}get 10(){return this.columns[2].z}get 11(){return 0}set 0(t){this.columns[0].x=t}set 1(t){this.columns[0].y=t}set 2(t){this.columns[0].z=t}set 3(t){}set 4(t){this.columns[1].x=t}set 5(t){this.columns[1].y=t}set 6(t){this.columns[1].z=t}set 7(t){}set 8(t){this.columns[2].x=t}set 9(t){this.columns[2].y=t}set 10(t){this.columns[2].z=t}set 11(t){}*[Symbol.iterator](){for(let t=0;t<12;t++)yield this[t]}[_chunk44LAYHPRcjs.f](){return _chunk44LAYHPRcjs.aa.call(void 0, `${this.kind}(${this[0]}, ${this[1]}, ${this[2]}, ${this[4]}, ${this[5]}, ${this[6]}, ${this[8]}, ${this[9]}, ${this[10]})`,ie)}toString(){return this[_chunk44LAYHPRcjs.f]().value}}, _class3),$t= (_class4 =class extends zt{constructor(...args2) { super(...args2); _class4.prototype.__init6.call(this); }__init6() {this.kind="mat3x3f"}makeColumn(t,n,r){return _chunk44LAYHPRcjs.bb.call(void 0, t,n,r)}}, _class4),Ft= (_class5 =class extends Ze{__init7() {this[_chunk44LAYHPRcjs.a]=!0}constructor(...t){super();_class5.prototype.__init7.call(this);_class5.prototype.__init8.call(this);,this.columns=[this.makeColumn(t[0],t[1],t[2],t[3]),this.makeColumn(t[4],t[5],t[6],t[7]),this.makeColumn(t[8],t[9],t[10],t[11]),this.makeColumn(t[12],t[13],t[14],t[15])]}__init8() {this.length=16}get 0(){return this.columns[0].x}get 1(){return this.columns[0].y}get 2(){return this.columns[0].z}get 3(){return this.columns[0].w}get 4(){return this.columns[1].x}get 5(){return this.columns[1].y}get 6(){return this.columns[1].z}get 7(){return this.columns[1].w}get 8(){return this.columns[2].x}get 9(){return this.columns[2].y}get 10(){return this.columns[2].z}get 11(){return this.columns[2].w}get 12(){return this.columns[3].x}get 13(){return this.columns[3].y}get 14(){return this.columns[3].z}get 15(){return this.columns[3].w}set 0(t){this.columns[0].x=t}set 1(t){this.columns[0].y=t}set 2(t){this.columns[0].z=t}set 3(t){this.columns[0].w=t}set 4(t){this.columns[1].x=t}set 5(t){this.columns[1].y=t}set 6(t){this.columns[1].z=t}set 7(t){this.columns[1].w=t}set 8(t){this.columns[2].x=t}set 9(t){this.columns[2].y=t}set 10(t){this.columns[2].z=t}set 11(t){this.columns[2].w=t}set 12(t){this.columns[3].x=t}set 13(t){this.columns[3].y=t}set 14(t){this.columns[3].z=t}set 15(t){this.columns[3].w=t}*[Symbol.iterator](){for(let t=0;t<16;t++)yield this[t]}[_chunk44LAYHPRcjs.f](){return _chunk44LAYHPRcjs.aa.call(void 0, `${this.kind}(${Array.from({length:this.length}).map((t,n)=>this[n]).join(", ")})`,A)}toString(){return this[_chunk44LAYHPRcjs.f]().value}}, _class5),Vt= (_class6 =class extends Ft{constructor(...args3) { super(...args3); _class6.prototype.__init9.call(this); }__init9() {this.kind="mat4x4f"}makeColumn(t,n,r,a){return _chunk44LAYHPRcjs.gb.call(void 0, t,n,r,a)}}, _class6),on= exports.b =_chunk44LAYHPRcjs.Ma.call(void 0, ()=>ce(1,0,0,1),()=>_chunk44LAYHPRcjs.aa.call(void 0, "mat2x2f(1, 0, 0, 1)",ce),"identity2"),un= exports.c =_chunk44LAYHPRcjs.Ma.call(void 0, ()=>ie(1,0,0,0,1,0,0,0,1),()=>_chunk44LAYHPRcjs.aa.call(void 0, "mat3x3f(1, 0, 0, 0, 1, 0, 0, 0, 1)",ie),"identity3"),cn= exports.d =_chunk44LAYHPRcjs.Ma.call(void 0, ()=>A(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),()=>_chunk44LAYHPRcjs.aa.call(void 0, "mat4x4f(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)",A),"identity4"),ln={2:on,3:un,4:cn},mn= exports.e =_chunk44LAYHPRcjs.Ma.call(void 0, e=>A(1,0,0,0,0,1,0,0,0,0,1,0,e.x,e.y,e.z,1),e=>_chunk44LAYHPRcjs.aa.call(void 0, _chunk44LAYHPRcjs.Ea`mat4x4f(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, ${e}.x, ${e}.y, ${e}.z, 1)`,A),"translation4"),pn= exports.f =_chunk44LAYHPRcjs.Ma.call(void 0, e=>A(e.x,0,0,0,0,e.y,0,0,0,0,e.z,0,0,0,0,1),e=>_chunk44LAYHPRcjs.aa.call(void 0, _chunk44LAYHPRcjs.Ea`mat4x4f(${e}.x, 0, 0, 0, 0, ${e}.y, 0, 0, 0, 0, ${e}.z, 0, 0, 0, 0, 1)`,A),"scaling4"),yn= exports.g =_chunk44LAYHPRcjs.Ma.call(void 0, e=>A(1,0,0,0,0,Math.cos(e),Math.sin(e),0,0,-Math.sin(e),Math.cos(e),0,0,0,0,1),e=>_chunk44LAYHPRcjs.aa.call(void 0, _chunk44LAYHPRcjs.Ea`mat4x4f(1, 0, 0, 0, 0, cos(${e}), sin(${e}), 0, 0, -sin(${e}), cos(${e}), 0, 0, 0, 0, 1)`,A),"rotationX4"),xn= exports.h =_chunk44LAYHPRcjs.Ma.call(void 0, e=>A(Math.cos(e),0,-Math.sin(e),0,0,1,0,0,Math.sin(e),0,Math.cos(e),0,0,0,0,1),e=>_chunk44LAYHPRcjs.aa.call(void 0, _chunk44LAYHPRcjs.Ea`mat4x4f(cos(${e}), 0, -sin(${e}), 0, 0, 1, 0, 0, sin(${e}), 0, cos(${e}), 0, 0, 0, 0, 1)`,A),"rotationY4"),Tn= exports.i =_chunk44LAYHPRcjs.Ma.call(void 0, e=>A(Math.cos(e),Math.sin(e),0,0,-Math.sin(e),Math.cos(e),0,0,0,0,1,0,0,0,0,1),e=>_chunk44LAYHPRcjs.aa.call(void 0, _chunk44LAYHPRcjs.Ea`mat4x4f(cos(${e}), sin(${e}), 0, 0, -sin(${e}), cos(${e}), 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)`,A),"rotationZ4"),ce= exports.j =Ct({type:"mat2x2f",rows:2,columns:2,MatImpl:At}),ie= exports.k =Ct({type:"mat3x3f",rows:3,columns:3,MatImpl:$t}),A= exports.l =Ct({type:"mat4x4f",rows:4,columns:4,MatImpl:Vt});function Gr(e){return e.kind==="mat3x3f"?[e[0],e[1],e[2],e[4],e[5],e[6],e[8],e[9],e[10]]:Array.from({length:e.length}).map((t,n)=>e[n])}function Kr(){return{[_chunk44LAYHPRcjs.a]:!0,type:"sampler",[_chunk44LAYHPRcjs.g]:void 0}}function jr(){return{[_chunk44LAYHPRcjs.a]:!0,type:"sampler_comparison",[_chunk44LAYHPRcjs.g]:void 0}}function qr(e){return!!e[_chunk44LAYHPRcjs.a]&&e.type==="sampler"}function Zr(e){return!!e[_chunk44LAYHPRcjs.a]&&e.type==="sampler_comparison"}function Yr(e){if("multisampled"in e){if(e.multisampled){if(e.dimension==="2d")return gn(e.sampleType);throw new Error(`Multisampled textures only support '2d' dimension, got '${e.dimension}'`)}switch(e.dimension){case"1d":return dn(e.sampleType);case"2d":return fn(e.sampleType);case"2d-array":return hn(e.sampleType);case"3d":return wn(e.sampleType);case"cube":return vn(e.sampleType);case"cube-array":return bn(e.sampleType);default:throw new Error(`Unsupported texture dimension: '${e.dimension}'`)}}if(!("access"in e))throw new Error("Descriptor is neither a sampled nor a storage texture");switch(e.dimension){case"1d":return Mn(e.format,e.access);case"2d":return Sn(e.format,e.access);case"2d-array":return In(e.format,e.access);case"3d":return An(e.format,e.access);default:throw new Error(`Unsupported storage texture dimension: '${e.dimension}'`)}}function L(e,t){let r=e.startsWith("texture_depth")?["depth","float","unfilterable-float"]:t.sampleType.type==="i32"?["sint"]:t.sampleType.type==="u32"?["uint"]:["float","unfilterable-float"];return{[_chunk44LAYHPRcjs.a]:!0,[_chunk44LAYHPRcjs.g]:void 0,type:e,bindingSampleType:r,...t}}function ct(e,t){return{[_chunk44LAYHPRcjs.a]:!0,[_chunk44LAYHPRcjs.g]:void 0,type:e,...t}}var Ht=new Map,it= exports.x ={"write-only":"write","read-only":"read","read-write":"read_write"};function z(e,t){let n=Ht.get(e);return n||(n=t(),Ht.set(e,n)),n}function dn(e){let t=e||_chunk44LAYHPRcjs.Va,n=`texture_1d<${t.type}>`;return z(n,()=>L("texture_1d",{dimension:"1d",sampleType:t,multisampled:!1}))}function fn(e){let t=e||_chunk44LAYHPRcjs.Va,n=`texture_2d<${t.type}>`;return z(n,()=>L("texture_2d",{dimension:"2d",sampleType:t,multisampled:!1}))}function gn(e){let t=e||_chunk44LAYHPRcjs.Va,n=`texture_multisampled_2d<${t.type}>`;return z(n,()=>L("texture_multisampled_2d",{dimension:"2d",sampleType:t,multisampled:!0}))}function hn(e){let t=e||_chunk44LAYHPRcjs.Va,n=`texture_2d_array<${t.type}>`;return z(n,()=>L("texture_2d_array",{dimension:"2d-array",sampleType:t,multisampled:!1}))}function vn(e){let t=e||_chunk44LAYHPRcjs.Va,n=`texture_cube<${t.type}>`;return z(n,()=>L("texture_cube",{dimension:"cube",sampleType:t,multisampled:!1}))}function bn(e){let t=e||_chunk44LAYHPRcjs.Va,n=`texture_cube_array<${t.type}>`;return z(n,()=>L("texture_cube_array",{dimension:"cube-array",sampleType:t,multisampled:!1}))}function wn(e){let t=e||_chunk44LAYHPRcjs.Va,n=`texture_3d<${t.type}>`;return z(n,()=>L("texture_3d",{dimension:"3d",sampleType:t,multisampled:!1}))}function Mn(e,t){let n=t||"write-only",r=`texture_storage_1d<${e}, ${it[n]}>`;return z(r,()=>ct("texture_storage_1d",{dimension:"1d",format:e,access:n}))}function Sn(e,t){let n=t||"write-only",r=`texture_storage_2d<${e}, ${it[n]}>`;return z(r,()=>ct("texture_storage_2d",{dimension:"2d",format:e,access:n}))}function In(e,t){let n=t||"write-only",r=`texture_storage_2d_array<${e}, ${it[n]}>`;return z(r,()=>ct("texture_storage_2d_array",{dimension:"2d-array",format:e,access:n}))}function An(e,t){let n=t||"write-only",r=`texture_storage_3d<${e}, ${it[n]}>`;return z(r,()=>ct("texture_storage_3d",{dimension:"3d",format:e,access:n}))}function Jr(){return z("texture_depth_2d",()=>L("texture_depth_2d",{dimension:"2d",sampleType:_chunk44LAYHPRcjs.Va,multisampled:!1}))}function es(){return z("texture_depth_multisampled_2d",()=>L("texture_depth_multisampled_2d",{dimension:"2d",sampleType:_chunk44LAYHPRcjs.Va,multisampled:!0}))}function ts(){return z("texture_depth_2d_array",()=>L("texture_depth_2d_array",{dimension:"2d-array",sampleType:_chunk44LAYHPRcjs.Va,multisampled:!1}))}function ns(){return z("texture_depth_cube",()=>L("texture_depth_cube",{dimension:"cube",sampleType:_chunk44LAYHPRcjs.Va,multisampled:!1}))}function rs(){return z("texture_depth_cube_array",()=>L("texture_depth_cube_array",{dimension:"cube-array",sampleType:_chunk44LAYHPRcjs.Va,multisampled:!1}))}function ss(){return z("texture_external",()=>({[_chunk44LAYHPRcjs.a]:!0,[_chunk44LAYHPRcjs.g]:void 0,type:"texture_external",dimension:"2d"}))}function as(e){return!!e[_chunk44LAYHPRcjs.a]&&typeof e.multisampled=="boolean"}function os(e){return!!e[_chunk44LAYHPRcjs.a]&&typeof e.format=="string"&&typeof e.access=="string"}function is(e){return new Pt(e)}var Pt= (_class7 =class{constructor(t){;_class7.prototype.__init10.call(this);_class7.prototype.__init11.call(this);this.inner=t}__init10() {this[_chunk44LAYHPRcjs.a]=!0}__init11() {this.type="atomic"}}, _class7);var le=(e,t,n)=>{if(e===t)return 0;let r=y((n-e)/(t-e),0,1);return r*r*(3-2*r)},y=(e,t,n)=>Math.min(Math.max(t,e),n),ge=(e,t)=>t===0?e:Math.trunc(e/t);function X(e){let t=new DataView(new ArrayBuffer(4));return t.setUint32(0,e,!0),t.getFloat32(0,!0)}function Y(e){let t=new DataView(new ArrayBuffer(4));return t.setUint32(0,e,!0),t.getInt32(0,!0)}var G=_chunk44LAYHPRcjs.ab[_chunk44LAYHPRcjs.a].jsImpl,K=_chunk44LAYHPRcjs.Ya[_chunk44LAYHPRcjs.a].jsImpl,pe=_chunk44LAYHPRcjs.Za[_chunk44LAYHPRcjs.a].jsImpl,We=_chunk44LAYHPRcjs._a[_chunk44LAYHPRcjs.a].jsImpl,Ye=_chunk44LAYHPRcjs.$a[_chunk44LAYHPRcjs.a].jsImpl,N=_chunk44LAYHPRcjs.fb[_chunk44LAYHPRcjs.a].jsImpl,W=_chunk44LAYHPRcjs.bb[_chunk44LAYHPRcjs.a].jsImpl,J=_chunk44LAYHPRcjs.cb[_chunk44LAYHPRcjs.a].jsImpl,Ue=_chunk44LAYHPRcjs.db[_chunk44LAYHPRcjs.a].jsImpl,Je=_chunk44LAYHPRcjs.eb[_chunk44LAYHPRcjs.a].jsImpl,O=_chunk44LAYHPRcjs.kb[_chunk44LAYHPRcjs.a].jsImpl,j=_chunk44LAYHPRcjs.gb[_chunk44LAYHPRcjs.a].jsImpl,ye=_chunk44LAYHPRcjs.hb[_chunk44LAYHPRcjs.a].jsImpl,Be=_chunk44LAYHPRcjs.ib[_chunk44LAYHPRcjs.a].jsImpl,et=_chunk44LAYHPRcjs.jb[_chunk44LAYHPRcjs.a].jsImpl,Me=e=>Math.sqrt(e.x**2+e.y**2),Se=e=>Math.sqrt(e.x**2+e.y**2+e.z**2),Ie=e=>Math.sqrt(e.x**2+e.y**2+e.z**2+e.w**2),lt=(e,t)=>e.x*t.x+e.y*t.y,mt=(e,t)=>e.x*t.x+e.y*t.y+e.z*t.z,pt=(e,t)=>e.x*t.x+e.y*t.y+e.z*t.z+e.w*t.w,h=e=>t=>K(e(t.x),e(t.y)),b=e=>t=>pe(e(t.x),e(t.y)),Ae=e=>t=>We(e(t.x),e(t.y)),He=e=>t=>Ye(e(t.x),e(t.y)),f=e=>t=>W(e(t.x),e(t.y),e(t.z)),w=e=>t=>J(e(t.x),e(t.y),e(t.z)),ze=e=>t=>Ue(e(t.x),e(t.y),e(t.z)),Qe=e=>t=>Je(e(t.x),e(t.y),e(t.z)),d=e=>t=>j(e(t.x),e(t.y),e(t.z),e(t.w)),M=e=>t=>ye(e(t.x),e(t.y),e(t.z),e(t.w)),$e=e=>t=>Be(e(t.x),e(t.y),e(t.z),e(t.w)),Xe=e=>t=>et(e(t.x),e(t.y),e(t.z),e(t.w)),Qt=e=>t=>{let n=t.columns;return ce(h(e)(n[0]),h(e)(n[1]))},Xt=e=>t=>{let n=t.columns;return ie(f(e)(n[0]),f(e)(n[1]),f(e)(n[2]))},Yt=e=>t=>{let n=t.columns;return A(d(e)(n[0]),d(e)(n[1]),d(e)(n[2]),d(e)(n[3]))},me=e=>(t,n)=>K(e(t.x,n.x),e(t.y,n.y)),he=e=>(t,n)=>pe(e(t.x,n.x),e(t.y,n.y)),Fe=e=>(t,n)=>We(e(t.x,n.x),e(t.y,n.y)),Ve=e=>(t,n)=>Ye(e(t.x,n.x),e(t.y,n.y)),ee=e=>(t,n)=>W(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z)),ve=e=>(t,n)=>J(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z)),Ce=e=>(t,n)=>Ue(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z)),Pe=e=>(t,n)=>Je(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z)),Q=e=>(t,n)=>j(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z),e(t.w,n.w)),be=e=>(t,n)=>ye(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z),e(t.w,n.w)),ke=e=>(t,n)=>Be(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z),e(t.w,n.w)),_e=e=>(t,n)=>et(e(t.x,n.x),e(t.y,n.y),e(t.z,n.z),e(t.w,n.w)),zn=e=>(t,n)=>{let r=t.columns,a=n.columns;return ce(me(e)(r[0],a[0]),me(e)(r[1],a[1]))},$n=e=>(t,n)=>{let r=t.columns,a=n.columns;return ie(ee(e)(r[0],a[0]),ee(e)(r[1],a[1]),ee(e)(r[2],a[2]))},Fn=e=>(t,n)=>{let r=t.columns,a=n.columns;return A(Q(e)(r[0],a[0]),Q(e)(r[1],a[1]),Q(e)(r[2],a[2]),Q(e)(r[3],a[3]))},Vn=e=>(t,n,r)=>K(e(t.x,n.x,r.x),e(t.y,n.y,r.y)),Cn=e=>(t,n,r)=>pe(e(t.x,n.x,r.x),e(t.y,n.y,r.y)),Pn=e=>(t,n,r)=>W(e(t.x,n.x,r.x),e(t.y,n.y,r.y),e(t.z,n.z,r.z)),kn=e=>(t,n,r)=>J(e(t.x,n.x,r.x),e(t.y,n.y,r.y),e(t.z,n.z,r.z)),_n=e=>(t,n,r)=>j(e(t.x,n.x,r.x),e(t.y,n.y,r.y),e(t.z,n.z,r.z),e(t.w,n.w,r.w)),Wn=e=>(t,n,r)=>ye(e(t.x,n.x,r.x),e(t.y,n.y,r.y),e(t.z,n.z,r.z),e(t.w,n.w,r.w)),i= exports.U ={eq:{vec2f:(e,t)=>G(e.x===t.x,e.y===t.y),vec2h:(e,t)=>G(e.x===t.x,e.y===t.y),vec2i:(e,t)=>G(e.x===t.x,e.y===t.y),vec2u:(e,t)=>G(e.x===t.x,e.y===t.y),"vec2<bool>":(e,t)=>G(e.x===t.x,e.y===t.y),vec3f:(e,t)=>N(e.x===t.x,e.y===t.y,e.z===t.z),vec3h:(e,t)=>N(e.x===t.x,e.y===t.y,e.z===t.z),vec3i:(e,t)=>N(e.x===t.x,e.y===t.y,e.z===t.z),vec3u:(e,t)=>N(e.x===t.x,e.y===t.y,e.z===t.z),"vec3<bool>":(e,t)=>N(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)=>O(e.x===t.x,e.y===t.y,e.z===t.z,e.w===t.w),vec4i:(e,t)=>O(e.x===t.x,e.y===t.y,e.z===t.z,e.w===t.w),vec4u:(e,t)=>O(e.x===t.x,e.y===t.y,e.z===t.z,e.w===t.w),"vec4<bool>":(e,t)=>O(e.x===t.x,e.y===t.y,e.z===t.z,e.w===t.w)},lt:{vec2f:(e,t)=>G(e.x<t.x,e.y<t.y),vec2h:(e,t)=>G(e.x<t.x,e.y<t.y),vec2i:(e,t)=>G(e.x<t.x,e.y<t.y),vec2u:(e,t)=>G(e.x<t.x,e.y<t.y),vec3f:(e,t)=>N(e.x<t.x,e.y<t.y,e.z<t.z),vec3h:(e,t)=>N(e.x<t.x,e.y<t.y,e.z<t.z),vec3i:(e,t)=>N(e.x<t.x,e.y<t.y,e.z<t.z),vec3u:(e,t)=>N(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)=>O(e.x<t.x,e.y<t.y,e.z<t.z,e.w<t.w),vec4i:(e,t)=>O(e.x<t.x,e.y<t.y,e.z<t.z,e.w<t.w),vec4u:(e,t)=>O(e.x<t.x,e.y<t.y,e.z<t.z,e.w<t.w)},or:{"vec2<bool>":(e,t)=>G(e.x||t.x,e.y||t.y),"vec3<bool>":(e,t)=>N(e.x||t.x,e.y||t.y,e.z||t.z),"vec4<bool>":(e,t)=>O(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:h(Math.abs),vec2h:b(Math.abs),vec2i:Ae(Math.abs),vec2u:He(Math.abs),vec3f:f(Math.abs),vec3h:w(Math.abs),vec3i:ze(Math.abs),vec3u:Qe(Math.abs),vec4f:d(Math.abs),vec4h:M(Math.abs),vec4i:$e(Math.abs),vec4u:Xe(Math.abs)},atan2:{vec2f:me(Math.atan2),vec2h:he(Math.atan2),vec3f:ee(Math.atan2),vec3h:ve(Math.atan2),vec4f:Q(Math.atan2),vec4h:be(Math.atan2)},acos:{vec2f:h(Math.acos),vec2h:b(Math.acos),vec2i:Ae(Math.acos),vec2u:He(Math.acos),vec3f:f(Math.acos),vec3h:w(Math.acos),vec3i:ze(Math.acos),vec3u:Qe(Math.acos),vec4f:d(Math.acos),vec4h:M(Math.acos),vec4i:$e(Math.acos),vec4u:Xe(Math.acos)},acosh:{vec2f:h(Math.acosh),vec2h:b(Math.acosh),vec3f:f(Math.acosh),vec3h:w(Math.acosh),vec4f:d(Math.acosh),vec4h:M(Math.acosh)},asin:{vec2f:h(Math.asin),vec2h:b(Math.asin),vec3f:f(Math.asin),vec3h:w(Math.asin),vec4f:d(Math.asin),vec4h:M(Math.asin)},asinh:{vec2f:h(Math.asinh),vec2h:b(Math.asinh),vec3f:f(Math.asinh),vec3h:w(Math.asinh),vec4f:d(Math.asinh),vec4h:M(Math.asinh)},atan:{vec2f:h(Math.atan),vec2h:b(Math.atan),vec3f:f(Math.atan),vec3h:w(Math.atan),vec4f:d(Math.atan),vec4h:M(Math.atan)},atanh:{vec2f:h(Math.atanh),vec2h:b(Math.atanh),vec3f:f(Math.atanh),vec3h:w(Math.atanh),vec4f:d(Math.atanh),vec4h:M(Math.atanh)},ceil:{vec2f:h(Math.ceil),vec2h:b(Math.ceil),vec3f:f(Math.ceil),vec3h:w(Math.ceil),vec4f:d(Math.ceil),vec4h:M(Math.ceil)},clamp:{vec2f:(e,t,n)=>K(y(e.x,t.x,n.x),y(e.y,t.y,n.y)),vec2h:(e,t,n)=>pe(y(e.x,t.x,n.x),y(e.y,t.y,n.y)),vec2i:(e,t,n)=>We(y(e.x,t.x,n.x),y(e.y,t.y,n.y)),vec2u:(e,t,n)=>Ye(y(e.x,t.x,n.x),y(e.y,t.y,n.y)),vec3f:(e,t,n)=>W(y(e.x,t.x,n.x),y(e.y,t.y,n.y),y(e.z,t.z,n.z)),vec3h:(e,t,n)=>J(y(e.x,t.x,n.x),y(e.y,t.y,n.y),y(e.z,t.z,n.z)),vec3i:(e,t,n)=>Ue(y(e.x,t.x,n.x),y(e.y,t.y,n.y),y(e.z,t.z,n.z)),vec3u:(e,t,n)=>Je(y(e.x,t.x,n.x),y(e.y,t.y,n.y),y(e.z,t.z,n.z)),vec4f:(e,t,n)=>j(y(e.x,t.x,n.x),y(e.y,t.y,n.y),y(e.z,t.z,n.z),y(e.w,t.w,n.w)),vec4h:(e,t,n)=>ye(y(e.x,t.x,n.x),y(e.y,t.y,n.y),y(e.z,t.z,n.z),y(e.w,t.w,n.w)),vec4i:(e,t,n)=>Be(y(e.x,t.x,n.x),y(e.y,t.y,n.y),y(e.z,t.z,n.z),y(e.w,t.w,n.w)),vec4u:(e,t,n)=>et(y(e.x,t.x,n.x),y(e.y,t.y,n.y),y(e.z,t.z,n.z),y(e.w,t.w,n.w))},length:{vec2f:Me,vec2h:Me,vec3f:Se,vec3h:Se,vec4f:Ie,vec4h:Ie},add:{vec2f:me((e,t)=>e+t),vec2h:he((e,t)=>e+t),vec2i:Fe((e,t)=>e+t),vec2u:Ve((e,t)=>e+t),vec3f:ee((e,t)=>e+t),vec3h:ve((e,t)=>e+t),vec3i:Ce((e,t)=>e+t),vec3u:Pe((e,t)=>e+t),vec4f:Q((e,t)=>e+t),vec4h:be((e,t)=>e+t),vec4i:ke((e,t)=>e+t),vec4u:_e((e,t)=>e+t),mat2x2f:zn((e,t)=>e+t),mat3x3f:$n((e,t)=>e+t),mat4x4f:Fn((e,t)=>e+t)},smoothstep:{vec2f:Vn(le),vec2h:Cn(le),vec3f:Pn(le),vec3h:kn(le),vec4f:_n(le),vec4h:Wn(le)},addMixed:{vec2f:(e,t)=>h(n=>n+t)(e),vec2h:(e,t)=>b(n=>n+t)(e),vec2i:(e,t)=>Ae(n=>n+t)(e),vec2u:(e,t)=>He(n=>n+t)(e),vec3f:(e,t)=>f(n=>n+t)(e),vec3h:(e,t)=>w(n=>n+t)(e),vec3i:(e,t)=>ze(n=>n+t)(e),vec3u:(e,t)=>Qe(n=>n+t)(e),vec4f:(e,t)=>d(n=>n+t)(e),vec4h:(e,t)=>M(n=>n+t)(e),vec4i:(e,t)=>$e(n=>n+t)(e),vec4u:(e,t)=>Xe(n=>n+t)(e),mat2x2f:(e,t)=>Qt(n=>n+t)(e),mat3x3f:(e,t)=>Xt(n=>n+t)(e),mat4x4f:(e,t)=>Yt(n=>n+t)(e)},mulSxV:{vec2f:(e,t)=>h(n=>e*n)(t),vec2h:(e,t)=>b(n=>e*n)(t),vec2i:(e,t)=>Ae(n=>e*n)(t),vec2u:(e,t)=>He(n=>e*n)(t),vec3f:(e,t)=>f(n=>e*n)(t),vec3h:(e,t)=>w(n=>e*n)(t),vec3i:(e,t)=>ze(n=>e*n)(t),vec3u:(e,t)=>Qe(n=>e*n)(t),vec4f:(e,t)=>d(n=>e*n)(t),vec4h:(e,t)=>M(n=>e*n)(t),vec4i:(e,t)=>$e(n=>e*n)(t),vec4u:(e,t)=>Xe(n=>e*n)(t),mat2x2f:(e,t)=>Qt(n=>e*n)(t),mat3x3f:(e,t)=>Xt(n=>e*n)(t),mat4x4f:(e,t)=>Yt(n=>e*n)(t)},mulVxV:{vec2f:me((e,t)=>e*t),vec2h:he((e,t)=>e*t),vec2i:Fe((e,t)=>e*t),vec2u:Ve((e,t)=>e*t),vec3f:ee((e,t)=>e*t),vec3h:ve((e,t)=>e*t),vec3i:Ce((e,t)=>e*t),vec3u:Pe((e,t)=>e*t),vec4f:Q((e,t)=>e*t),vec4h:be((e,t)=>e*t),vec4i:ke((e,t)=>e*t),vec4u:_e((e,t)=>e*t),mat2x2f:(e,t)=>{let n=e.columns,r=t.columns;return ce(n[0].x*r[0].x+n[1].x*r[0].y,n[0].y*r[0].x+n[1].y*r[0].y,n[0].x*r[1].x+n[1].x*r[1].y,n[0].y*r[1].x+n[1].y*r[1].y)},mat3x3f:(e,t)=>{let n=e.columns,r=t.columns;return ie(n[0].x*r[0].x+n[1].x*r[0].y+n[2].x*r[0].z,n[0].y*r[0].x+n[1].y*r[0].y+n[2].y*r[0].z,n[0].z*r[0].x+n[1].z*r[0].y+n[2].z*r[0].z,n[0].x*r[1].x+n[1].x*r[1].y+n[2].x*r[1].z,n[0].y*r[1].x+n[1].y*r[1].y+n[2].y*r[1].z,n[0].z*r[1].x+n[1].z*r[1].y+n[2].z*r[1].z,n[0].x*r[2].x+n[1].x*r[2].y+n[2].x*r[2].z,n[0].y*r[2].x+n[1].y*r[2].y+n[2].y*r[2].z,n[0].z*r[2].x+n[1].z*r[2].y+n[2].z*r[2].z)},mat4x4f:(e,t)=>{let n=e.columns,r=t.columns;return A(n[0].x*r[0].x+n[1].x*r[0].y+n[2].x*r[0].z+n[3].x*r[0].w,n[0].y*r[0].x+n[1].y*r[0].y+n[2].y*r[0].z+n[3].y*r[0].w,n[0].z*r[0].x+n[1].z*r[0].y+n[2].z*r[0].z+n[3].z*r[0].w,n[0].w*r[0].x+n[1].w*r[0].y+n[2].w*r[0].z+n[3].w*r[0].w,n[0].x*r[1].x+n[1].x*r[1].y+n[2].x*r[1].z+n[3].x*r[1].w,n[0].y*r[1].x+n[1].y*r[1].y+n[2].y*r[1].z+n[3].y*r[1].w,n[0].z*r[1].x+n[1].z*r[1].y+n[2].z*r[1].z+n[3].z*r[1].w,n[0].w*r[1].x+n[1].w*r[1].y+n[2].w*r[1].z+n[3].w*r[1].w,n[0].x*r[2].x+n[1].x*r[2].y+n[2].x*r[2].z+n[3].x*r[2].w,n[0].y*r[2].x+n[1].y*r[2].y+n[2].y*r[2].z+n[3].y*r[2].w,n[0].z*r[2].x+n[1].z*r[2].y+n[2].z*r[2].z+n[3].z*r[2].w,n[0].w*r[2].x+n[1].w*r[2].y+n[2].w*r[2].z+n[3].w*r[2].w,n[0].x*r[3].x+n[1].x*r[3].y+n[2].x*r[3].z+n[3].x*r[3].w,n[0].y*r[3].x+n[1].y*r[3].y+n[2].y*r[3].z+n[3].y*r[3].w,n[0].z*r[3].x+n[1].z*r[3].y+n[2].z*r[3].z+n[3].z*r[3].w,n[0].w*r[3].x+n[1].w*r[3].y+n[2].w*r[3].z+n[3].w*r[3].w)}},mulMxV:{mat2x2f:(e,t)=>{let n=e.columns;return K(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 W(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 j(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 K(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 W(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 j(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)}},div:{vec2f:me((e,t)=>e/t),vec2h:he((e,t)=>e/t),vec2i:Fe(ge),vec2u:Ve(ge),vec3f:ee((e,t)=>e/t),vec3h:ve((e,t)=>e/t),vec3i:Ce(ge),vec3u:Pe(ge),vec4f:Q((e,t)=>e/t),vec4h:be((e,t)=>e/t),vec4i:ke(ge),vec4u:_e(ge)},dot:{vec2f:lt,vec2h:lt,vec2i:lt,vec2u:lt,vec3f:mt,vec3h:mt,vec3i:mt,vec3u:mt,vec4f:pt,vec4h:pt,vec4i:pt,vec4u:pt},normalize:{vec2f:e=>{let t=Me(e);return K(e.x/t,e.y/t)},vec2h:e=>{let t=Me(e);return pe(e.x/t,e.y/t)},vec2i:e=>{let t=Me(e);return We(e.x/t,e.y/t)},vec2u:e=>{let t=Me(e);return Ye(e.x/t,e.y/t)},vec3f:e=>{let t=Se(e);return W(e.x/t,e.y/t,e.z/t)},vec3h:e=>{let t=Se(e);return J(e.x/t,e.y/t,e.z/t)},vec3i:e=>{let t=Se(e);return Ue(e.x/t,e.y/t,e.z/t)},vec3u:e=>{let t=Se(e);return Je(e.x/t,e.y/t,e.z/t)},vec4f:e=>{let t=Ie(e);return j(e.x/t,e.y/t,e.z/t,e.w/t)},vec4h:e=>{let t=Ie(e);return ye(e.x/t,e.y/t,e.z/t,e.w/t)},vec4i:e=>{let t=Ie(e);return Be(e.x/t,e.y/t,e.z/t,e.w/t)},vec4u:e=>{let t=Ie(e);return et(e.x/t,e.y/t,e.z/t,e.w/t)}},cross:{vec3f:(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),vec3h:(e,t)=>J(e.y*t.z-e.z*t.y,e.z*t.x-e.x*t.z,e.x*t.y-e.y*t.x)},mod:{vec2f:me((e,t)=>e%t),vec2h:he((e,t)=>e%t),vec2i:Fe((e,t)=>e%t),vec2u:Ve((e,t)=>e%t),vec3f:ee((e,t)=>e%t),vec3h:ve((e,t)=>e%t),vec3i:Ce((e,t)=>e%t),vec3u:Pe((e,t)=>e%t),vec4f:Q((e,t)=>e%t),vec4h:be((e,t)=>e%t),vec4i:ke((e,t)=>e%t),vec4u:_e((e,t)=>e%t)},floor:{vec2f:h(Math.floor),vec2h:b(Math.floor),vec3f:f(Math.floor),vec3h:w(Math.floor),vec4f:d(Math.floor),vec4h:M(Math.floor)},max:{vec2f:me(Math.max),vec2h:he(Math.max),vec2i:Fe(Math.max),vec2u:Ve(Math.max),vec3f:ee(Math.max),vec3h:ve(Math.max),vec3i:Ce(Math.max),vec3u:Pe(Math.max),vec4f:Q(Math.max),vec4h:be(Math.max),vec4i:ke(Math.max),vec4u:_e(Math.max)},min:{vec2f:me(Math.min),vec2h:he(Math.min),vec2i:Fe(Math.min),vec2u:Ve(Math.min),vec3f:ee(Math.min),vec3h:ve(Math.min),vec3i:Ce(Math.min),vec3u:Pe(Math.min),vec4f:Q(Math.min),vec4h:be(Math.min),vec4i:ke(Math.min),vec4u:_e(Math.min)},pow:{vec2f:(e,t)=>K(e.x**t.x,e.y**t.y),vec2h:(e,t)=>pe(e.x**t.x,e.y**t.y),vec3f:(e,t)=>W(e.x**t.x,e.y**t.y,e.z**t.z),vec3h:(e,t)=>J(e.x**t.x,e.y**t.y,e.z**t.z),vec4f:(e,t)=>j(e.x**t.x,e.y**t.y,e.z**t.z,e.w**t.w),vec4h:(e,t)=>ye(e.x**t.x,e.y**t.y,e.z**t.z,e.w**t.w)},sign:{vec2f:h(Math.sign),vec2h:b(Math.sign),vec2i:Ae(Math.sign),vec3f:f(Math.sign),vec3h:w(Math.sign),vec3i:ze(Math.sign),vec4f:d(Math.sign),vec4h:M(Math.sign),vec4i:$e(Math.sign)},sqrt:{vec2f:h(Math.sqrt),vec2h:b(Math.sqrt),vec3f:f(Math.sqrt),vec3h:w(Math.sqrt),vec4f:d(Math.sqrt),vec4h:M(Math.sqrt)},mix:{vec2f:(e,t,n)=>typeof n=="number"?K(e.x*(1-n)+t.x*n,e.y*(1-n)+t.y*n):K(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"?pe(e.x*(1-n)+t.x*n,e.y*(1-n)+t.y*n):pe(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"?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),vec3h:(e,t,n)=>typeof n=="number"?J(e.x*(1-n)+t.x*n,e.y*(1-n)+t.y*n,e.z*(1-n)+t.z*n):J(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"?j(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):j(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"?ye(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):ye(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:h(Math.sin),vec2h:b(Math.sin),vec3f:f(Math.sin),vec3h:w(Math.sin),vec4f:d(Math.sin),vec4h:M(Math.sin)},cos:{vec2f:h(Math.cos),vec2h:b(Math.cos),vec3f:f(Math.cos),vec3h:w(Math.cos),vec4f:d(Math.cos),vec4h:M(Math.cos)},cosh:{vec2f:h(Math.cosh),vec2h:b(Math.cosh),vec3f:f(Math.cosh),vec3h:w(Math.cosh),vec4f:d(Math.cosh),vec4h:M(Math.cosh)},exp:{vec2f:h(Math.exp),vec2h:b(Math.exp),vec3f:f(Math.exp),vec3h:w(Math.exp),vec4f:d(Math.exp),vec4h:M(Math.exp)},exp2:{vec2f:h(e=>2**e),vec2h:b(e=>2**e),vec3f:f(e=>2**e),vec3h:w(e=>2**e),vec4f:d(e=>2**e),vec4h:M(e=>2**e)},log:{vec2f:h(Math.log),vec2h:b(Math.log),vec3f:f(Math.log),vec3h:w(Math.log),vec4f:d(Math.log),vec4h:M(Math.log)},log2:{vec2f:h(Math.log2),vec2h:b(Math.log2),vec3f:f(Math.log2),vec3h:w(Math.log2),vec4f:d(Math.log2),vec4h:M(Math.log2)},fract:{vec2f:h(e=>e-Math.floor(e)),vec2h:b(e=>e-Math.floor(e)),vec3f:f(e=>e-Math.floor(e)),vec3h:w(e=>e-Math.floor(e)),vec4f:d(e=>e-Math.floor(e)),vec4h:M(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:h(e=>-e),vec2h:b(e=>-e),vec2i:Ae(e=>-e),vec2u:He(e=>-e),"vec2<bool>":e=>G(!e.x,!e.y),vec3f:f(e=>-e),vec3h:w(e=>-e),vec3i:ze(e=>-e),vec3u:Qe(e=>-e),"vec3<bool>":e=>N(!e.x,!e.y,!e.z),vec4f:d(e=>-e),vec4h:M(e=>-e),vec4i:$e(e=>-e),vec4u:Xe(e=>-e),"vec4<bool>":e=>O(!e.x,!e.y,!e.z,!e.w)},select:{vec2f:(e,t,n)=>K(n.x?t.x:e.x,n.y?t.y:e.y),vec2h:(e,t,n)=>pe(n.x?t.x:e.x,n.y?t.y:e.y),vec2i:(e,t,n)=>We(n.x?t.x:e.x,n.y?t.y:e.y),vec2u:(e,t,n)=>Ye(n.x?t.x:e.x,n.y?t.y:e.y),"vec2<bool>":(e,t,n)=>G(n.x?t.x:e.x,n.y?t.y:e.y),vec3f:(e,t,n)=>W(n.x?t.x:e.x,n.y?t.y:e.y,n.z?t.z:e.z),vec3h:(e,t,n)=>J(n.x?t.x:e.x,n.y?t.y:e.y,n.z?t.z:e.z),vec3i:(e,t,n)=>Ue(n.x?t.x:e.x,n.y?t.y:e.y,n.z?t.z:e.z),vec3u:(e,t,n)=>Je(n.x?t.x:e.x,n.y?t.y:e.y,n.z?t.z:e.z),"vec3<bool>":(e,t,n)=>N(n.x?t.x:e.x,n.y?t.y:e.y,n.z?t.z:e.z),vec4f:(e,t,n)=>j(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)=>ye(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)=>Be(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)=>et(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)=>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)},tanh:{vec2f:h(Math.tanh),vec2h:b(Math.tanh),vec3f:f(Math.tanh),vec3h:w(Math.tanh),vec4f:d(Math.tanh),vec4h:M(Math.tanh)},bitcastU32toF32:{vec2u:e=>K(X(e.x),X(e.y)),vec3u:e=>W(X(e.x),X(e.y),X(e.z)),vec4u:e=>j(X(e.x),X(e.y),X(e.z),X(e.w))},bitcastU32toI32:{vec2u:e=>We(Y(e.x),Y(e.y)),vec3u:e=>Ue(Y(e.x),Y(e.y),Y(e.z)),vec4u:e=>Be(Y(e.x),Y(e.y),Y(e.z),Y(e.w))}};function Jt(e,t){if(typeof e=="number"&&typeof t=="number")return e+t;if(typeof e=="number"&&_chunk44LAYHPRcjs.r.call(void 0, t))return i.addMixed[t.kind](t,e);if(_chunk44LAYHPRcjs.r.call(void 0, e)&&typeof t=="number")return i.addMixed[e.kind](e,t);if(_chunk44LAYHPRcjs.r.call(void 0, e)&&_chunk44LAYHPRcjs.r.call(void 0, t)||_chunk44LAYHPRcjs.w.call(void 0, e)&&_chunk44LAYHPRcjs.w.call(void 0, t))return i.add[e.kind](e,t);throw new Error("Add/Sub called with invalid arguments.")}var kt=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"add",signature:(...e)=>{let t=_nullishCoalesce(_chunk44LAYHPRcjs.Ia.call(void 0, e), () => (e));return{argTypes:t,returnType:_chunk44LAYHPRcjs.N.call(void 0, t[0])?t[1]:t[0]}},normalImpl:Jt,codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`(${e} + ${t})`});function Un(e,t){return Jt(e,en(-1,t))}var De=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"sub",signature:(...e)=>{let t=_nullishCoalesce(_chunk44LAYHPRcjs.Ia.call(void 0, e), () => (e));return{argTypes:t,returnType:_chunk44LAYHPRcjs.N.call(void 0, t[0])?t[1]:t[0]}},normalImpl:Un,codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`(${e} - ${t})`});function en(e,t){if(typeof e=="number"&&typeof t=="number")return e*t;if(typeof e=="number"&&(_chunk44LAYHPRcjs.r.call(void 0, t)||_chunk44LAYHPRcjs.w.call(void 0, t)))return i.mulSxV[t.kind](e,t);if((_chunk44LAYHPRcjs.r.call(void 0, e)||_chunk44LAYHPRcjs.w.call(void 0, e))&&typeof t=="number")return i.mulSxV[e.kind](t,e);if(_chunk44LAYHPRcjs.r.call(void 0, e)&&_chunk44LAYHPRcjs.r.call(void 0, t))return i.mulVxV[e.kind](e,t);if(_chunk44LAYHPRcjs.A.call(void 0, e)&&_chunk44LAYHPRcjs.w.call(void 0, t))return i.mulVxM[t.kind](e,t);if(_chunk44LAYHPRcjs.w.call(void 0, e)&&_chunk44LAYHPRcjs.A.call(void 0, t))return i.mulMxV[e.kind](e,t);if(_chunk44LAYHPRcjs.w.call(void 0, e)&&_chunk44LAYHPRcjs.w.call(void 0, t))return i.mulVxV[e.kind](e,t);throw new Error("Mul called with invalid arguments.")}var tt=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"mul",signature:(...e)=>{let t=_nullishCoalesce(_chunk44LAYHPRcjs.Ia.call(void 0, e), () => (e)),n=_chunk44LAYHPRcjs.N.call(void 0, t[0])?t[1]:_chunk44LAYHPRcjs.N.call(void 0, t[1])||t[0].type.startsWith("vec")?t[0]:t[1].type.startsWith("vec")?t[1]:t[0];return{argTypes:t,returnType:n}},normalImpl:en,codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`(${e} * ${t})`});function Bn(e,t){if(typeof e=="number"&&typeof t=="number")return e/t;if(typeof e=="number"&&_chunk44LAYHPRcjs.r.call(void 0, t)){let n=_chunk44LAYHPRcjs.lb[t.kind][_chunk44LAYHPRcjs.a].jsImpl;return i.div[t.kind](n(e),t)}if(_chunk44LAYHPRcjs.r.call(void 0, e)&&typeof t=="number"){let n=_chunk44LAYHPRcjs.lb[e.kind][_chunk44LAYHPRcjs.a].jsImpl;return i.div[e.kind](e,n(t))}if(_chunk44LAYHPRcjs.r.call(void 0, e)&&_chunk44LAYHPRcjs.r.call(void 0, t))return i.div[e.kind](e,t);throw new Error("Div called with invalid arguments.")}var _t=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"div",signature:(...e)=>{let t=_nullishCoalesce(_chunk44LAYHPRcjs.Ia.call(void 0, e,[_chunk44LAYHPRcjs.Va,_chunk44LAYHPRcjs.Wa,_chunk44LAYHPRcjs.Qa]), () => (e));return{argTypes:t,returnType:_chunk44LAYHPRcjs.N.call(void 0, t[0])?t[1]:t[0]}},normalImpl:Bn,codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Fa`(${e} / ${t})`,ignoreImplicitCastWarning:!0}),Is= exports.Z =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"mod",signature:(...e)=>{let t=_nullishCoalesce(_chunk44LAYHPRcjs.Ia.call(void 0, e), () => (e));return{argTypes:t,returnType:_chunk44LAYHPRcjs.N.call(void 0, t[0])?t[1]:t[0]}},normalImpl(e,t){if(typeof e=="number"&&typeof t=="number")return e%t;if(typeof e=="number"&&_chunk44LAYHPRcjs.r.call(void 0, t)){let n=_chunk44LAYHPRcjs.lb[t.kind];return i.mod[t.kind](n(e),t)}if(_chunk44LAYHPRcjs.r.call(void 0, e)&&typeof t=="number"){let n=_chunk44LAYHPRcjs.lb[e.kind];return i.mod[e.kind](e,n(t))}if(_chunk44LAYHPRcjs.r.call(void 0, e)&&_chunk44LAYHPRcjs.r.call(void 0, t))return i.mod[e.kind](e,t);throw new Error("Mod called with invalid arguments, expected types: number or vector.")},codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`(${e} % ${t})`});function Dn(e){return typeof e=="number"?-e:i.neg[e.kind](e)}var As=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"neg",signature:e=>({argTypes:[e],returnType:e}),normalImpl:Dn,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`-(${e})`});function Rn(e){return typeof e=="number"?Math.abs(e):i.abs[e.kind](e)}var Rs=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"abs",signature:e=>({argTypes:[e],returnType:e}),normalImpl:Rn,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`abs(${e})`});function En(e){return typeof e=="number"?Math.acos(e):i.acos[e.kind](e)}var Es=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"acos",signature:e=>({argTypes:[e],returnType:e}),normalImpl:En,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`acos(${e})`});function Ln(e){return typeof e=="number"?Math.acosh(e):i.acosh[e.kind](e)}var Ls=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"acosh",signature:e=>({argTypes:[e],returnType:e}),normalImpl:Ln,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`acosh(${e})`});function Gn(e){return typeof e=="number"?Math.asin(e):i.asin[e.kind](e)}var Gs=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"asin",signature:e=>({argTypes:[e],returnType:e}),normalImpl:Gn,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`asin(${e})`});function Nn(e){return typeof e=="number"?Math.asinh(e):i.asinh[e.kind](e)}var Ns=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"asinh",signature:e=>({argTypes:[e],returnType:e}),normalImpl:Nn,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`asinh(${e})`});function On(e){return typeof e=="number"?Math.atan(e):i.atan[e.kind](e)}var Os=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"atan",signature:e=>({argTypes:[e],returnType:e}),normalImpl:On,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`atan(${e})`});function Kn(e){return typeof e=="number"?Math.atanh(e):i.atanh[e.kind](e)}var Ks=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"atanh",signature:e=>({argTypes:[e],returnType:e}),normalImpl:Kn,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`atanh(${e})`});function jn(e,t){return typeof e=="number"&&typeof t=="number"?Math.atan2(e,t):i.atan2[e.kind](e,t)}var js=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"atan2",signature:(...e)=>{let t=_nullishCoalesce(_chunk44LAYHPRcjs.Ia.call(void 0, e,[_chunk44LAYHPRcjs.Va,_chunk44LAYHPRcjs.Wa,_chunk44LAYHPRcjs.Qa]), () => (e));return{argTypes:t,returnType:t[0]}},normalImpl:jn,codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`atan2(${e}, ${t})`});function qn(e){return typeof e=="number"?Math.ceil(e):i.ceil[e.kind](e)}var qs=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"ceil",signature:e=>({argTypes:[e],returnType:e}),normalImpl:qn,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`ceil(${e})`});function Zn(e,t,n){return typeof e=="number"?Math.min(Math.max(t,e),n):i.clamp[e.kind](e,t,n)}var Zs=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"clamp",signature:(...e)=>{let t=_nullishCoalesce(_chunk44LAYHPRcjs.Ia.call(void 0, e), () => (e));return{argTypes:t,returnType:t[0]}},normalImpl:Zn,codegenImpl:(e,t,n)=>_chunk44LAYHPRcjs.Ea`clamp(${e}, ${t}, ${n})`});function Hn(e){return typeof e=="number"?Math.cos(e):i.cos[e.kind](e)}var Hs=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"cos",signature:e=>({argTypes:[e],returnType:e}),normalImpl:Hn,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`cos(${e})`});function Qn(e){return typeof e=="number"?Math.cosh(e):i.cosh[e.kind](e)}var Qs=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"cosh",signature:e=>({argTypes:[e],returnType:e}),normalImpl:Qn,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`cosh(${e})`});var Xs=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"countLeadingZeros",signature:e=>({argTypes:[e],returnType:e}),normalImpl:"CPU implementation for countLeadingZeros not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues",codegenImpl:e=>_chunk44LAYHPRcjs.Ea`countLeadingZeros(${e})`});var Ys=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"countOneBits",signature:e=>({argTypes:[e],returnType:e}),normalImpl:"CPU implementation for countOneBits not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues",codegenImpl:e=>_chunk44LAYHPRcjs.Ea`countOneBits(${e})`});var Js=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"countTrailingZeros",signature:e=>({argTypes:[e],returnType:e}),normalImpl:"CPU implementation for countTrailingZeros not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues",codegenImpl:e=>_chunk44LAYHPRcjs.Ea`countTrailingZeros(${e})`}),ea= exports.oa =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"cross",signature:(e,t)=>({argTypes:[e,t],returnType:e}),normalImpl:(e,t)=>i.cross[e.kind](e,t),codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`cross(${e}, ${t})`});function Xn(e){if(typeof e=="number")return e*180/Math.PI;throw new (0, _chunk44LAYHPRcjs.Na)("CPU implementation for degrees on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues")}var ta=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"degrees",signature:e=>({argTypes:[e],returnType:e}),normalImpl:Xn,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`degrees(${e})`}),na= exports.qa =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"determinant",signature:e=>({argTypes:[e],returnType:_chunk44LAYHPRcjs.Va}),normalImpl:"CPU implementation for determinant not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues",codegenImpl:e=>_chunk44LAYHPRcjs.Ea`determinant(${e})`});function Yn(e,t){return typeof e=="number"&&typeof t=="number"?Math.abs(e-t):cr(De(e,t))}var ra=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"distance",signature:(e,t)=>({argTypes:[e,t],returnType:_chunk44LAYHPRcjs.O.call(void 0, e)?_chunk44LAYHPRcjs.Wa:_chunk44LAYHPRcjs.Va}),normalImpl:Yn,codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`distance(${e}, ${t})`}),Jn= exports.sa =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"dot",signature:(e,t)=>({argTypes:[e,t],returnType:e.primitive}),normalImpl:(e,t)=>i.dot[e.kind](e,t),codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`dot(${e}, ${t})`}),sa= exports.ta =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"dot4U8Packed",signature:(e,t)=>({argTypes:[_chunk44LAYHPRcjs.Sa,_chunk44LAYHPRcjs.Sa],returnType:_chunk44LAYHPRcjs.Sa}),normalImpl:"CPU implementation for dot4U8Packed not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues",codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`dot4U8Packed(${e}, ${t})`}),aa= exports.ua =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"dot4I8Packed",signature:(e,t)=>({argTypes:[_chunk44LAYHPRcjs.Sa,_chunk44LAYHPRcjs.Sa],returnType:_chunk44LAYHPRcjs.Ua}),normalImpl:"CPU implementation for dot4I8Packed not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues",codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`dot4I8Packed(${e}, ${t})`});function er(e){return typeof e=="number"?Math.exp(e):i.exp[e.kind](e)}var oa=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"exp",signature:e=>({argTypes:[e],returnType:e}),normalImpl:er,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`exp(${e})`});function tr(e){return typeof e=="number"?2**e:i.exp2[e.kind](e)}var ua=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"exp2",signature:e=>({argTypes:[e],returnType:e}),normalImpl:tr,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`exp2(${e})`});var ca=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"extractBits",signature:(e,t,n)=>({argTypes:[e,_chunk44LAYHPRcjs.Sa,_chunk44LAYHPRcjs.Sa],returnType:e}),normalImpl:"CPU implementation for extractBits not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues",codegenImpl:(e,t,n)=>_chunk44LAYHPRcjs.Ea`extractBits(${e}, ${t}, ${n})`}),ia= exports.ya =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"faceForward",signature:(e,t,n)=>({argTypes:[e,t,n],returnType:e}),normalImpl:"CPU implementation for faceForward not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues",codegenImpl:(e,t,n)=>_chunk44LAYHPRcjs.Ea`faceForward(${e}, ${t}, ${n})`});var la=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"firstLeadingBit",signature:e=>({argTypes:[e],returnType:e}),normalImpl:"CPU implementation for firstLeadingBit not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues",codegenImpl:e=>_chunk44LAYHPRcjs.Ea`firstLeadingBit(${e})`});var ma=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"firstTrailingBit",signature:e=>({argTypes:[e],returnType:e}),normalImpl:"CPU implementation for firstTrailingBit not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues",codegenImpl:e=>_chunk44LAYHPRcjs.Ea`firstTrailingBit(${e})`});function nr(e){return typeof e=="number"?Math.floor(e):i.floor[e.kind](e)}var pa=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"floor",signature:(...e)=>({argTypes:e,returnType:e[0]}),normalImpl:nr,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`floor(${e})`});function rr(e,t,n){if(typeof e=="number")return e*t+n;throw new (0, _chunk44LAYHPRcjs.Na)("CPU implementation for fma on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues")}var ya=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"fma",signature:(e,t,n)=>({argTypes:[e,t,n],returnType:e}),normalImpl:rr,codegenImpl:(e,t,n)=>_chunk44LAYHPRcjs.Ea`fma(${e}, ${t}, ${n})`});function sr(e){return typeof e=="number"?e-Math.floor(e):i.fract[e.kind](e)}var xa=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"fract",signature:(...e)=>({argTypes:e,returnType:e[0]}),normalImpl:sr,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`fract(${e})`}),ar={f32:_chunk44LAYHPRcjs.tc.call(void 0, {fract:_chunk44LAYHPRcjs.Va,exp:_chunk44LAYHPRcjs.Ua}),f16:_chunk44LAYHPRcjs.tc.call(void 0, {fract:_chunk44LAYHPRcjs.Wa,exp:_chunk44LAYHPRcjs.Ua}),abstractFloat:_chunk44LAYHPRcjs.tc.call(void 0, {fract:_chunk44LAYHPRcjs.Qa,exp:_chunk44LAYHPRcjs.Pa}),vec2f:_chunk44LAYHPRcjs.tc.call(void 0, {fract:_chunk44LAYHPRcjs.Ya,exp:_chunk44LAYHPRcjs._a}),vec3f:_chunk44LAYHPRcjs.tc.call(void 0, {fract:_chunk44LAYHPRcjs.bb,exp:_chunk44LAYHPRcjs.db}),vec4f:_chunk44LAYHPRcjs.tc.call(void 0, {fract:_chunk44LAYHPRcjs.gb,exp:_chunk44LAYHPRcjs.ib}),vec2h:_chunk44LAYHPRcjs.tc.call(void 0, {fract:_chunk44LAYHPRcjs.Za,exp:_chunk44LAYHPRcjs._a}),vec3h:_chunk44LAYHPRcjs.tc.call(void 0, {fract:_chunk44LAYHPRcjs.cb,exp:_chunk44LAYHPRcjs.db}),vec4h:_chunk44LAYHPRcjs.tc.call(void 0, {fract:_chunk44LAYHPRcjs.hb,exp:_chunk44LAYHPRcjs.ib})},Ta= exports.Ea =_chunk44LAYHPRcjs.Ma.call(void 0, e=>{throw new (0, _chunk44LAYHPRcjs.Na)("CPU implementation for frexp not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues")},e=>{let t=ar[e.dataType.type];if(!t)throw new Error(`Unsupported data type for frexp: ${e.dataType.type}. Supported types are f32, f16, abstractFloat, vec2f, vec3f, vec4f, vec2h, vec3h, vec4h.`);return _chunk44LAYHPRcjs.aa.call(void 0, _chunk44LAYHPRcjs.Ea`frexp(${e})`,t)},"frexp");var da=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"insertBits",signature:(e,t,n,r)=>({argTypes:[e,t,_chunk44LAYHPRcjs.Sa,_chunk44LAYHPRcjs.Sa],returnType:e}),normalImpl:"CPU implementation for insertBits not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues",codegenImpl:(e,t,n,r)=>_chunk44LAYHPRcjs.Ea`insertBits(${e}, ${t}, ${n}, ${r})`});function or(e){if(typeof e=="number")return 1/Math.sqrt(e);throw new (0, _chunk44LAYHPRcjs.Na)("CPU implementation for inverseSqrt on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues")}var fa=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"inverseSqrt",signature:e=>({argTypes:[e],returnType:e}),normalImpl:or,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`inverseSqrt(${e})`});var ga=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"ldexp",signature:(e,t)=>{switch(e.type){case"abstractFloat":return{argTypes:[_chunk44LAYHPRcjs.Qa,_chunk44LAYHPRcjs.Pa],returnType:e};case"f32":case"f16":return{argTypes:[e,_chunk44LAYHPRcjs.Ua],returnType:e};case"vec2f":case"vec2h":return{argTypes:[e,_chunk44LAYHPRcjs._a],returnType:e};case"vec3f":case"vec3h":return{argTypes:[e,_chunk44LAYHPRcjs.db],returnType:e};case"vec4f":case"vec4h":return{argTypes:[e,_chunk44LAYHPRcjs.ib],returnType:e};default:throw new Error(`Unsupported data type for ldexp: ${e.type}. Supported types are abstractFloat, f32, f16, vec2f, vec2h, vec3f, vec3h, vec4f, vec4h.`)}},normalImpl:"CPU implementation for ldexp not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues",codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`ldexp(${e}, ${t})`});function ur(e){return typeof e=="number"?Math.abs(e):i.length[e.kind](e)}var cr=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"length",signature:e=>({argTypes:[e],returnType:_chunk44LAYHPRcjs.O.call(void 0, e)?_chunk44LAYHPRcjs.Wa:_chunk44LAYHPRcjs.Va}),normalImpl:ur,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`length(${e})`});function ir(e){return typeof e=="number"?Math.log(e):i.log[e.kind](e)}var ha=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"log",signature:e=>({argTypes:[e],returnType:e}),normalImpl:ir,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`log(${e})`});function lr(e){return typeof e=="number"?Math.log2(e):i.log2[e.kind](e)}var va=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"log2",signature:e=>({argTypes:[e],returnType:e}),normalImpl:lr,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`log2(${e})`});function mr(e,t){return typeof e=="number"?Math.max(e,t):i.max[e.kind](e,t)}var ba=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"max",signature:(...e)=>{let t=_nullishCoalesce(_chunk44LAYHPRcjs.Ia.call(void 0, e), () => (e));return{argTypes:t,returnType:t[0]}},normalImpl:mr,codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`max(${e}, ${t})`});function pr(e,t){return typeof e=="number"?Math.min(e,t):i.min[e.kind](e,t)}var wa=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"min",signature:(...e)=>{let t=_nullishCoalesce(_chunk44LAYHPRcjs.Ia.call(void 0, e), () => (e));return{argTypes:t,returnType:t[0]}},normalImpl:pr,codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`min(${e}, ${t})`});function yr(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 i.mix[e.kind](e,t,n)}var Ma=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"mix",signature:(e,t,n)=>({argTypes:[e,t,n],returnType:e}),normalImpl:yr,codegenImpl:(e,t,n)=>_chunk44LAYHPRcjs.Ea`mix(${e}, ${t}, ${n})`}),xr={f32:_chunk44LAYHPRcjs.tc.call(void 0, {fract:_chunk44LAYHPRcjs.Va,whole:_chunk44LAYHPRcjs.Va}),f16:_chunk44LAYHPRcjs.tc.call(void 0, {fract:_chunk44LAYHPRcjs.Wa,whole:_chunk44LAYHPRcjs.Wa}),abstractFloat:_chunk44LAYHPRcjs.tc.call(void 0, {fract:_chunk44LAYHPRcjs.Qa,whole:_chunk44LAYHPRcjs.Qa}),vec2f:_chunk44LAYHPRcjs.tc.call(void 0, {fract:_chunk44LAYHPRcjs.Ya,whole:_chunk44LAYHPRcjs.Ya}),vec3f:_chunk44LAYHPRcjs.tc.call(void 0, {fract:_chunk44LAYHPRcjs.bb,whole:_chunk44LAYHPRcjs.bb}),vec4f:_chunk44LAYHPRcjs.tc.call(void 0, {fract:_chunk44LAYHPRcjs.gb,whole:_chunk44LAYHPRcjs.gb}),vec2h:_chunk44LAYHPRcjs.tc.call(void 0, {fract:_chunk44LAYHPRcjs.Za,whole:_chunk44LAYHPRcjs.Za}),vec3h:_chunk44LAYHPRcjs.tc.call(void 0, {fract:_chunk44LAYHPRcjs.cb,whole:_chunk44LAYHPRcjs.cb}),vec4h:_chunk44LAYHPRcjs.tc.call(void 0, {fract:_chunk44LAYHPRcjs.hb,whole:_chunk44LAYHPRcjs.hb})};var Sa=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"modf",signature:e=>{let t=xr[e.type];if(!t)throw new Error(`Unsupported data type for modf: ${e.type}. Supported types are f32, f16, abstractFloat, vec2f, vec3f, vec4f, vec2h, vec3h, vec4h.`);return{argTypes:[e],returnType:t}},normalImpl:"CPU implementation for modf not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues",codegenImpl:e=>_chunk44LAYHPRcjs.Ea`modf(${e})`}),Ia= exports.Pa =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"normalize",signature:e=>({argTypes:[e],returnType:e}),normalImpl:e=>i.normalize[e.kind](e),codegenImpl:e=>_chunk44LAYHPRcjs.Ea`normalize(${e})`});function Tr(e,t){if(typeof e=="number"&&typeof t=="number")return e**t;if(_chunk44LAYHPRcjs.r.call(void 0, e)&&_chunk44LAYHPRcjs.r.call(void 0, t))return i.pow[e.kind](e,t);throw new Error("Invalid arguments to pow()")}var tn=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"pow",signature:(...e)=>{let t=_nullishCoalesce(_chunk44LAYHPRcjs.Ia.call(void 0, e,[_chunk44LAYHPRcjs.Va,_chunk44LAYHPRcjs.Wa,_chunk44LAYHPRcjs.Qa]), () => (e));return{argTypes:t,returnType:_chunk44LAYHPRcjs.N.call(void 0, t[0])?t[1]:t[0]}},normalImpl:Tr,codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`pow(${e}, ${t})`});var Aa=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"quantizeToF16",signature:e=>({argTypes:[e],returnType:e}),normalImpl:"CPU implementation for quantizeToF16 not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues",codegenImpl:e=>_chunk44LAYHPRcjs.Ea`quantizeToF16(${e})`});function dr(e){if(typeof e=="number")return e*Math.PI/180;throw new (0, _chunk44LAYHPRcjs.Na)("CPU implementation for radians on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues")}var za=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"radians",signature:(...e)=>{let t=_nullishCoalesce(_chunk44LAYHPRcjs.Ia.call(void 0, e,[_chunk44LAYHPRcjs.Va,_chunk44LAYHPRcjs.Wa,_chunk44LAYHPRcjs.Qa]), () => (e));return{argTypes:t,returnType:t[0]}},normalImpl:dr,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`radians(${e})`}),$a= exports.Ta =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"reflect",signature:(e,t)=>({argTypes:[e,t],returnType:e}),normalImpl:(e,t)=>De(e,tt(2*Jn(t,e),t)),codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`reflect(${e}, ${t})`}),Fa= exports.Ua =_chunk44LAYHPRcjs.Ma.call(void 0, (e,t,n)=>{throw new (0, _chunk44LAYHPRcjs.Na)("CPU implementation for refract not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues")},(e,t,n)=>_chunk44LAYHPRcjs.aa.call(void 0, _chunk44LAYHPRcjs.Ea`refract(${e}, ${t}, ${n})`,e.dataType),"refract",(e,t,n)=>[e.dataType,t.dataType,_chunk44LAYHPRcjs.O.call(void 0, e)?_chunk44LAYHPRcjs.Wa:_chunk44LAYHPRcjs.Va]);var Va=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"reverseBits",signature:e=>({argTypes:[e],returnType:e}),normalImpl:"CPU implementation for reverseBits not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues",codegenImpl:e=>_chunk44LAYHPRcjs.Ea`reverseBits(${e})`});function fr(e){if(typeof e=="number")return Math.round(e);throw new (0, _chunk44LAYHPRcjs.Na)("CPU implementation for round on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues")}var Ca=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"round",signature:e=>({argTypes:[e],returnType:e}),normalImpl:fr,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`round(${e})`});function gr(e){if(typeof e=="number")return Math.max(0,Math.min(1,e));throw new (0, _chunk44LAYHPRcjs.Na)("CPU implementation for saturate on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues")}var Pa=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"saturate",signature:e=>({argTypes:[e],returnType:e}),normalImpl:gr,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`saturate(${e})`});function hr(e){return typeof e=="number"?Math.sign(e):i.sign[e.kind](e)}var ka=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"sign",signature:e=>({argTypes:[e],returnType:e}),normalImpl:hr,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`sign(${e})`});function vr(e){return typeof e=="number"?Math.sin(e):i.sin[e.kind](e)}var _a=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"sin",signature:e=>({argTypes:[e],returnType:e}),normalImpl:vr,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`sin(${e})`});function br(e){if(typeof e=="number")return Math.sinh(e);throw new (0, _chunk44LAYHPRcjs.Na)("CPU implementation for sinh on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues")}var Wa=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"sinh",signature:e=>({argTypes:[e],returnType:e}),normalImpl:br,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`sinh(${e})`});function wr(e,t,n){return typeof n=="number"?le(e,t,n):i.smoothstep[n.kind](e,t,n)}var Ua=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"smoothstep",signature:(e,t,n)=>({argTypes:[e,t,n],returnType:n}),normalImpl:wr,codegenImpl:(e,t,n)=>_chunk44LAYHPRcjs.Ea`smoothstep(${e}, ${t}, ${n})`});function Mr(e){return typeof e=="number"?Math.sqrt(e):i.sqrt[e.kind](e)}var Ba=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"sqrt",signature:e=>({argTypes:[e],returnType:e}),normalImpl:Mr,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`sqrt(${e})`});function Sr(e,t){if(typeof e=="number")return e<=t?1:0;throw new (0, _chunk44LAYHPRcjs.Na)("CPU implementation for step on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues")}var Da=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"step",signature:(...e)=>{let t=_nullishCoalesce(_chunk44LAYHPRcjs.Ia.call(void 0, e,[_chunk44LAYHPRcjs.Va,_chunk44LAYHPRcjs.Wa,_chunk44LAYHPRcjs.Qa]), () => (e));return{argTypes:t,returnType:t[0]}},normalImpl:Sr,codegenImpl:(e,t)=>_chunk44LAYHPRcjs.Ea`step(${e}, ${t})`});function Ir(e){if(typeof e=="number")return Math.tan(e);throw new (0, _chunk44LAYHPRcjs.Na)("CPU implementation for tan on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues")}var Ra=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"tan",signature:e=>({argTypes:[e],returnType:e}),normalImpl:Ir,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`tan(${e})`});function Ar(e){return typeof e=="number"?Math.tanh(e):i.tanh[e.kind](e)}var Ea=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"tanh",signature:e=>({argTypes:[e],returnType:e}),normalImpl:Ar,codegenImpl:e=>_chunk44LAYHPRcjs.Ea`tanh(${e})`}),La= exports.eb =_chunk44LAYHPRcjs.Oa.call(void 0, {name:"transpose",signature:e=>({argTypes:[e],returnType:e}),normalImpl:"CPU implementation for transpose not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues",codegenImpl:e=>_chunk44LAYHPRcjs.Ea`transpose(${e})`});var Ga=_chunk44LAYHPRcjs.Oa.call(void 0, {name:"trunc",signature:e=>({argTypes:[e],returnType:e}),normalImpl:"CPU implementation for trunc not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues",codegenImpl:e=>_chunk44LAYHPRcjs.Ea`trunc(${e})`});var _tinyest = require('tinyest'); var Fr = _interopRequireWildcard(_tinyest);var zr={f:{1:_chunk44LAYHPRcjs.Va,2:_chunk44LAYHPRcjs.Ya,3:_chunk44LAYHPRcjs.bb,4:_chunk44LAYHPRcjs.gb},h:{1:_chunk44LAYHPRcjs.Wa,2:_chunk44LAYHPRcjs.Za,3:_chunk44LAYHPRcjs.cb,4:_chunk44LAYHPRcjs.hb},i:{1:_chunk44LAYHPRcjs.Ua,2:_chunk44LAYHPRcjs._a,3:_chunk44LAYHPRcjs.db,4:_chunk44LAYHPRcjs.ib},u:{1:_chunk44LAYHPRcjs.Sa,2:_chunk44LAYHPRcjs.$a,3:_chunk44LAYHPRcjs.eb,4:_chunk44LAYHPRcjs.jb},b:{1:_chunk44LAYHPRcjs.Ra,2:_chunk44LAYHPRcjs.ab,3:_chunk44LAYHPRcjs.fb,4:_chunk44LAYHPRcjs.kb}},$r={vec2f:_chunk44LAYHPRcjs.Ya,vec2h:_chunk44LAYHPRcjs.Za,vec2i:_chunk44LAYHPRcjs._a,vec2u:_chunk44LAYHPRcjs.$a,"vec2<bool>":_chunk44LAYHPRcjs.ab,vec3f:_chunk44LAYHPRcjs.bb,vec3h:_chunk44LAYHPRcjs.cb,vec3i:_chunk44LAYHPRcjs.db,vec3u:_chunk44LAYHPRcjs.eb,"vec3<bool>":_chunk44LAYHPRcjs.fb,vec4f:_chunk44LAYHPRcjs.gb,vec4h:_chunk44LAYHPRcjs.hb,vec4i:_chunk44LAYHPRcjs.ib,vec4u:_chunk44LAYHPRcjs.jb,"vec4<bool>":_chunk44LAYHPRcjs.kb,mat2x2f:ce,mat3x3f:ie,mat4x4f:A};function Wt(e,t){if(_chunk44LAYHPRcjs.D.call(void 0, e)||_chunk44LAYHPRcjs.S.call(void 0, e))return _nullishCoalesce(e.propTypes[t], () => (_chunk44LAYHPRcjs.W));if(e===_chunk44LAYHPRcjs.Ra||_chunk44LAYHPRcjs.N.call(void 0, e))return _chunk44LAYHPRcjs.W;let n=t.length;if(_chunk44LAYHPRcjs.v.call(void 0, e)&&n>=1&&n<=4){let r=e.type.includes("bool")?"b":e.type[4],a=zr[r][n];if(a)return a}return _chunk44LAYHPRcjs.W}var nn={mat2x2f:_chunk44LAYHPRcjs.Ya,mat3x3f:_chunk44LAYHPRcjs.bb,mat4x4f:_chunk44LAYHPRcjs.gb};function yt(e){return _chunk44LAYHPRcjs.C.call(void 0, e)||_chunk44LAYHPRcjs.R.call(void 0, e)?e.elementType:_chunk44LAYHPRcjs.v.call(void 0, e)?e.primitive:e.type in nn?nn[e.type]:_chunk44LAYHPRcjs.W}function xt(e){return e>=2**63||e<-(2**63)?_chunk44LAYHPRcjs.aa.call(void 0, e,_chunk44LAYHPRcjs.Qa):Number.isInteger(e)?(Number.isSafeInteger(e)||console.warn(`The integer ${e} exceeds the safe integer range and may have lost precision.`),_chunk44LAYHPRcjs.aa.call(void 0, e,_chunk44LAYHPRcjs.Pa)):_chunk44LAYHPRcjs.aa.call(void 0, e,_chunk44LAYHPRcjs.Qa)}function Tt(e){return e.type==="abstractFloat"?_chunk44LAYHPRcjs.Va:e.type==="abstractInt"?_chunk44LAYHPRcjs.Ua:e}function Xa(e){return e.map(t=>_chunk44LAYHPRcjs.aa.call(void 0, t.value,Tt(t.dataType)))}function dt(e){if(_chunk44LAYHPRcjs._.call(void 0, e))return e;let t=_chunk44LAYHPRcjs.ua.call(void 0, e);return t||(_chunk44LAYHPRcjs.r.call(void 0, e)||_chunk44LAYHPRcjs.w.call(void 0, e)?_chunk44LAYHPRcjs.aa.call(void 0, e,$r[e.kind]):typeof e=="string"||typeof e=="function"||typeof e=="object"||typeof e=="symbol"||typeof e>"u"||e===null?_chunk44LAYHPRcjs.aa.call(void 0, e,_chunk44LAYHPRcjs.W):typeof e=="number"?xt(e):typeof e=="boolean"?_chunk44LAYHPRcjs.aa.call(void 0, e,_chunk44LAYHPRcjs.Ra):_chunk44LAYHPRcjs.aa.call(void 0, e,_chunk44LAYHPRcjs.W))}var{NodeTypeCatalog:g}=Fr,Vr=["==","!=","<","<=",">",">=","<<",">>","+","-","*","/","%","|","^","&","&&","||"],Cr=["&&","||","==","!=","<","<=",">",">="],Pr=["vec2f","vec3f","vec4f","vec2h","vec3h","vec4h","vec2i","vec3i","vec4i","vec2u","vec3u","vec4u","mat2x2f","mat3x3f","mat4x4f"],rn= exports.gb ={add:kt,sub:De,mul:tt,div:_t};function sn(e,t,n){return n?Cr.includes(t)?_chunk44LAYHPRcjs.Ra:t==="="?n:e:t==="!"||t==="~"?_chunk44LAYHPRcjs.Ra:e}var kr={"+":kt[_chunk44LAYHPRcjs.a].gpuImpl,"-":De[_chunk44LAYHPRcjs.a].gpuImpl,"*":tt[_chunk44LAYHPRcjs.a].gpuImpl,"/":_t[_chunk44LAYHPRcjs.a].gpuImpl,"**":tn[_chunk44LAYHPRcjs.a].gpuImpl},Ut=class{#e=void 0;initGenerator(t){this.#e=t}get ctx(){if(!this.#e)throw new Error("WGSL Generator has not yet been initialized. Please call initialize(ctx) before using the generator.");return this.#e}block([t,n]){this.ctx.pushBlockScope();try{this.ctx.indent();let r=n.map(a=>this.statement(a)).join(`
2
- `);return this.ctx.dedent(),`{
3
- ${r}
4
- ${this.ctx.pre}}`}finally{this.ctx.popBlockScope()}}blockVariable(t,n){let r=_chunk44LAYHPRcjs.aa.call(void 0, this.ctx.makeNameValid(t),n);return this.ctx.defineVariable(t,r),r}identifier(t){if(!t)throw new Error("Cannot resolve an empty identifier");let n=this.ctx.getById(t);if(!n)throw new Error(`Identifier ${t} not found`);return n}typedExpression(t,n){let r=this.ctx.expectedType;this.ctx.expectedType=n;try{let a=this.expression(t);return _chunk44LAYHPRcjs.Ka.call(void 0, a,n)}finally{this.ctx.expectedType=r}}expression(t){if(typeof t=="string")return this.identifier(t);if(typeof t=="boolean")return _chunk44LAYHPRcjs.aa.call(void 0, t,_chunk44LAYHPRcjs.Ra);if(t[0]===g.logicalExpr||t[0]===g.binaryExpr||t[0]===g.assignmentExpr){let[n,r,a,s]=t,c=this.expression(r),p=this.expression(s),T=kr[a];if(T)return T(c,p);let S=t[0]===g.assignmentExpr?c.dataType.type==="ptr"?[c.dataType.inner]:[c.dataType]:void 0,[$,U]=_nullishCoalesce(_chunk44LAYHPRcjs.Ja.call(void 0, [c,p],S), () => ([c,p])),nt=this.ctx.resolve($.value,$.dataType).value,Bt=this.ctx.resolve(U.value,U.dataType).value,an=sn($.dataType,a,U.dataType);return _chunk44LAYHPRcjs.aa.call(void 0, Vr.includes(a)?`(${nt} ${a} ${Bt})`:`${nt} ${a} ${Bt}`,an)}if(t[0]===g.postUpdate){let[n,r,a]=t,s=this.expression(a),c=this.ctx.resolve(s.value).value;return _chunk44LAYHPRcjs.aa.call(void 0, `${c}${r}`,s.dataType)}if(t[0]===g.unaryExpr){let[n,r,a]=t,s=this.expression(a),c=this.ctx.resolve(s.value).value,p=sn(s.dataType,r);return _chunk44LAYHPRcjs.aa.call(void 0, `${r}${c}`,p)}if(t[0]===g.memberAccess){let[n,r,a]=t,s=this.expression(r);if(s.value===console)return _chunk44LAYHPRcjs.aa.call(void 0, new _chunk44LAYHPRcjs.Z,_chunk44LAYHPRcjs.W);if(Pr.includes(s.dataType.type)&&a in rn)return{value:new (0, _chunk44LAYHPRcjs.X)(a,s,rn[a][_chunk44LAYHPRcjs.a].gpuImpl),dataType:_chunk44LAYHPRcjs.W};if(s.dataType.type==="unknown"){let c=s.value[a];return dt(c)}return _chunk44LAYHPRcjs.E.call(void 0, s.dataType)?_chunk44LAYHPRcjs.aa.call(void 0, `(*${this.ctx.resolve(s.value).value}).${a}`,Wt(s.dataType.inner,a)):_chunk44LAYHPRcjs.C.call(void 0, s.dataType)&&a==="length"?s.dataType.elementCount===0?_chunk44LAYHPRcjs.aa.call(void 0, `arrayLength(&${this.ctx.resolve(s.value).value})`,_chunk44LAYHPRcjs.Sa):_chunk44LAYHPRcjs.aa.call(void 0, String(s.dataType.elementCount),_chunk44LAYHPRcjs.Pa):_chunk44LAYHPRcjs.z.call(void 0, s.dataType)&&a==="columns"?_chunk44LAYHPRcjs.aa.call(void 0, new (0, _chunk44LAYHPRcjs.Y)(s),_chunk44LAYHPRcjs.W):_chunk44LAYHPRcjs.v.call(void 0, s.dataType)&&_chunk44LAYHPRcjs.r.call(void 0, s.value)?dt(s.value[a]):_chunk44LAYHPRcjs.aa.call(void 0, `${this.ctx.resolve(s.value).value}.${a}`,Wt(s.dataType,a))}if(t[0]===g.indexAccess){let[n,r,a]=t,s=this.expression(r),c=this.expression(a),p=this.ctx.resolve(c.value,c.dataType).value;if(s.value instanceof _chunk44LAYHPRcjs.Y)return _chunk44LAYHPRcjs.aa.call(void 0, _chunk44LAYHPRcjs.Ea`${s.value.matrix}[${p}]`,yt(s.value.matrix.dataType));let T=this.ctx.resolve(s.value,s.dataType).value;if(s.dataType.type==="unknown"){if(Array.isArray(a)&&a[0]===g.numericLiteral)return dt(s.value[a[1]]);throw new Error(`Cannot index value ${T} of unknown type with index ${p}`)}if(_chunk44LAYHPRcjs.z.call(void 0, s.dataType))throw new Error("The only way of accessing matrix elements in TGSL is through the 'columns' property.");return _chunk44LAYHPRcjs.E.call(void 0, s.dataType)?_chunk44LAYHPRcjs.aa.call(void 0, `(*${T})[${p}]`,yt(s.dataType.inner)):_chunk44LAYHPRcjs.aa.call(void 0, `${T}[${p}]`,_chunk44LAYHPRcjs.V.call(void 0, s.dataType)?yt(s.dataType):_chunk44LAYHPRcjs.W)}if(t[0]===g.numericLiteral){let n=typeof t[1]=="string"?xt(Wr(t[1])):xt(t[1]);if(!n)throw new Error(`Invalid numeric literal ${t[1]}`);return n}if(t[0]===g.call){let[n,r,a]=t,s=this.expression(r);if(_chunk44LAYHPRcjs.D.call(void 0, s.value)||_chunk44LAYHPRcjs.C.call(void 0, s.value)){if(a.length>1)throw new (0, _chunk44LAYHPRcjs.la)("Array and struct schemas should always be called with at most 1 argument");if(!a[0])return _chunk44LAYHPRcjs.aa.call(void 0, `${this.ctx.resolve(s.value).value}()`,s.value);let p=this.typedExpression(a[0],s.value);return _chunk44LAYHPRcjs.aa.call(void 0, this.ctx.resolve(p.value,s.value).value,s.value)}if(s.value instanceof _chunk44LAYHPRcjs.X){if(!a[0])throw new (0, _chunk44LAYHPRcjs.la)(`An infix operator '${s.value.name}' was called without any arguments`);let p=this.expression(a[0]);return s.value.operator(s.value.lhs,p)}if(!_chunk44LAYHPRcjs.h.call(void 0, s.value)){let p=a.map(S=>this.expression(S)),T=this.ctx.shelllessRepo.get(s.value,p);if(T)return this.ctx.withResetIndentLevel(()=>{let S=this.ctx.resolve(T);return _chunk44LAYHPRcjs.aa.call(void 0, _chunk44LAYHPRcjs.Ea`${S.value}(${p})`,S.dataType)});throw new Error(`Function '${_nullishCoalesce(_chunk44LAYHPRcjs.j.call(void 0, s.value), () => (String(s.value)))}' is not marked with the 'use gpu' directive and cannot be used in a shader`)}let c=_nullishCoalesce(_optionalChain([s, 'access', _2 => _2.value, 'access', _3 => _3[_chunk44LAYHPRcjs.a], 'optionalAccess', _4 => _4.argConversionHint]), () => ("keep"));try{let p;if(Array.isArray(c))p=a.map((S,$)=>{let U=c[$];if(!U)throw new (0, _chunk44LAYHPRcjs.la)(`Function '${_chunk44LAYHPRcjs.j.call(void 0, s.value)}' was called with too many arguments`);return this.typedExpression(S,U)});else{let S=a.map($=>this.expression($));c==="keep"?p=S:c==="unify"?p=_nullishCoalesce(_chunk44LAYHPRcjs.Ja.call(void 0, S), () => (S)):p=c(...S).map(($,U)=>[$,S[U]]).map(([$,U])=>_chunk44LAYHPRcjs.Ka.call(void 0, U,$))}if(s.value instanceof _chunk44LAYHPRcjs.Z)return this.ctx.generateLog(p);let T=s.value(...p);if(!_chunk44LAYHPRcjs._.call(void 0, T))throw new Error("Functions running in codegen mode must return snippets");return T}catch(p){throw new (0, _chunk44LAYHPRcjs.ca)(p,[{toString:()=>_chunk44LAYHPRcjs.j.call(void 0, s.value)}])}}if(t[0]===g.objectExpr){let n=t[1],r=this.ctx.expectedType;if(!r||!_chunk44LAYHPRcjs.D.call(void 0, r))throw new (0, _chunk44LAYHPRcjs.la)(`No target type could be inferred for object with keys [${Object.keys(n).join(", ")}], please wrap the object in the corresponding schema.`);let a=Object.fromEntries(Object.entries(r.propTypes).map(([c,p])=>{let T=n[c];if(T===void 0)throw new (0, _chunk44LAYHPRcjs.la)(`Missing property ${c} in object literal for struct ${r}`);let S=this.typedExpression(T,p);return[c,S]})),s=_chunk44LAYHPRcjs.La.call(void 0, r,a);return _chunk44LAYHPRcjs.aa.call(void 0, _chunk44LAYHPRcjs.Ea`${this.ctx.resolve(r).value}(${s})`,r)}if(t[0]===g.arrayExpr){let[n,r]=t,a=this.ctx.expectedType,s,c;if(_chunk44LAYHPRcjs.C.call(void 0, a)){if(s=a.elementType,c=r.map(T=>this.typedExpression(T,s)),c.length!==a.elementCount)throw new (0, _chunk44LAYHPRcjs.la)(`Cannot create value of type '${a}' from an array of length: ${c.length}`)}else{let T=r.map($=>this.expression($));if(T.length===0)throw new (0, _chunk44LAYHPRcjs.la)("Cannot infer the type of an empty array literal.");let S=_chunk44LAYHPRcjs.Ja.call(void 0, T);if(!S)throw new (0, _chunk44LAYHPRcjs.la)("The given values cannot be automatically converted to a common type. Consider wrapping the array in an appropriate schema");c=S,s=Tt(_optionalChain([c, 'access', _5 => _5[0], 'optionalAccess', _6 => _6.dataType]))}let p=`array<${this.ctx.resolve(s).value}, ${c.length}>`;return _chunk44LAYHPRcjs.aa.call(void 0, _chunk44LAYHPRcjs.Ea`${p}(${c})`,_chunk44LAYHPRcjs.uc[_chunk44LAYHPRcjs.a].jsImpl(s,c.length))}if(t[0]===g.stringLiteral)return _chunk44LAYHPRcjs.aa.call(void 0, t[1],_chunk44LAYHPRcjs.W);if(t[0]===g.preUpdate)throw new Error("Cannot use pre-updates in TGSL.");_r(t)}functionDefinition(t){return this.block(t)}statement(t){if(typeof t=="string")return`${this.ctx.pre}${this.ctx.resolve(this.identifier(t).value).value};`;if(typeof t=="boolean")return`${this.ctx.pre}${t?"true":"false"};`;if(t[0]===g.return){let n=t[1];if(n!==void 0){let r=this.ctx.topFunctionReturnType,a=r?this.typedExpression(n,r):this.expression(n);return _chunk44LAYHPRcjs.ba.call(void 0, a.dataType.type!=="unknown","Return type should be known"),this.ctx.reportReturnType(a.dataType),_chunk44LAYHPRcjs.Ea`${this.ctx.pre}return ${a};`}return`${this.ctx.pre}return;`}if(t[0]===g.if){let[n,r,a,s]=t,c=this.typedExpression(r,_chunk44LAYHPRcjs.Ra),p=c.value===!1?void 0:this.block(ft(a)),T=c.value===!0||!s?void 0:this.block(ft(s));return c.value===!0?`${this.ctx.pre}${p}`:c.value===!1?T?`${this.ctx.pre}${T}`:"":T?_chunk44LAYHPRcjs.Ea`\
5
- ${this.ctx.pre}if (${c}) ${p}
6
- ${this.ctx.pre}else ${T}`:_chunk44LAYHPRcjs.Ea`${this.ctx.pre}if (${c}) ${p}`}if(t[0]===g.let||t[0]===g.const){let[n,r,a]=t,s=a!==void 0?this.expression(a):void 0;if(!s)throw new Error(`Cannot create variable '${r}' without an initial value.`);if(_chunk44LAYHPRcjs.Q.call(void 0, s.dataType))throw new Error(`Cannot create variable '${r}' with loose data type.`);let c=this.blockVariable(r,Tt(s.dataType));return _chunk44LAYHPRcjs.Fa`${this.ctx.pre}var ${c.value} = ${s};`}if(t[0]===g.block)return this.block(t);if(t[0]===g.for){let[n,r,a,s,c]=t,[p,T,S]=this.ctx.withResetIndentLevel(()=>[r?this.statement(r):void 0,a?this.typedExpression(a,_chunk44LAYHPRcjs.Ra):void 0,s?this.statement(s):void 0]),$=p?p.slice(0,-1):"",U=S?S.slice(0,-1):"",nt=this.block(ft(c));return _chunk44LAYHPRcjs.Ea`${this.ctx.pre}for (${$}; ${T}; ${U}) ${nt}`}if(t[0]===g.while){let[n,r,a]=t,s=this.typedExpression(r,_chunk44LAYHPRcjs.Ra),c=this.ctx.resolve(s.value).value,p=this.block(ft(a));return`${this.ctx.pre}while (${c}) ${p}`}return t[0]===g.continue?`${this.ctx.pre}continue;`:t[0]===g.break?`${this.ctx.pre}break;`:`${this.ctx.pre}${this.ctx.resolve(this.expression(t).value).value};`}};function _r(e){throw new Error(`'${_chunk44LAYHPRcjs.mb.call(void 0, e)}' was not handled by the WGSL generator.`)}function Wr(e){return/^0x[0-9a-f]+$/i.test(e)?Number.parseInt(e):/^0b[01]+$/i.test(e)?Number.parseInt(e.slice(2),2):Number.parseFloat(e)}function ft(e){return typeof e!="object"||e[0]!==g.block?[g.block,[e]]:e}var Ur=new Ut,xo= exports.hb =Ur;exports.a = Ze; exports.b = on; exports.c = un; exports.d = cn; exports.e = mn; exports.f = pn; exports.g = yn; exports.h = xn; exports.i = Tn; exports.j = ce; exports.k = ie; exports.l = A; exports.m = Gr; exports.n = Wt; exports.o = xt; exports.p = Tt; exports.q = Xa; exports.r = dt; exports.s = Kr; exports.t = jr; exports.u = qr; exports.v = Zr; exports.w = Yr; exports.x = it; exports.y = dn; exports.z = fn; exports.A = gn; exports.B = hn; exports.C = vn; exports.D = bn; exports.E = wn; exports.F = Mn; exports.G = Sn; exports.H = In; exports.I = An; exports.J = Jr; exports.K = es; exports.L = ts; exports.M = ns; exports.N = rs; exports.O = ss; exports.P = as; exports.Q = os; exports.R = is; exports.S = X; exports.T = Y; exports.U = i; exports.V = kt; exports.W = De; exports.X = tt; exports.Y = _t; exports.Z = Is; exports._ = As; exports.$ = Rs; exports.aa = Es; exports.ba = Ls; exports.ca = Gs; exports.da = Ns; exports.ea = Os; exports.fa = Ks; exports.ga = js; exports.ha = qs; exports.ia = Zs; exports.ja = Hs; exports.ka = Qs; exports.la = Xs; exports.ma = Ys; exports.na = Js; exports.oa = ea; exports.pa = ta; exports.qa = na; exports.ra = ra; exports.sa = Jn; exports.ta = sa; exports.ua = aa; exports.va = oa; exports.wa = ua; exports.xa = ca; exports.ya = ia; exports.za = la; exports.Aa = ma; exports.Ba = pa; exports.Ca = ya; exports.Da = xa; exports.Ea = Ta; exports.Fa = da; exports.Ga = fa; exports.Ha = ga; exports.Ia = cr; exports.Ja = ha; exports.Ka = va; exports.La = ba; exports.Ma = wa; exports.Na = Ma; exports.Oa = Sa; exports.Pa = Ia; exports.Qa = tn; exports.Ra = Aa; exports.Sa = za; exports.Ta = $a; exports.Ua = Fa; exports.Va = Va; exports.Wa = Ca; exports.Xa = Pa; exports.Ya = ka; exports.Za = _a; exports._a = Wa; exports.$a = Ua; exports.ab = Ba; exports.bb = Da; exports.cb = Ra; exports.db = Ea; exports.eb = La; exports.fb = Ga; exports.gb = rn; exports.hb = xo;
7
- //# sourceMappingURL=chunk-HLB6TY7I.cjs.map