PageSourceSearch

https://readme-lue.vercel.app/_next/static/immutable/chunks/27kmh9sqomkmu.js

js readme-lue.vercel.app collected 2026-10-03 07:36:05 UTC 76,931 bytes, 151 lines download raw bytes

1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,985155,773955,987134,372786,167512,23089,491787,333092,741988,437160,767864,781693,e=>{"use strict";var t,r,i,a,n,s=e.i(116447),o=e.i(964850);class l{constructor(){this._tempState=o.State.for2d(),this._didUploadHash={}}init(e){e.renderer.runners.contextChange.add(this)}contextChange(){this._didUploadHash={}}start(e,t,r){let i=e.renderer,a=this._didUploadHash[r.uid];i.shader.bind(r,a),a||(this._didUploadHash[r.uid]=!0),i.shader.updateUniformGroup(i.globalUniforms.uniformGroup),i.geometry.bind(t,r.glProgram)}execute(e,t){let r=e.renderer;this._tempState.blendMode=t.blendMode,r.state.set(this._tempState);let i=t.textures.textures;for(let e=0;e<t.textures.count;e++)r.texture.bind(i[e],e);r.geometry.draw(t.topology,t.size,t.start)}}l.extension={type:[s.ExtensionType.WebGLPipesAdaptor],name:"batch"},e.s(["GlBatchAdaptor",0,l],985155);var u=e.i(530697),_=e.i(486704),c=((t=c||{})[t.ELEMENT_ARRAY_BUFFER=34963]="ELEMENT_ARRAY_BUFFER",t[t.ARRAY_BUFFER=34962]="ARRAY_BUFFER",t[t.UNIFORM_BUFFER=35345]="UNIFORM_BUFFER",t);e.s(["BUFFER_TYPE",0,c],773955);class h{constructor(e,t){this._lastBindBaseLocation=-1,this._lastBindCallId=-1,this.buffer=e||null,this.updateID=-1,this.byteLength=-1,this.type=t}destroy(){this.buffer=null,this.updateID=-1,this.byteLength=-1,this.type=-1,this._lastBindBaseLocation=-1,this._lastBindCallId=-1}}e.s(["GlBuffer",0,h],987134);class d{constructor(e){this._boundBufferBases=Object.create(null),this._minBaseLocation=0,this._nextBindBaseIndex=this._minBaseLocation,this._bindCallId=0,this._renderer=e,this._managedBuffers=new u.GCManagedHash({renderer:e,type:"resource",onUnload:this.onBufferUnload.bind(this),name:"glBuffer"})}destroy(){this._managedBuffers.destroy(),this._renderer=null,this._gl=null,this._boundBufferBases={}}contextChange(){this._gl=this._renderer.gl,this.destroyAll(!0),this._maxBindings=this._renderer.limits.maxUniformBindings}getGlBuffer(e){return e._gcLastUsed=this._renderer.gc.now,e._gpuData[this._renderer.uid]||this.createGLBuffer(e)}bind(e){let{_gl:t}=this,r=this.getGlBuffer(e);t.bindBuffer(r.type,r.buffer)}bindBufferBase(e,t){let{_gl:r}=this;this._boundBufferBases[t]!==e&&(this._boundBufferBases[t]=e,e._lastBindBaseLocation=t,r.bindBufferBase(r.UNIFORM_BUFFER,t,e.buffer))}nextBindBase(e){this._bindCallId++,this._minBaseLocation=0,e&&(this._boundBufferBases[0]=null,this._minBaseLocation=1,this._nextBindBaseIndex<1&&(this._nextBindBaseIndex=1))}freeLocationForBufferBase(e){let t=this.getLastBindBaseLocation(e);if(t>=this._minBaseLocation)return e._lastBindCallId=this._bindCallId,t;let r=0,i=this._nextBindBaseIndex;for(;r<2;){i>=this._maxBindings&&(i=this._minBaseLocation,r++);let e=this._boundBufferBases[i];if(e&&e._lastBindCallId===this._bindCallId){i++;continue}break}return(t=i,this._nextBindBaseIndex=i+1,r>=2)?-1:(e._lastBindCallId=this._bindCallId,this._boundBufferBases[t]=null,t)}getLastBindBaseLocation(e){let t=e._lastBindBaseLocation;return this._boundBufferBases[t]===e?t:-1}bindBufferRange(e,t,r,i){let{_gl:a}=this;r||(r=0),t||(t=0),this._boundBufferBases[t]=null,a.bindBufferRange(a.UNIFORM_BUFFER,t||0,e.buffer,256*r,i||256)}updateBuffer(e){let{_gl:t}=this,r=this.getGlBuffer(e);if(e._updateID===r.updateID)return r;r.updateID=e._updateID,t.bindBuffer(r.type,r.buffer);let i=e.data,a=e.descriptor.usage&_.BufferUsage.STATIC?t.STATIC_DRAW:t.DYNAMIC_DRAW;return i?r.byteLength>=i.byteLength?t.bufferSubData(r.type,e._updateOffset,i,e._updateOffset/i.BYTES_PER_ELEMENT,(e._updateSize||i.byteLength)/i.BYTES_PER_ELEMENT):(r.byteLength=i.byteLength,t.bufferData(r.type,i,a)):(r.byteLength=e.descriptor.size,t.bufferData(r.type,r.byteLength,a)),r}destroyAll(e=!1){this._managedBuffers.removeAll(e)}onBufferUnload(e,t=!1){let r=e._gpuData[this._renderer.uid];r&&(t||this._gl.deleteBuffer(r.buffer))}createGLBuffer(e){let{_gl:t}=this,r=c.ARRAY_BUFFER;e.descriptor.usage&_.BufferUsage.INDEX?r=c.ELEMENT_ARRAY_BUFFER:e.descriptor.usage&_.BufferUsage.UNIFORM&&(r=c.UNIFORM_BUFFER);let i=new h(t.createBuffer(),r);return e._gpuData[this._renderer.uid]=i,this._managedBuffers.add(e),i}resetState(){this._boundBufferBases=Object.create(null)}}
1d.extension={type:[s.ExtensionType.WebGLSystem],name:"buffer"},e.s(["GlBufferSystem",0,d],372786);var f=e.i(72145),m=e.i(412263);let g=class e{constructor(e){this.supports={uint32Indices:!0,uniformBufferObject:!0,vertexArrayObject:!0,srgbTextures:!0,nonPowOf2wrapping:!0,msaa:!0,nonPowOf2mipmaps:!0},this._renderer=e,this.extensions=Object.create(null),this.handleContextLost=this.handleContextLost.bind(this),this.handleContextRestored=this.handleContextRestored.bind(this)}get isLost(){return!this.gl||this.gl.isContextLost()}contextChange(e){this.gl=e,this._renderer.gl=e}init(t){t={...e.defaultOptions,...t};let r=this.multiView=t.multiView;if(t.context&&r&&((0,m.warn)("Renderer created with both a context and multiview enabled. Disabling multiView as both cannot work together."),r=!1),r?this.canvas=f.DOMAdapter.get().createCanvas(this._renderer.canvas.width,this._renderer.canvas.height):this.canvas=this._renderer.view.canvas,t.context)this.initFromContext(t.context);else{let e=this._renderer.background.alpha<1,r=t.premultipliedAlpha??!0,i=t.antialias&&!this._renderer.backBuffer.useBackBuffer;this.createContext(t.preferWebGLVersion,{alpha:e,premultipliedAlpha:r,antialias:i,stencil:!0,preserveDrawingBuffer:t.preserveDrawingBuffer,powerPreference:t.powerPreference??"default"})}}ensureCanvasSize(e){if(!this.multiView){e!==this.canvas&&(0,m.warn)("multiView is disabled, but targetCanvas is not the main canvas");return}let{canvas:t}=this;(t.width<e.width||t.height<e.height)&&(t.width=Math.max(e.width,e.width),t.height=Math.max(e.height,e.height))}initFromContext(e){this.gl=e,this.webGLVersion=e instanceof f.DOMAdapter.get().getWebGLRenderingContext()?1:2,this.getExtensions(),this.validateContext(e),this._renderer.runners.contextChange.emit(e);let t=this._renderer.view.canvas;t.addEventListener("webglcontextlost",this.handleContextLost,!1),t.addEventListener("webglcontextrestored",this.handleContextRestored,!1)}createContext(e,t){let r,i=this.canvas;if(2===e&&(r=i.getContext("webgl2",t)),!r&&!(r=i.getContext("webgl",t)))throw Error("This browser does not support WebGL. Try using the canvas renderer");this.gl=r,this.initFromContext(this.gl)}getExtensions(){let{gl:e}=this,t={anisotropicFiltering:e.getExtension("EXT_texture_filter_anisotropic"),floatTextureLinear:e.getExtension("OES_texture_float_linear"),s3tc:e.getExtension("WEBGL_compressed_texture_s3tc"),s3tc_sRGB:e.getExtension("WEBGL_compressed_texture_s3tc_srgb"),etc:e.getExtension("WEBGL_compressed_texture_etc"),etc1:e.getExtension("WEBGL_compressed_texture_etc1"),pvrtc:e.getExtension("WEBGL_compressed_texture_pvrtc")||e.getExtension("WEBKIT_WEBGL_compressed_texture_pvrtc"),atc:e.getExtension("WEBGL_compressed_texture_atc"),astc:e.getExtension("WEBGL_compressed_texture_astc"),bptc:e.getExtension("EXT_texture_compression_bptc"),rgtc:e.getExtension("EXT_texture_compression_rgtc"),loseContext:e.getExtension("WEBGL_lose_context")};if(1===this.webGLVersion)this.extensions={...t,drawBuffers:e.getExtension("WEBGL_draw_buffers"),depthTexture:e.getExtension("WEBGL_depth_texture"),vertexArrayObject:e.getExtension("OES_vertex_array_object")||e.getExtension("MOZ_OES_vertex_array_object")||e.getExtension("WEBKIT_OES_vertex_array_object"),uint32ElementIndex:e.getExtension("OES_element_index_uint"),floatTexture:e.getExtension("OES_texture_float"),floatTextureLinear:e.getExtension("OES_texture_float_linear"),textureHalfFloat:e.getExtension("OES_texture_half_float"),textureHalfFloatLinear:e.getExtension("OES_texture_half_float_linear"),vertexAttribDivisorANGLE:e.getExtension("ANGLE_instanced_arrays"),srgb:e.getExtension("EXT_sRGB")};else{this.extensions={...t,colorBufferFloat:e.getExtension("EXT_color_buffer_float")};let r=e.getExtension("WEBGL_provoking_vertex");r&&r.provokingVertexWEBGL(r.FIRST_VERTEX_CONVENTION_WEBGL)}}handleContextLost(e){e.preventDefault(),this._contextLossForced&&(this._contextLossForced=!1,setTimeout(()=>{this.gl.isContextLost()&&this.extensions.loseContext?.restoreContext()},0))}handleContextRestored(){this.getExtensions(),this._renderer.runners.contextChange.emit(this.gl)}destroy(){let e=this._renderer.view.canvas;this._renderer=null,e.removeEventListener("webglcontextlost",this.handleContextLost),e.removeEventListener("webglcontextrestored",this.handleContextRestored),this.gl.useProgram(null),this.extensions.loseContext?.loseContext()}forceContextLoss(){this.extensions.loseContext?.loseContext(),this._contextLossForced=!0}validateContext(e){let t=e.getContextAttributes();t&&!t.stencil&&(0,m.warn)("Provided WebGL context does not have a stencil buffer, masks may not render correctly");let r=this.supports,i=2===this.webGLVersion,a=this.extensions;r.uint32Indices=i||!!a.uint32ElementIndex,r.uniformBufferObject=i,r.vertexArrayObject=i||!!a.vertexArrayObject,r.srgbTextures=i||!!a.srgb,r.nonPowOf2wrapping=i,r.nonPowOf2mipmaps=i,r.msaa=i,r.uint32Indices||(0,m.
1warn)("Provided WebGL context does not support 32 index buffer, large scenes may not render correctly")}};g.extension={type:[s.ExtensionType.WebGLSystem],name:"context"},g.defaultOptions={context:null,premultipliedAlpha:!0,preserveDrawingBuffer:!1,powerPreference:void 0,preferWebGLVersion:2,multiView:!1},e.s(["GlContextSystem",0,g],167512);var E=e.i(354402),T=e.i(98817),p=((r=p||{})[r.RGBA=6408]="RGBA",r[r.RGB=6407]="RGB",r[r.RG=33319]="RG",r[r.RED=6403]="RED",r[r.RGBA_INTEGER=36249]="RGBA_INTEGER",r[r.RGB_INTEGER=36248]="RGB_INTEGER",r[r.RG_INTEGER=33320]="RG_INTEGER",r[r.RED_INTEGER=36244]="RED_INTEGER",r[r.ALPHA=6406]="ALPHA",r[r.LUMINANCE=6409]="LUMINANCE",r[r.LUMINANCE_ALPHA=6410]="LUMINANCE_ALPHA",r[r.DEPTH_COMPONENT=6402]="DEPTH_COMPONENT",r[r.DEPTH_STENCIL=34041]="DEPTH_STENCIL",r),R=((i=R||{})[i.TEXTURE_2D=3553]="TEXTURE_2D",i[i.TEXTURE_CUBE_MAP=34067]="TEXTURE_CUBE_MAP",i[i.TEXTURE_2D_ARRAY=35866]="TEXTURE_2D_ARRAY",i[i.TEXTURE_CUBE_MAP_POSITIVE_X=34069]="TEXTURE_CUBE_MAP_POSITIVE_X",i[i.TEXTURE_CUBE_MAP_NEGATIVE_X=34070]="TEXTURE_CUBE_MAP_NEGATIVE_X",i[i.TEXTURE_CUBE_MAP_POSITIVE_Y=34071]="TEXTURE_CUBE_MAP_POSITIVE_Y",i[i.TEXTURE_CUBE_MAP_NEGATIVE_Y=34072]="TEXTURE_CUBE_MAP_NEGATIVE_Y",i[i.TEXTURE_CUBE_MAP_POSITIVE_Z=34073]="TEXTURE_CUBE_MAP_POSITIVE_Z",i[i.TEXTURE_CUBE_MAP_NEGATIVE_Z=34074]="TEXTURE_CUBE_MAP_NEGATIVE_Z",i),x=((a=x||{})[a.CLAMP=33071]="CLAMP",a[a.REPEAT=10497]="REPEAT",a[a.MIRRORED_REPEAT=33648]="MIRRORED_REPEAT",a),S=((n=S||{})[n.UNSIGNED_BYTE=5121]="UNSIGNED_BYTE",n[n.UNSIGNED_SHORT=5123]="UNSIGNED_SHORT",n[n.UNSIGNED_SHORT_5_6_5=33635]="UNSIGNED_SHORT_5_6_5",n[n.UNSIGNED_SHORT_4_4_4_4=32819]="UNSIGNED_SHORT_4_4_4_4",n[n.UNSIGNED_SHORT_5_5_5_1=32820]="UNSIGNED_SHORT_5_5_5_1",n[n.UNSIGNED_INT=5125]="UNSIGNED_INT",n[n.UNSIGNED_INT_10F_11F_11F_REV=35899]="UNSIGNED_INT_10F_11F_11F_REV",n[n.UNSIGNED_INT_2_10_10_10_REV=33640]="UNSIGNED_INT_2_10_10_10_REV",n[n.UNSIGNED_INT_24_8=34042]="UNSIGNED_INT_24_8",n[n.UNSIGNED_INT_5_9_9_9_REV=35902]="UNSIGNED_INT_5_9_9_9_REV",n[n.BYTE=5120]="BYTE",n[n.SHORT=5122]="SHORT",n[n.INT=5124]="INT",n[n.FLOAT=5126]="FLOAT",n[n.FLOAT_32_UNSIGNED_INT_24_8_REV=36269]="FLOAT_32_UNSIGNED_INT_24_8_REV",n[n.HALF_FLOAT=36193]="HALF_FLOAT",n);e.s(["GL_FORMATS",0,p,"GL_TARGETS",0,R,"GL_TYPES",0,S,"GL_WRAP_MODES",0,x],23089);let b={uint8x2:S.UNSIGNED_BYTE,uint8x4:S.UNSIGNED_BYTE,sint8x2:S.BYTE,sint8x4:S.BYTE,unorm8x2:S.UNSIGNED_BYTE,unorm8x4:S.UNSIGNED_BYTE,snorm8x2:S.BYTE,snorm8x4:S.BYTE,uint16x2:S.UNSIGNED_SHORT,uint16x4:S.UNSIGNED_SHORT,sint16x2:S.SHORT,sint16x4:S.SHORT,unorm16x2:S.UNSIGNED_SHORT,unorm16x4:S.UNSIGNED_SHORT,snorm16x2:S.SHORT,snorm16x4:S.SHORT,float16x2:S.HALF_FLOAT,float16x4:S.HALF_FLOAT,float32:S.FLOAT,float32x2:S.FLOAT,float32x3:S.FLOAT,float32x4:S.FLOAT,uint32:S.UNSIGNED_INT,uint32x2:S.UNSIGNED_INT,uint32x3:S.UNSIGNED_INT,uint32x4:S.UNSIGNED_INT,sint32:S.INT,sint32x2:S.INT,sint32x3:S.INT,sint32x4:S.INT};function A(e){return b[e]??b.float32}e.s(["getGlTypeFromFormat",0,A],491787);let v={"point-list":0,"line-list":1,"line-strip":3,"triangle-list":4,"triangle-strip":5};class B{constructor(){this.vaoCache=Object.create(null)}destroy(){this.vaoCache=Object.create(null)}}class G{constructor(e){this._renderer=e,this._activeGeometry=null,this._activeVao=null,this.hasVao=!0,this.hasInstance=!0,this._managedGeometries=new u.GCManagedHash({renderer:e,type:"resource",onUnload:this.onGeometryUnload.bind(this),name:"glGeometry"})}contextChange(){let e=this.gl=this._renderer.gl;if(!this._renderer.context.supports.vertexArrayObject)throw Error("[PixiJS] Vertex Array Objects are not supported on this device");this.destroyAll(!0);let t=this._renderer.context.extensions.vertexArrayObject;t&&(e.createVertexArray=()=>t.createVertexArrayOES(),e.bindVertexArray=e=>t.bindVertexArrayOES(e),e.deleteVertexArray=e=>t.deleteVertexArrayOES(e));let r=this._renderer.context.extensions.vertexAttribDivisorANGLE;r&&(e.drawArraysInstanced=(e,t,i,a)=>{r.drawArraysInstancedANGLE(e,t,i,a)},e.drawElementsInstanced=(e,t,i,a,n)=>{r.drawElementsInstancedANGLE(e,t,i,a,n)},e.vertexAttribDivisor=(e,t)=>
1r.vertexAttribDivisorANGLE(e,t)),this._activeGeometry=null,this._activeVao=null}bind(e,t){let r=this.gl;this._activeGeometry=e;let i=this.getVao(e,t);this._activeVao!==i&&(this._activeVao=i,r.bindVertexArray(i)),this.updateBuffers()}resetState(){this.unbind()}updateBuffers(){let e=this._activeGeometry,t=this._renderer.buffer;for(let r=0;r<e.buffers.length;r++){let i=e.buffers[r];t.updateBuffer(i)}e._gcLastUsed=this._renderer.gc.now}checkCompatibility(e,t){let r=e.attributes,i=t._attributeData;for(let e in i)if(!r[e])throw Error(`shader and geometry incompatible, geometry missing the "${e}" attribute`)}getSignature(e,t){let r=e.attributes,i=t._attributeData,a=["g",e.uid];for(let e in r)i[e]&&a.push(e,i[e].location);return a.join("-")}getVao(e,t){return e._gpuData[this._renderer.uid]?.vaoCache[t._key]||this.initGeometryVao(e,t)}initGeometryVao(e,t,r=!0){let i=this._renderer.gl,a=this._renderer.buffer;this._renderer.shader._getProgramData(t),this.checkCompatibility(e,t);let n=this.getSignature(e,t),s=e._gpuData[this._renderer.uid];s||(s=new B,e._gpuData[this._renderer.uid]=s,this._managedGeometries.add(e));let o=s.vaoCache,l=o[n];if(l)return o[t._key]=l,l;(0,T.ensureAttributes)(e,t._attributeData);let u=e.buffers;l=i.createVertexArray(),i.bindVertexArray(l);for(let e=0;e<u.length;e++){let t=u[e];a.bind(t)}return this.activateVao(e,t),o[t._key]=l,o[n]=l,i.bindVertexArray(null),l}onGeometryUnload(e,t=!1){let r=e._gpuData[this._renderer.uid];if(!r)return;let i=r.vaoCache;if(!t)for(let e in i)this._activeVao!==i[e]&&this.resetState(),this.gl.deleteVertexArray(i[e])}destroyAll(e=!1){this._managedGeometries.removeAll(e)}activateVao(e,t){let r=this._renderer.gl,i=this._renderer.buffer,a=e.attributes;e.indexBuffer&&i.bind(e.indexBuffer);let n=null;for(let e in a){let s=a[e],o=s.buffer,l=i.getGlBuffer(o),u=t._attributeData[e];if(u){n!==l&&(i.bind(o),n=l);let e=u.location;r.enableVertexAttribArray(e);let t=(0,E.getAttributeInfoFromFormat)(s.format),a=A(s.format);if(u.format?.substring(1,4)==="int"?r.vertexAttribIPointer(e,t.size,a,s.stride,s.offset):r.vertexAttribPointer(e,t.size,a,t.normalised,s.stride,s.offset),s.instance)if(this.hasInstance){let t=s.divisor??1;r.vertexAttribDivisor(e,t)}else throw Error("geometry error, GPU Instancing is not supported on this device")}}}draw(e,t,r,i){let{gl:a}=this._renderer,n=this._activeGeometry,s=v[e||n.topology];if(i??(i=n.instanceCount),n.indexBuffer){let e=n.indexBuffer.data.BYTES_PER_ELEMENT,o=2===e?a.UNSIGNED_SHORT:a.UNSIGNED_INT;1!==i?a.drawElementsInstanced(s,t||n.indexBuffer.data.length,o,(r||0)*e,i):a.drawElements(s,t||n.indexBuffer.data.length,o,(r||0)*e)}else 1!==i?a.drawArraysInstanced(s,r||0,t||n.vertexCount,i):a.drawArrays(s,r||0,t||n.vertexCount);return this}unbind(){this.gl.bindVertexArray(null),this._activeVao=null,this._activeGeometry=null}destroy(){this._managedGeometries.destroy(),this._renderer=null,this.gl=null,this._activeVao=null,this._activeGeometry=null}}G.extension={type:[s.ExtensionType.WebGLSystem],name:"geometry"},e.s(["GlGeometryGpuData",0,B,"GlGeometrySystem",0,G],333092);var y=e.i(813004),C=e.i(639373),D=e.i(152859),N=e.i(382827),F=e.i(868466);let U=new y.Geometry({attributes:{aPosition:[-1,-1,3,-1,-1,3]}}),I=class e{constructor(e){this.useBackBuffer=!1,this._useBackBufferThisRender=!1,this._renderer=e}init(t={}){let{useBackBuffer:r,antialias:i}={...e.defaultOptions,...t};this.useBackBuffer=r,this._antialias=i,this._renderer.context.supports.msaa||((0,m.warn)("antialiasing, is not supported on when using the back buffer"),this._antialias=!1),this._state=o.State.for2d();let a=new F.GlProgram({vertex:`
2                attribute vec2 aPosition;
3                out vec2 vUv;
4
5                void main() {
6                    gl_Position = vec4(aPosition, 0.0, 1.0);
7
8                    vUv = (aPosition + 1.0) / 2.0;
9
10                    // flip dem UVs
11                    vUv.y = 1.0 - vUv.y;
12                }`,fragment:`
13                in vec2 vUv;
14                out vec4 finalColor;
15
16                uniform sampler2D uTexture;
17
18                void main() {
19                    finalColor = texture(uTexture, vUv);
20                }
20`,name:"big-triangle"});this._bigTriangleShader=new C.Shader({glProgram:a,resources:{uTexture:N.Texture.WHITE.source}})}renderStart(e){let t=this._renderer.renderTarget.getRenderTarget(e.target);if(this._useBackBufferThisRender=this.useBackBuffer&&!!t.isRoot,this._useBackBufferThisRender){let t=this._renderer.renderTarget.getRenderTarget(e.target);this._targetTexture=t.colorTexture,e.target=this._getBackBufferTexture(t.colorTexture)}}renderEnd(){this._presentBackBuffer()}_presentBackBuffer(){let e=this._renderer;e.renderTarget.finishRenderPass(),this._useBackBufferThisRender&&(e.renderTarget.bind({target:this._targetTexture,clear:!1}),this._bigTriangleShader.resources.uTexture=this._backBufferTexture.source,e.encoder.draw({geometry:U,shader:this._bigTriangleShader,state:this._state}))}_getBackBufferTexture(e){return this._backBufferTexture=this._backBufferTexture||new N.Texture({source:new D.TextureSource({width:e.width,height:e.height,resolution:e._resolution,antialias:this._antialias})}),this._backBufferTexture.source.resize(e.width,e.height,e._resolution),this._backBufferTexture}destroy(){this._backBufferTexture&&(this._backBufferTexture.destroy(),this._backBufferTexture=null)}};I.extension={type:[s.ExtensionType.WebGLSystem],name:"backBuffer",priority:1},I.defaultOptions={useBackBuffer:!1},e.s(["GlBackBufferSystem",0,I],741988);class L{constructor(e){this._colorMaskCache=15,this._renderer=e}setMask(e){this._colorMaskCache!==e&&(this._colorMaskCache=e,this._renderer.gl.colorMask(!!(8&e),!!(4&e),!!(2&e),!!(1&e)))}}L.extension={type:[s.ExtensionType.WebGLSystem],name:"colorMask"},e.s(["GlColorMaskSystem",0,L],437160);class M{constructor(e){this.commandFinished=Promise.resolve(),this._renderer=e}setGeometry(e,t){this._renderer.geometry.bind(e,t.glProgram)}finishRenderPass(){}draw(e){let t=this._renderer,{geometry:r,shader:i,state:a,skipSync:n,topology:s,size:o,start:l,instanceCount:u}=e;t.shader.bind(i,n),t.geometry.bind(r,t.shader._activeProgram),a&&t.state.set(a),t.geometry.draw(s,o,l,u??r.instanceCount)}destroy(){this._renderer=null}}M.extension={type:[s.ExtensionType.WebGLSystem],name:"encoder"},e.s(["GlEncoderSystem",0,M],767864);var O=e.i(996055);class P{constructor(e){this._renderer=e}contextChange(){let e=this._renderer.gl;this.maxTextures=e.getParameter(e.MAX_TEXTURE_IMAGE_UNITS),this.maxBatchableTextures=(0,O.checkMaxIfStatementsInShader)(this.maxTextures,e);let t=2===this._renderer.context.webGLVersion;this.maxUniformBindings=t?e.getParameter(e.MAX_UNIFORM_BUFFER_BINDINGS):0}destroy(){}}P.extension={type:[s.ExtensionType.WebGLSystem],name:"limits"},e.s(["GlLimitsSystem",0,P],781693)},228200,e=>{"use strict";e.s(["GlRenderTarget",0,class{constructor(){this.width=-1,this.height=-1,this.msaa=!1,this._attachedMipLevel=0,this._attachedLayer=0,this.msaaRenderBuffer=[]}}])},467673,178080,304899,319383,633143,e=>{"use strict";var t=e.i(116447),r=e.i(841360),i=e.i(547707);class a{constructor(e){this._stencilCache={enabled:!1,stencilReference:0,stencilMode:i.STENCIL_MODES.NONE},this._renderTargetStencilState=Object.create(null),e.renderTarget.onRenderTargetChange.add(this)}contextChange(e){this._gl=e,this._comparisonFuncMapping={always:e.ALWAYS,never:e.NEVER,equal:e.EQUAL,"not-equal":e.NOTEQUAL,less:e.LESS,"less-equal":e.LEQUAL,greater:e.GREATER,"greater-equal":e.GEQUAL},this._stencilOpsMapping={keep:e.KEEP,zero:e.ZERO,replace:e.REPLACE,invert:e.INVERT,"increment-clamp":e.INCR,"decrement-clamp":e.DECR,"increment-wrap":e.INCR_WRAP,"decrement-wrap":e.DECR_WRAP},this.resetState()}onRenderTargetChange(e){if(this._activeRenderTarget===e)return;this._activeRenderTarget=e;let t=this._renderTargetStencilState[e.uid];t||(t=this._renderTargetStencilState[e.uid]={stencilMode:i.STENCIL_MODES.DISABLED,stencilReference:0}),this.setStencilMode(t.stencilMode,t.stencilReference)}resetState(){this._stencilCache.enabled=!1,this._stencilCache.stencilMode=i.STENCIL_MODES.NONE,this._stencilCache.stencilReference=0}setStencilMode(e,t){let a=this._renderTargetStencilState[this._activeRenderTarget.uid],n=this._gl,s=r.GpuStencilModesToPixi[e],o=this._stencilCache;if(a.stencilMode=e,a.stencilReference=t,e===i.STENCIL_MODES.DISABLED){this._stencilCache.enabled&&(this._stencilCache.enabled=!1,n.disable(n.STENCIL_TEST));return}this._stencilCache.enabled||(this._stencilCache.enabled=!0,n.enable(n.STENCIL_TEST)),(e!==o.stencilMode||o.stencilReference!==t)&&(o.stencilMode=e,o.stencilReference=t,n.stencilFunc(this._comparisonFuncMapping[s.stencilBack.compare],t,255),n.stencilOp(n.KEEP,n.KEEP,this._stencilOpsMapping[s.stencilBack.passOp]))}}a.extension={type:[t.ExtensionType.WebGLSystem],name:"stencil"},e.s(["GlStencilSystem",0,a],467673);
20var n=e.i(651264);let s={f32:4,i32:4,"vec2<f32>":8,"vec3<f32>":12,"vec4<f32>":16,"vec2<i32>":8,"vec3<i32>":12,"vec4<i32>":16,u32:4,"vec2<u32>":8,"vec3<u32>":12,"vec4<u32>":16,"mat2x2<f32>":32,"mat3x3<f32>":48,"mat4x4<f32>":64};function o(e){let t=e.map(e=>({data:e,offset:0,size:0})),r=0,i=0;for(let e=0;e<t.length;e++){let a=t[e];if(!(r=s[a.data.type]))throw Error(`Unknown type ${a.data.type}`);a.data.size>1&&(r=Math.max(r,16)*a.data.size);let n=12===r?16:r;a.size=r;let o=i%16;o>0&&16-o<n?i+=(16-o)%16:i+=(r-o%r)%r,a.offset=i,i+=r}return{uboElements:t,size:i=16*Math.ceil(i/16)}}e.s(["WGSL_TO_STD40_SIZE",0,s,"createUboElementsSTD40",0,o],178080);var l=e.i(725049),u=e.i(89238);function _(e,t){let r=Math.max(s[e.data.type]/16,1),i=e.data.value.length/e.data.size,a=(4-i%4)%4,n=e.data.type.indexOf("i32")>=0?"dataInt32":"data";return`
21        v = uv.${e.data.name};
22        offset += ${t};
23
24        arrayOffset = offset;
25
26        t = 0;
27
28        for(var i=0; i < ${e.data.size*r}; i++)
29        {
30            for(var j = 0; j < ${i}; j++)
31            {
32                ${n}[arrayOffset++] = v[t++];
33            }
34            ${0!==a?`arrayOffset += ${a};`:""}
35        }
36    `}function c(e){return(0,l.compileBufferSync)(e,u.uboSyncFunctionsSTD40,_)}e.s(["generateArraySyncSTD40",0,_],304899),e.s(["createUboSyncFunctionSTD40",0,c],319383);class h extends n.UboSystem{constructor(){super({createUboElements:o,generateUboSync:c})}}h.extension={type:[t.ExtensionType.WebGLSystem],name:"ubo"},e.s(["GlUboSystem",0,h],633143)},472344,e=>{"use strict";var t=e.i(116447),r=e.i(170950),i=e.i(671133),a=e.i(985155),n=e.i(185950),s=e.i(385719),o=e.i(309593),l=e.i(372786),u=e.i(167512),_=e.i(333092),c=e.i(741988),h=e.i(437160),d=e.i(767864),f=e.i(781693),m=e.i(467673),g=e.i(633143),E=e.i(493586),T=e.i(924008),p=e.i(705507),R=e.i(874240),x=e.i(467596);let S=[...s.SharedSystems,g.GlUboSystem,c.GlBackBufferSystem,u.GlContextSystem,f.GlLimitsSystem,l.GlBufferSystem,x.GlTextureSystem,E.GlRenderTargetSystem,_.GlGeometrySystem,p.GlUniformGroupSystem,T.GlShaderSystem,d.GlEncoderSystem,R.GlStateSystem,m.GlStencilSystem,h.GlColorMaskSystem],b=[...s.SharedRenderPipes],A=[a.GlBatchAdaptor,i.GlMeshAdaptor,r.GlGraphicsAdaptor],v=[],B=[],G=[];t.extensions.handleByNamedList(t.ExtensionType.WebGLSystem,v),t.extensions.handleByNamedList(t.ExtensionType.WebGLPipes,B),t.extensions.handleByNamedList(t.ExtensionType.WebGLPipesAdaptor,G),t.extensions.add(...S,...b,...A);class y extends n.AbstractRenderer{constructor(){super({name:"webgl",type:o.RendererType.WEBGL,systems:v,renderPipes:B,renderPipeAdaptors:G})}}e.s(["WebGLRenderer",0,y])},493586,615609,591725,706196,314524,562698,145149,311825,608081,479412,258296,528912,640762,924008,774525,546252,705507,476005,874240,504284,321743,871291,117072,995786,e=>{"use strict";var t=e.i(116447),r=e.i(380630),i=e.i(583092),a=e.i(412263),n=e.i(909718),s=e.i(758644),o=e.i(228200);class l{constructor(){this._clearColorCache=[0,0,0,0],this._viewPortCache=new i.Rectangle,this._boundFramebuffer=void 0}init(e,t){this._renderer=e,this._renderTargetSystem=t,e.runners.contextChange.add(this)}contextChange(){this._clearColorCache=[0,0,0,0],this._viewPortCache=new i.Rectangle,this._boundFramebuffer=void 0;let e=this._renderer.gl;this._drawBuffersCache=[];for(let t=1;t<=16;t++)this._drawBuffersCache[t]=Array.from({length:t},(t,r)=>e.COLOR_ATTACHMENT0+r)}copyToTexture(e,t,r,i,a){let n=this._renderTargetSystem,s=this._renderer,o=n.getGpuRenderTarget(e),l=s.gl;return this.finishRenderPass(e),l.bindFramebuffer(l.FRAMEBUFFER,o.resolveTargetFramebuffer),this._boundFramebuffer=o.resolveTargetFramebuffer,s.texture.bind(t,0),l.copyTexSubImage2D(l.TEXTURE_2D,0,a.x,a.y,r.x,r.y,i.width,i.height),t}copyDepthTexture(e,t,r,i,a){let n=this._renderTargetSystem,s=this._renderer.gl;this.finishRenderPass(e);let o=n.getRenderTarget(t),l=n.getGpuRenderTarget(e),u=n.getGpuRenderTarget(o);s.bindFramebuffer(s.READ_FRAMEBUFFER,l.framebuffer),s.bindFramebuffer(s.DRAW_FRAMEBUFFER,u.framebuffer),this._boundFramebuffer=void 0,s.blitFramebuffer(r.x,r.y,r.x+i.width,r.y+i.height,a.x,a.y,a.x+i.width,a.y+i.height,s.DEPTH_BUFFER_BIT,s.NEAREST)}startRenderPass(e,t=!0,r,i,a=0,n=0){let s=this._renderTargetSystem.getGpuRenderTarget(e);if(0!==n&&this._renderer.context.webGLVersion<2)throw Error("[RenderTargetSystem] Rendering to array layers requires WebGL2.");if(a>0){if(s.msaa)throw Error("[RenderTargetSystem] Rendering to mip levels is not supported with MSAA render targets.");if(this._renderer.context.webGLVersion<2)throw Error("[RenderTargetSystem] Rendering to mip levels requires WebGL2.")}
36e.colorAttachments.forEach(e=>{this._renderer.texture.unbind(e.texture)});let o=this._renderer.gl;this.bindFramebuffer(s.framebuffer),!e.isRoot&&e.colorAttachments.length>0&&(s._attachedMipLevel!==a||s._attachedLayer!==n)&&(e.colorAttachments.forEach((e,t)=>{let r=e.texture,i=this._renderer.texture.getGlSource(r);if(i.target===o.TEXTURE_2D){if(0!==n)throw Error("[RenderTargetSystem] layer must be 0 when rendering to 2D textures in WebGL.");o.framebufferTexture2D(o.FRAMEBUFFER,o.COLOR_ATTACHMENT0+t,o.TEXTURE_2D,i.texture,a)}else if(i.target===o.TEXTURE_2D_ARRAY){if(this._renderer.context.webGLVersion<2)throw Error("[RenderTargetSystem] Rendering to 2D array textures requires WebGL2.");o.framebufferTextureLayer(o.FRAMEBUFFER,o.COLOR_ATTACHMENT0+t,i.texture,a,n)}else if(i.target===o.TEXTURE_CUBE_MAP){if(n<0||n>5)throw Error("[RenderTargetSystem] Cube map layer must be between 0 and 5.");o.framebufferTexture2D(o.FRAMEBUFFER,o.COLOR_ATTACHMENT0+t,o.TEXTURE_CUBE_MAP_POSITIVE_X+n,i.texture,a)}else throw Error("[RenderTargetSystem] Unsupported texture target for render-to-layer in WebGL.")}),s._attachedMipLevel=a,s._attachedLayer=n),s.framebuffer&&(e.depthStencilAttachment?this._attachDepthStencilTexture(e,a,n):!s.depthStencilRenderBuffer&&(e.stencil||e.depth)&&this._initStencil(s)),e.colorAttachments.length>1&&this._setDrawBuffers(e,o);let l=i.y;e.isRoot&&(l=e.pixelHeight-i.height-i.y);let u=this._viewPortCache;(u.x!==i.x||u.y!==l||u.width!==i.width||u.height!==i.height)&&(u.x=i.x,u.y=l,u.width=i.width,u.height=i.height,o.viewport(i.x,l,i.width,i.height)),this.clear(e,t,r)}finishRenderPass(e){let t=this._renderTargetSystem.getGpuRenderTarget(e);if(!t.msaa||0===e.colorAttachments.length)return;let r=this._renderer.gl;r.bindFramebuffer(r.FRAMEBUFFER,t.resolveTargetFramebuffer),r.bindFramebuffer(r.READ_FRAMEBUFFER,t.framebuffer),r.blitFramebuffer(0,0,t.width,t.height,0,0,t.width,t.height,r.COLOR_BUFFER_BIT,r.NEAREST),r.bindFramebuffer(r.FRAMEBUFFER,t.framebuffer),this._boundFramebuffer=t.framebuffer}initGpuRenderTarget(e){let t=this._renderer.gl,r=new o.GlRenderTarget;r._attachedMipLevel=0,r._attachedLayer=0;let i=e.colorTexture;return i instanceof n.CanvasSource?(this._renderer.context.ensureCanvasSize(i.resource),r.framebuffer=null):(r.width=e.pixelWidth,r.height=e.pixelHeight,0===e.colorAttachments.length?this._initDepth(e,r):this._initColor(e,r),e.depthStencilAttachment&&this._attachDepthStencilTexture(e,0,0),t.bindFramebuffer(t.FRAMEBUFFER,null),this._boundFramebuffer=null),r}destroyGpuRenderTarget(e){let t=this._renderer.gl;e.framebuffer&&(t.deleteFramebuffer(e.framebuffer),e.framebuffer=null),e.resolveTargetFramebuffer&&(t.deleteFramebuffer(e.resolveTargetFramebuffer),e.resolveTargetFramebuffer=null),e.depthStencilRenderBuffer&&(t.deleteRenderbuffer(e.depthStencilRenderBuffer),e.depthStencilRenderBuffer=null),e.msaaRenderBuffer.forEach(e=>{t.deleteRenderbuffer(e)}),e.msaaRenderBuffer=null}clear(e,t,r,i,a=0,n=0){if(!t)return;if(0!==n)throw Error("[RenderTargetSystem] Clearing array layers is not supported in WebGL renderer.");let o=this._renderTargetSystem;if("boolean"==typeof t&&(t=t?s.CLEAR.ALL:s.CLEAR.NONE),0===e.colorAttachments.length&&!(t&=~s.CLEAR.COLOR))return;let l=this._renderer.gl,u=!!(t&s.CLEAR.DEPTH)&&!this._renderer.state.depthMaskEnabled;if(t&s.CLEAR.COLOR){r??(r=o.defaultClearColor);let e=this._clearColorCache,t=r;(e[0]!==t[0]||e[1]!==t[1]||e[2]!==t[2]||e[3]!==t[3])&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],l.clearColor(t[0],t[1],t[2],t[3]))}u&&l.depthMask(!0),l.clear(t),u&&l.depthMask(!1)}resizeGpuRenderTarget(e){if(e.isRoot)return;let t=this._renderTargetSystem.getGpuRenderTarget(e);t.width=e.pixelWidth,t.height=e.pixelHeight,e.colorAttachments.length>0&&this._resizeColor(e,t),t.depthStencilRenderBuffer&&this._resizeStencil(t),this._boundFramebuffer=void 0}_initColor(e,t){let r=this._renderer,i=r.gl,n=i.createFramebuffer();if(t.resolveTargetFramebuffer=n,i.bindFramebuffer(i.FRAMEBUFFER,n),e.colorAttachments.forEach((e,n)=>{let s=e.texture;s.antialias&&(r.context.supports.msaa?t.msaa=!0:(0,a.warn)("[RenderTexture] Antialiasing on textures is not supported in WebGL1")),r.texture.bindSource(s,0);let o=r.texture.getGlSource(s),l=o.texture;if(o.target===i.TEXTURE_2D)i.framebufferTexture2D(i.FRAMEBUFFER,i.COLOR_ATTACHMENT0+n,i.TEXTURE_2D,l,0);else if(o.target===i.TEXTURE_2D_ARRAY){if(r.context.webGLVersion<2)throw Error("[RenderTargetSystem] TEXTURE_2D_ARRAY requires WebGL2.");i.framebufferTextureLayer(i.FRAMEBUFFER,i.COLOR_ATTACHMENT0+n,l,0,0)}else if(o.target===i.TEXTURE_CUBE_MAP)i.framebufferTexture2D(i.FRAMEBUFFER,i.COLOR_ATTACHMENT0+n,i.TEXTURE_CUBE_MAP_POSITIVE_X,l,0);else throw Error("[RenderTargetSystem] Unsupported texture target for framebuffer attachment.")}),t.msaa){let r=i.createFramebuffer();t.framebuffer=r,i.bindFramebuffer(i.FRAMEBUFFER,r),e.colorAttachments.forEac
36h((e,r)=>{let a=i.createRenderbuffer();t.msaaRenderBuffer[r]=a})}else t.framebuffer=n;this._resizeColor(e,t)}_initDepth(e,t){let r=this._renderer;if(r.context.webGLVersion<2)throw Error("[RenderTargetSystem] Depth-only render targets require WebGL2.");let i=r.gl,a=i.createFramebuffer();t.resolveTargetFramebuffer=a,t.framebuffer=a,i.bindFramebuffer(i.FRAMEBUFFER,a),i.drawBuffers([i.NONE]),i.readBuffer(i.NONE)}_resizeColor(e,t){let r=e.colorAttachments[0].texture;if(t._attachedMipLevel=0,t._attachedLayer=0,e.colorAttachments.forEach((e,t)=>{0!==t&&e.texture.resize(r.width,r.height,r._resolution)}),t.msaa){let r=this._renderer,i=r.gl,a=t.framebuffer;i.bindFramebuffer(i.FRAMEBUFFER,a),e.colorAttachments.forEach((e,a)=>{let n=e.texture;r.texture.bindSource(n,0);let s=r.texture.getGlSource(n).internalFormat,o=t.msaaRenderBuffer[a];i.bindRenderbuffer(i.RENDERBUFFER,o),i.renderbufferStorageMultisample(i.RENDERBUFFER,4,s,n.pixelWidth,n.pixelHeight),i.framebufferRenderbuffer(i.FRAMEBUFFER,i.COLOR_ATTACHMENT0+a,i.RENDERBUFFER,o)})}}_attachDepthStencilTexture(e,t,r){let i,a=this._renderer,n=a.gl,s=e.depthStencilAttachment.texture,o=a.texture.getGlSource(s),l=o.texture,u=s.format;i="depth24plus-stencil8"===u||"depth32float-stencil8"===u?n.DEPTH_STENCIL_ATTACHMENT:"stencil8"===u?n.STENCIL_ATTACHMENT:n.DEPTH_ATTACHMENT,o.target===n.TEXTURE_2D?n.framebufferTexture2D(n.FRAMEBUFFER,i,n.TEXTURE_2D,l,t):o.target===n.TEXTURE_2D_ARRAY?n.framebufferTextureLayer(n.FRAMEBUFFER,i,l,t,r):o.target===n.TEXTURE_CUBE_MAP&&n.framebufferTexture2D(n.FRAMEBUFFER,i,n.TEXTURE_CUBE_MAP_POSITIVE_X+r,l,t)}_initStencil(e){if(null===e.framebuffer)return;let t=this._renderer.gl,r=t.createRenderbuffer();e.depthStencilRenderBuffer=r,t.bindRenderbuffer(t.RENDERBUFFER,r),t.framebufferRenderbuffer(t.FRAMEBUFFER,t.DEPTH_STENCIL_ATTACHMENT,t.RENDERBUFFER,r),this._resizeStencil(e)}_resizeStencil(e){let t=this._renderer.gl;t.bindRenderbuffer(t.RENDERBUFFER,e.depthStencilRenderBuffer),e.msaa?t.renderbufferStorageMultisample(t.RENDERBUFFER,4,t.DEPTH24_STENCIL8,e.width,e.height):t.renderbufferStorage(t.RENDERBUFFER,2===this._renderer.context.webGLVersion?t.DEPTH24_STENCIL8:t.DEPTH_STENCIL,e.width,e.height)}prerender(e){if(0===e.colorAttachments.length)return;let t=e.colorAttachments[0].texture.resource;this._renderer.context.multiView&&n.CanvasSource.test(t)&&this._renderer.context.ensureCanvasSize(t)}postrender(e){if(!this._renderer.context.multiView||0===e.colorAttachments.length)return;let t=e.colorAttachments[0].texture;if(n.CanvasSource.test(t.resource)){let e=this._renderer.context.canvas;t.context2D.drawImage(e,0,t.pixelHeight-e.height)}}_setDrawBuffers(e,t){let r=e.colorAttachments.length,i=this._drawBuffersCache[r];if(1===this._renderer.context.webGLVersion){let e=this._renderer.context.extensions.drawBuffers;e?e.drawBuffersWEBGL(i):(0,a.warn)("[RenderTexture] This WebGL1 context does not support rendering to multiple targets")}else t.drawBuffers(i)}resetState(){this._boundFramebuffer=void 0,this._viewPortCache=new i.Rectangle,this._clearColorCache=[0,0,0,0]}bindFramebuffer(e){this._boundFramebuffer!==e&&(this._boundFramebuffer=e,this._renderer.gl.bindFramebuffer(this._renderer.gl.FRAMEBUFFER,e))}}e.s(["GlRenderTargetAdaptor",0,l],615609);class u extends r.RenderTargetSystem{constructor(e){super(e),this.adaptor=new l,this.adaptor.init(e,this)}resetState(){this.adaptor.resetState()}}u.extension={type:[t.ExtensionType.WebGLSystem],name:"renderTarget"},e.s(["GlRenderTargetSystem",0,u],493586);var _=e.i(904223),c=e.i(543890),h=e.i(152859),d=e.i(329723),f=e.i(906021);class m extends d.default{constructor(e,t){super(),this._resourceType="textureView",this._resourceId=(0,f.uid)("resource"),this._touched=0,this.source=e,this.viewDescriptor=t,this._onChange=this._onChange.bind(this),this._onDestroy=this._onDestroy.bind(this),this.source.on("change",this._onChange),this.source.on("destroy",this._onDestroy)}_onChange(){this.emit("change",this)}_onDestroy(){this.destroy()}get destroyed(){return this.source.destroyed}destroy(){this.source&&(this.source.off("change",this._onChange),this.source.off("destroy",this._onDestroy)),this.emit
36("destroy",this),this.removeAllListeners()}}function g(e,t){let r=[],i=[`
37        var g = s.groups;
38        var sS = r.shader;
39        var p = s.glProgram;
40        var ugS = r.uniformGroup;
41        var resources;
42    `],a=!1,n=0,s=t._getProgramData(e.glProgram);for(let o in e.groups){let l=e.groups[o];for(let u in r.push(`
43            resources = g[${o}].resources;
44        `),l.resources){let d=l.resources[u];if(d instanceof c.UniformGroup)if(d.ubo){let t=e._uniformBindMap[o][Number(u)];r.push(`
45                        sS.bindUniformBlock(
46                            resources[${u}],
47                            '${t}',
48                            ${e.glProgram._uniformBlockData[t].index}
49                        );
50                    `)}else r.push(`
51                        ugS.updateUniformGroup(resources[${u}], p, sD);
52                    `);else if(d instanceof _.BufferResource){let t=e._uniformBindMap[o][Number(u)];r.push(`
53                    sS.bindUniformBlock(
54                        resources[${u}],
55                        '${t}',
56                        ${e.glProgram._uniformBlockData[t].index}
57                    );
58                `)}else if(d instanceof h.TextureSource||d instanceof m){let l=e._uniformBindMap[o][u],_=s.uniformData[l];_&&(a||(a=!0,i.push(`
59                        var tS = r.texture;
60                        `)),t._gl.uniform1i(_.location,n),r.push(`
61                        tS.bind(resources[${u}], ${n});
62                    `),n++)}}}return Function("r","s","sD",[...i,...r].join("\n"))}e.s(["TextureView",0,m],591725),e.s(["generateShaderSyncCode",0,g],706196);class E{constructor(e,t){this.program=e,this.uniformData=t,this.uniformGroups={},this.uniformDirtyGroups={},this.uniformBlockBindings={}}destroy(){this.uniformData=null,this.uniformGroups=null,this.uniformDirtyGroups=null,this.uniformBlockBindings=null,this.program=null}}function T(e,t,r){let i=e.createShader(t);return e.shaderSource(i,r),e.compileShader(i),i}function p(e){let t=Array(e);for(let e=0;e<t.length;e++)t[e]=!1;return t}function R(e,t){switch(e){case"float":case"int":case"uint":case"sampler2D":case"sampler2DArray":return 0;case"vec2":return new Float32Array(2*t);case"vec3":return new Float32Array(3*t);case"vec4":return new Float32Array(4*t);case"ivec2":return new Int32Array(2*t);case"ivec3":return new Int32Array(3*t);case"ivec4":return new Int32Array(4*t);case"uvec2":return new Uint32Array(2*t);case"uvec3":return new Uint32Array(3*t);case"uvec4":return new Uint32Array(4*t);case"bool":return!1;case"bvec2":return p(2*t);case"bvec3":return p(3*t);case"bvec4":return p(4*t);case"mat2":return new Float32Array([1,0,0,1]);case"mat3":return new Float32Array([1,0,0,0,1,0,0,0,1]);case"mat4":return new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])}return null}e.s(["GlProgramData",0,E,"IGLUniformData",0,class{}],314524),e.s(["compileShader",0,T],562698),e.s(["defaultValue",0,R],145149);var x=e.i(354402);let S=null,b={FLOAT:"float",FLOAT_VEC2:"vec2",FLOAT_VEC3:"vec3",FLOAT_VEC4:"vec4",INT:"int",INT_VEC2:"ivec2",INT_VEC3:"ivec3",INT_VEC4:"ivec4",UNSIGNED_INT:"uint",UNSIGNED_INT_VEC2:"uvec2",UNSIGNED_INT_VEC3:"uvec3",UNSIGNED_INT_VEC4:"uvec4",BOOL:"bool",BOOL_VEC2:"bvec2",BOOL_VEC3:"bvec3",BOOL_VEC4:"bvec4",FLOAT_MAT2:"mat2",FLOAT_MAT3:"mat3",FLOAT_MAT4:"mat4",SAMPLER_2D:"sampler2D",INT_SAMPLER_2D:"sampler2D",UNSIGNED_INT_SAMPLER_2D:"sampler2D",SAMPLER_2D_SHADOW:"sampler2DShadow",SAMPLER_CUBE:"samplerCube",INT_SAMPLER_CUBE:"samplerCube",UNSIGNED_INT_SAMPLER_CUBE:"samplerCube",SAMPLER_CUBE_SHADOW:"samplerCubeShadow",SAMPLER_2D_ARRAY:"sampler2DArray",INT_SAMPLER_2D_ARRAY:"sampler2DArray",UNSIGNED_INT_SAMPLER_2D_ARRAY:"sampler2DArray",SAMPLER_2D_ARRAY_SHADOW:"sampler2DArrayShadow"},A={float:"float32",vec2:"float32x2",vec3:"float32x3",vec4:"float32x4",int:"sint32",ivec2:"sint32x2",ivec3:"sint32x3",ivec4:"sint32x4",uint:"uint32",uvec2:"uint32x2",uvec3:"uint32x3",uvec4:"uint32x4",bool:"uint32",bvec2:"uint32x2",bvec3:"uint32x3",bvec4:"uint32x4"};function v(e,t){if(!S){let t=Object.keys(b);S={};for(let r=0;r<t.length;++r){let i=t[r];S[e[i]]=b[i]}}return S[t]}function B(e,t){return A[v(e,t)]||"float32"}function G(e,t,r=!1){let i={},a=t.getProgramParameter(e,t.ACTIVE_ATTRIBUTES);for(let r=0;r<a;r++){let a=t.getActiveAttrib(e,r);if(a.name.startsWith("gl_"))continue;let n=B(t,a.type);i[a.name]={location:0,format:n,stride:(0,x.getAttributeInfoFromFormat)(n).stride,offset:0,instance:!1,start:0}}let n=Object.keys(i);if(r){n.sort((e,t)=>
62e>t?1:-1);for(let r=0;r<n.length;r++)i[n[r]].location=r,t.bindAttribLocation(e,r,n[r]);t.linkProgram(e)}else for(let r=0;r<n.length;r++)i[n[r]].location=t.getAttribLocation(e,n[r]);return i}function y(e,t){if(!t.ACTIVE_UNIFORM_BLOCKS)return{};let r={},i=t.getProgramParameter(e,t.ACTIVE_UNIFORM_BLOCKS);for(let a=0;a<i;a++){let i=t.getActiveUniformBlockName(e,a),n=t.getUniformBlockIndex(e,i),s=t.getActiveUniformBlockParameter(e,a,t.UNIFORM_BLOCK_DATA_SIZE);r[i]={name:i,index:n,size:s}}return r}function C(e,t){let r={},i=t.getProgramParameter(e,t.ACTIVE_UNIFORMS);for(let a=0;a<i;a++){let i=t.getActiveUniform(e,a),n=i.name.replace(/\[.*?\]$/,""),s=!!i.name.match(/\[.*?\]$/),o=v(t,i.type);r[n]={name:n,index:a,type:o,size:i.size,isArray:s,value:R(o,i.size)}}return r}function D(e,t){let r=e.getShaderSource(t);if(null===r)return void console.error("PixiJS Error: Could not retrieve shader source (WebGL context may be lost).");let i=r.split("\n").map((e,t)=>`${t}: ${e}`),a=e.getShaderInfoLog(t)??"",n=a.split("\n"),s={},o=n.map(e=>parseFloat(e.replace(/^ERROR\: 0\:([\d]+)\:.*$/,"$1"))).filter(e=>!!e&&!s[e]&&(s[e]=!0,!0)),l=[""];o.forEach(e=>{i[e-1]=`%c${i[e-1]}%c`,l.push("background: #FF0000; color:#FFFFFF; font-size: 10px","font-size: 10px")});let u=i.join("\n");l[0]=u,console.error(a),console.groupCollapsed("click to view full shader code"),console.warn(...l),console.groupEnd()}function N(e,t,r,i){e.getProgramParameter(t,e.LINK_STATUS)||(e.getShaderParameter(r,e.COMPILE_STATUS)||D(e,r),e.getShaderParameter(i,e.COMPILE_STATUS)||D(e,i),console.error("PixiJS Error: Could not initialize shader."),""!==e.getProgramInfoLog(t)&&console.warn("PixiJS Warning: gl.getProgramInfoLog()",e.getProgramInfoLog(t)))}function F(e,t){let r=T(e,e.VERTEX_SHADER,t.vertex),i=T(e,e.FRAGMENT_SHADER,t.fragment),n=e.createProgram();e.attachShader(n,r),e.attachShader(n,i);let s=t.transformFeedbackVaryings;s&&("function"!=typeof e.transformFeedbackVaryings?(0,a.warn)("TransformFeedback is not supported but TransformFeedbackVaryings are given."):e.transformFeedbackVaryings(n,s.names,"separate"===s.bufferMode?e.SEPARATE_ATTRIBS:e.INTERLEAVED_ATTRIBS)),e.linkProgram(n),e.getProgramParameter(n,e.LINK_STATUS)||N(e,n,r,i),t._attributeData=G(n,e,!/^[ \t]*#[ \t]*version[ \t]+300[ \t]+es[ \t]*$/m.test(t.vertex)),t._uniformData=C(n,e),t._uniformBlockData=y(n,e),e.deleteShader(r),e.deleteShader(i);let o={};for(let r in t._uniformData){let i=t._uniformData[r];o[r]={location:e.getUniformLocation(n,r),value:R(i.type,i.size)}}return new E(n,o)}e.s(["mapGlToVertexFormat",0,B,"mapType",0,v],311825),e.s(["extractAttributesFromGlProgram",0,G],608081),e.s(["getUboData",0,y],479412),e.s(["getUniformData",0,C],258296),e.s(["logProgramError",0,N],528912),e.s(["generateProgram",0,F],640762);let U={textureCount:0,blockIndex:0};class I{constructor(e){this._activeProgram=null,this._programDataHash=Object.create(null),this._shaderSyncFunctions=Object.create(null),this._renderer=e}contextChange(e){this._gl=e,this._programDataHash=Object.create(null),this._shaderSyncFunctions=Object.create(null),this._activeProgram=null}bind(e,t){if(this._setProgram(e.glProgram),t)return;U.textureCount=0,U.blockIndex=0;let r=this._shaderSyncFunctions[e.glProgram._key];r||(r=this._shaderSyncFunctions[e.glProgram._key]=this._generateShaderSync(e,this)),this._renderer.buffer.nextBindBase(!!e.glProgram.transformFeedbackVaryings),r(this._renderer,e,U)}updateUniformGroup(e){this._renderer.uniformGroup.updateUniformGroup(e,this._activeProgram,U)}bindUniformBlock(e,t,r=0){let i=this._renderer.buffer,a=this._getProgramData(this._activeProgram),n=e._bufferResource;n||this._renderer.ubo.updateUniformGroup(e);let s=e.buffer,o=i.updateBuffer(s),l=i.freeLocationForBufferBase(o);if(n){let{offset:t,size:r}=e;0===t&&r===s.data.byteLength?i.bindBufferBase(o,l):i.bindBufferRange(o,l,t)}else i.getLastBindBaseLocation(o)!==l&&i.bindBufferBase(o,l);let u=this._activeProgram._uniformBlockData[t].index;a.uniformBlockBindings[r]!==l&&(a.uniformBlockBindings[r]=l,this._renderer.gl.uniformBlockBinding(a.program,u,l))}_setProgram(e){if(this._activeProgram===e)return;this._activeProgram=e;let t=this._getProgramData(e);this._gl.useProgram(t.program)}_getProgramData(e){return this._programDataHash[e._key]||this._createProgramData(e)}_createProgramData(e){let t=e._key;return this._programDataHash[t]=F(this._gl,e),this._programDataHash[t]}destroy(){for(let e of Object.keys(this._programDataHash))this._programDataHash[e].destroy();this._programDataHash=null,this._shaderSyncFunctions=null,this._activeProgram=null,this._renderer=null,this._gl=null}_generateShaderSync(e,t){return g(e,t)}resetState(){this._activeProgram=null}}I.extension={type:[t.ExtensionType.WebGLSystem],name:"shader"},e.s(["GlShaderSystem",0,I],924008);var L=e.i(7985);let M={f32:`if (cv !== v) {
63            cu.value = v;
64            gl.uniform1f(location, v);
65        }`,"vec2<f32>":`if (cv[0] !== v[0] || cv[1] !== v[1]) {
66            cv[0] = v[0];
67            cv[1] = v[1];
68            gl.uniform2f(location, v[0], v[1]);
69        }`,"vec3<f32>":`if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2]) {
70            cv[0] = v[0];
71            cv[1] = v[1];
72            cv[2] = v[2];
73            gl.uniform3f(location, v[0], v[1], v[2]);
74        }`,"vec4<f32>":`if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2] || cv[3] !== v[3]) {
75            cv[0] = v[0];
76            cv[1] = v[1];
77            cv[2] = v[2];
78            cv[3] = v[3];
79            gl.uniform4f(location, v[0], v[1], v[2], v[3]);
80        }`,i32:`if (cv !== v) {
81            cu.value = v;
82            gl.uniform1i(location, v);
83        }`,"vec2<i32>":`if (cv[0] !== v[0] || cv[1] !== v[1]) {
84            cv[0] = v[0];
85            cv[1] = v[1];
86            gl.uniform2i(location, v[0], v[1]);
87        }`,"vec3<i32>":`if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2]) {
88            cv[0] = v[0];
89            cv[1] = v[1];
90            cv[2] = v[2];
91            gl.uniform3i(location, v[0], v[1], v[2]);
92        }`,"vec4<i32>":`if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2] || cv[3] !== v[3]) {
93            cv[0] = v[0];
94            cv[1] = v[1];
95            cv[2] = v[2];
96            cv[3] = v[3];
97            gl.uniform4i(location, v[0], v[1], v[2], v[3]);
98        }`,u32:`if (cv !== v) {
99            cu.value = v;
100            gl.uniform1ui(location, v);
101        }`,"vec2<u32>":`if (cv[0] !== v[0] || cv[1] !== v[1]) {
102            cv[0] = v[0];
103            cv[1] = v[1];
104            gl.uniform2ui(location, v[0], v[1]);
105        }`,"vec3<u32>":`if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2]) {
106            cv[0] = v[0];
107            cv[1] = v[1];
108            cv[2] = v[2];
109            gl.uniform3ui(location, v[0], v[1], v[2]);
110        }`,"vec4<u32>":`if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2] || cv[3] !== v[3]) {
111            cv[0] = v[0];
112            cv[1] = v[1];
113            cv[2] = v[2];
114            cv[3] = v[3];
115            gl.uniform4ui(location, v[0], v[1], v[2], v[3]);
116        }`,bool:`if (cv !== v) {
117            cu.value = v;
118            gl.uniform1i(location, v);
119        }`,"vec2<bool>":`if (cv[0] !== v[0] || cv[1] !== v[1]) {
120            cv[0] = v[0];
121            cv[1] = v[1];
122            gl.uniform2i(location, v[0], v[1]);
123        }`,"vec3<bool>":`if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2]) {
124            cv[0] = v[0];
125            cv[1] = v[1];
126            cv[2] = v[2];
127            gl.uniform3i(location, v[0], v[1], v[2]);
128        }`,"vec4<bool>":`if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2] || cv[3] !== v[3]) {
129            cv[0] = v[0];
130            cv[1] = v[1];
131            cv[2] = v[2];
132            cv[3] = v[3];
133            gl.uniform4i(location, v[0], v[1], v[2], v[3]);
134        }`,"mat2x2<f32>":"gl.uniformMatrix2fv(location, false, v);","mat3x3<f32>":"gl.uniformMatrix3fv(location, false, v);","mat4x4<f32>":"gl.uniformMatrix4fv(location, false, v);"},O={f32:"gl.uniform1fv(location, v);","vec2<f32>":"gl.uniform2fv(location, v);","vec3<f32>":"gl.uniform3fv(location, v);","vec4<f32>":"gl.uniform4fv(location, v);","mat2x2<f32>":"gl.uniformMatrix2fv(location, false, v);","mat3x3<f32>":"gl.uniformMatrix3fv(location, false, v);","mat4x4<f32>":"gl.uniformMatrix4fv(location, false, v);",i32:"gl.uniform1iv(location, v);","vec2<i32>":"gl.uniform2iv(location, v);","vec3<i32>":"gl.uniform3iv(location, v);","vec4<i32>":"gl.uniform4iv(location, v);",u32:"gl.uniform1iv(location, v);","vec2<u32>":"gl.uniform2iv(location, v);","vec3<u32>":"gl.uniform3iv(location, v);","vec4<u32>":"gl.uniform4iv(location, v);",bool:"gl.uniform1iv(location, v);","vec2<bool>":"gl.uniform2iv(location, v);","vec3<bool>":"gl.uniform3iv(location, v);","vec4<bool>":"gl.uniform4iv(location, v);"};function P(e,t){let r=[`
135        var v = null;
136        var cv = null;
137        var cu = null;
138        var t = 0;
139        var gl = renderer.gl;
140        var name = null;
141    `];for(let i in e.uniforms){if(!t[i]){e.uniforms[i]instanceof c.UniformGroup?e.uniforms[i].ubo?r.push(`
142                        renderer.shader.bindUniformBlock(uv.${i}, "${i}");
143                    `):r.push(`
144                        renderer.shader.updateUniformGroup(uv.${i});
145                    `):e.uniforms[i]instanceof _.BufferResource&&r.push(`
146                        renderer.shader.bindBufferResource(uv.${i}, "${i}");
147                    `);continue}let a=e.uniformStructures[i],n=!1;for(let e=0;e<L.uniformParsers.length;e++){let t=L.uniformParsers[e];if(a.type===t.type&&t.test(a)){r.push(`name = "${i}";`,L.uniformParsers[e].uniform),n=!0;break}}if(!n){let e=(1===a.size?M:O)[a.type].replace("location",`ud["${i}"].location`);r.push(`
148            cu = ud["${i}"];
149            cv = cu.value;
150            v = uv["${i}"];
151            ${e};`)}}return Function("ud","uv","renderer","syncData",r.join("\n"))}e.s(["UNIFORM_TO_ARRAY_SETTERS",0,O,"UNIFORM_TO_SINGLE_SETTERS",0,M],774525),e.s(["generateUniformsSync",0,P],546252);class w{constructor(e){this._cache={},this._uniformGroupSyncHash={},this._renderer=e,this.gl=null,this._cache={}}contextChange(e){this.gl=e}updateUniformGroup(e,t,r){let i=this._renderer.shader._getProgramData(t);e.isStatic&&e._dirtyId===i.uniformDirtyGroups[e.uid]||(i.uniformDirtyGroups[e.uid]=e._dirtyId,this._getUniformSyncFunction(e,t)(i.uniformData,e.uniforms,this._renderer,r))}_getUniformSyncFunction(e,t){return this._uniformGroupSyncHash[e._signature]?.[t._key]||this._createUniformSyncFunction(e,t)}_createUniformSyncFunction(e,t){let r=this._uniformGroupSyncHash[e._signature]||(this._uniformGroupSyncHash[e._signature]={}),i=this._getSignature(e,t._uniformData,"u");return this._cache[i]||(this._cache[i]=this._generateUniformsSync(e,t._uniformData)),r[t._key]=this._cache[i],r[t._key]}_generateUniformsSync(e,t){return P(e,t)}_getSignature(e,t,r){let i=e.uniforms,a=[`${r}-`];for(let e in i)a.push(e),t[e]&&a.push(t[e].type);return a.join("-")}destroy(){this._renderer=null,this._cache=null}}w.extension={type:[t.ExtensionType.WebGLSystem],name:"uniformGroup"},e.s(["GlUniformGroupSystem",0,w],705507);var H=e.i(964850),X=e.i(72145);function V(e){let t={};if(t.normal=[e.ONE,e.ONE_MINUS_SRC_ALPHA],t.add=[e.ONE,e.ONE],t.multiply=[e.DST_COLOR,e.ONE_MINUS_SRC_ALPHA,e.ONE,e.ONE_MINUS_SRC_ALPHA],t.screen=[e.ONE,e.ONE_MINUS_SRC_COLOR,e.ONE,e.ONE_MINUS_SRC_ALPHA],t.none=[0,0],t["normal-npm"]=[e.SRC_ALPHA,e.ONE_MINUS_SRC_ALPHA,e.ONE,e.ONE_MINUS_SRC_ALPHA],t["add-npm"]=[e.SRC_ALPHA,e.ONE,e.ONE,e.ONE],t["screen-npm"]=[e.SRC_ALPHA,e.ONE_MINUS_SRC_COLOR,e.ONE,e.ONE_MINUS_SRC_ALPHA],t.erase
151=[e.ZERO,e.ONE_MINUS_SRC_ALPHA],e instanceof X.DOMAdapter.get().getWebGLRenderingContext()){let r=e.getExtension("EXT_blend_minmax");r&&(t.min=[e.ONE,e.ONE,e.ONE,e.ONE,r.MIN_EXT,r.MIN_EXT],t.max=[e.ONE,e.ONE,e.ONE,e.ONE,r.MAX_EXT,r.MAX_EXT])}else t.min=[e.ONE,e.ONE,e.ONE,e.ONE,e.MIN,e.MIN],t.max=[e.ONE,e.ONE,e.ONE,e.ONE,e.MAX,e.MAX];return t}e.s(["mapWebGLBlendModesToPixi",0,V],476005);let{BLEND:k,OFFSET:W,CULLING:Y,DEPTH_TEST:K,WINDING:j,DEPTH_MASK:$}=H.STATE_BITS,z=class e{constructor(e){this._invertFrontFace=!1,this.gl=null,this.stateId=0,this.polygonOffset=0,this.blendMode="none",this._blendEq=!1,this.map=[],this.map[k]=this.setBlend,this.map[W]=this.setOffset,this.map[Y]=this.setCullFace,this.map[K]=this.setDepthTest,this.map[j]=this.setFrontFace,this.map[$]=this.setDepthMask,this.checks=[],this.defaultState=H.State.for2d(),e.renderTarget.onRenderTargetChange.add(this)}onRenderTargetChange(e){this._invertFrontFace=!e.isRoot!=!!e.flipY,this._cullFace?this.setFrontFace(this._frontFace):this._frontFaceDirty=!0}contextChange(e){this.gl=e,this.blendModesMap=V(e),this.resetState()}set(e){if(e||(e=this.defaultState),this.stateId!==e.data){let t=this.stateId^e.data,r=0;for(;t;)1&t&&this.map[r].call(this,!!(e.data&1<<r)),t>>=1,r++;this.stateId=e.data}for(let t=0;t<this.checks.length;t++)this.checks[t](this,e)}forceState(e){e||(e=this.defaultState);for(let t=0;t<this.map.length;t++)this.map[t].call(this,!!(e.data&1<<t));for(let t=0;t<this.checks.length;t++)this.checks[t](this,e);this.stateId=e.data}setBlend(t){this._updateCheck(e._checkBlendMode,t),this.gl[t?"enable":"disable"](this.gl.BLEND)}setOffset(t){this._updateCheck(e._checkPolygonOffset,t),this.gl[t?"enable":"disable"](this.gl.POLYGON_OFFSET_FILL)}setDepthTest(e){this.gl[e?"enable":"disable"](this.gl.DEPTH_TEST)}setDepthMask(e){this.gl.depthMask(e)}get depthMaskEnabled(){return!!(this.stateId&1<<$)}setCullFace(e){this._cullFace=e,this.gl[e?"enable":"disable"](this.gl.CULL_FACE),this._cullFace&&this._frontFaceDirty&&this.setFrontFace(this._frontFace)}setFrontFace(e){this._frontFace=e,this._frontFaceDirty=!1;let t=this._invertFrontFace?!e:e;this._glFrontFace!==t&&(this._glFrontFace=t,this.gl.frontFace(this.gl[t?"CW":"CCW"]))}setBlendMode(e){if(this.blendModesMap[e]||(e="normal"),e===this.blendMode)return;this.blendMode=e;let t=this.blendModesMap[e],r=this.gl;2===t.length?r.blendFunc(t[0],t[1]):r.blendFuncSeparate(t[0],t[1],t[2],t[3]),6===t.length?(this._blendEq=!0,r.blendEquationSeparate(t[4],t[5])):this._blendEq&&(this._blendEq=!1,r.blendEquationSeparate(r.FUNC_ADD,r.FUNC_ADD))}setPolygonOffset(e,t){this.gl.polygonOffset(e,t)}resetState(){this._glFrontFace=!1,this._frontFace=!1,this._cullFace=!1,this._frontFaceDirty=!1,this._invertFrontFace=!1,this.gl.frontFace(this.gl.CCW),this.gl.pixelStorei(this.gl.UNPACK_FLIP_Y_WEBGL,!1),this.forceState(this.defaultState),this._blendEq=!0,this.blendMode="",this.setBlendMode("normal")}_updateCheck(e,t){let r=this.checks.indexOf(e);t&&-1===r?this.checks.push(e):t||-1===r||this.checks.splice(r,1)}static _checkBlendMode(e,t){e.setBlendMode(t.blendMode)}static _checkPolygonOffset(e,t){e.setPolygonOffset(1,t.polygonOffset)}destroy(){this.gl=null,this.checks.length=0}};z.extension={type:[t.ExtensionType.WebGLSystem],name:"state"},e.s(["GlStateSystem",0,z],874240);var q=e.i(23089);e.s(["GlTexture",0,class{constructor(e){this.target=q.GL_TARGETS.TEXTURE_2D,this._layerInitMask=0,this.texture=e,this.width=-1,this.height=-1,this.type=q.GL_TYPES.UNSIGNED_BYTE,this.internalFormat=q.GL_FORMATS.RGBA,this.format=q.GL_FORMATS.RGBA,this.samplerType=0}destroy(){}}],504284),e.s(["glUploadBufferImageResource",0,{id:"buffer",upload(e,t,r,i,a,n=!1){let s=a||t.target;n||t.width!==e.width||t.height!==e.height?r.texImage2D(s,0,t.internalFormat,e.width,e.height,0,t.format,t.type,e.resource):r.texSubImage2D(s,0,0,0,e.width,e.height,t.format,t.type,e.resource),t.width=e.width,t.height=e.height}}],321743);let Z={"bc1-rgba-unorm":!0,"bc1-rgba-unorm-srgb":!0,"bc2-rgba-unorm":!0,"bc2-rgba-unorm-srgb":!0,"bc3-rgba-unorm":!0,"bc3-rgba-unorm-srgb":!0,"bc4-r-unorm":!0,"bc4-r-snorm":!0,"bc5-rg-unorm":!0,"bc5-rg-snorm":!0,"bc6h-rgb-ufloat":!0,"bc6h-rgb-float":!0,"bc7-rgba-unorm":!0,"bc7-rgba-unorm-srgb":!0,"etc2-rgb8unorm":!0,"etc2-rgb8unorm-srgb":!0,"etc2-rgb8a1unorm":!0,"etc2-rgb8a1unorm-srgb":!0,"etc2-rgba8unorm":!0,"etc2-rgba8unorm-srgb":!0,"eac-r11unorm":!0,"eac-r11snorm":!0,"eac-rg11unorm":!0,"eac-rg11snorm":!0,"astc-4x4-unorm":!0,"astc-4x4-unorm-srgb":!0,"astc-5x4-unorm":!0,"astc-5x4-unorm-srgb":!0,"astc-5x5-unorm":!0,"astc-5x5-unorm-srgb":!0,"astc-6x5-unorm":!0,"astc-6x5-unorm-srgb":!0,"astc-6x6-unorm":!0,"astc-6x6-unorm-srgb":!0,"astc-8x5-unorm":!0,"astc-8x5-unorm-srgb":!0,"astc-8x6-unorm":!0,"astc-8x6-unorm-srgb":!0,"astc-8x8-unorm":!0,"astc-8x8-unorm-srgb":!0,"astc-10x5-unorm":!0,"astc-10x5-unorm-srgb":!0,"astc-10x6-unorm":!0,"astc-10x6-unorm-srgb":!0,"astc-10x8-unorm":!0,"astc-10x8-unorm-srgb":!0,"astc-10x10-unorm":!0,"astc-10x10-unorm-srgb":!0,"astc-12x10-unorm":!0,"astc-12x10-unorm-srgb":!0,"astc-12x12-unorm":!0,"astc-12x12-unorm-srgb":!0};e.s(["glUploadCompressedTextureResource",0,{id:"compressed",upload(e,t,r,i,a,n){let s=a??t.target;r.pixelStorei(r.UNPACK_ALIGNMENT,4);let o=e.pixelWidth,l=e.pixelHeight,u=!!Z[e.format];for(let i=0;i<e.resource.length;i++){let a=e.resource[i];u?r.compressedTexImage2D(s,i,t.internalFormat,o,l,0,a):r.texImage2D(s,i,t.internalFormat,o,l,0,t.format,t.type,a),o=Math.max(o>>1,1),l=Math.max(l>>1,1)}}}],871291);let J=["right","left","top","bottom","front","back"];e.s(["createGlUploadCubeTextureResource",0,function(e){return{id:"cube",upload(t,r,i,a){let n=t.faces;for(let t=0;t<J.length;t++){let s=n[J[t]];s.resource&&((e[s.uploadMethodId]||e.image).upload(s,r,i,a,q.GL_TARGETS.TEXTURE_CUBE_MAP_POSITIVE_X+t,(r._layerInitMask&1<<t)==0),r._layerInitMask|=1<<t)}r.width=t.pixelWidth,r.height=t.pixelHeight}}}],117072);e.s(["glUploadImageResource",0,{id:"image",upload(e,t,r,i,a,n=!1){let s=a||t.target,o=e.pixelWidth,l=e.pixelHeight,u=e.resourceWidth,_=e.resourceHeight,c=n||t.width!==o||t.height!==l,h=u>=o&&_>=l;(2===i?function(e,t,r,i,a,n,s,o,l,u){if(!u){l&&e.texImage2D(t,0,r.internalFormat,i,a,0,r.format,r.type,null),e.texSubImage2D(t,0,0,0,n,s,r.format,r.type,o);return}l?e.texImage2D(t,0,r.internalFormat,i,a,0,r.format,r.type,o):e.texSubImage2D(t,0,0,0,r.format,r.type,o)}:function(e,t,r,i,a,n,s,o,l,u){if(!u){l&&e.texImage2D(t,0,r.internalFormat,i,a,0,r.format,r.type,null),e.texSubImage2D(t,0,0,0,r.format,r.type,o);return}l?e.texImage2D(t,0,r.internalFormat,r.format,r.type,o):e.texSubImage2D(t,0,0,0,r.format,r.type,o)})(r,s,t,o,l,u,_,e.resource,c,h),t.width=o,t.height=l}}],995786)},467596,975e3,681905,911512,721666,266598,717313,959726,e=>{"use strict";var t=e.i(72145),r=e.i(116447),i=e.i(530697),a=e.i(382827),n=e.i(504284),s=e.i(321743),o=e.i(871291),l=e.i(117072),u=e.i(995786);let _=(0,e.i(653796).isSafari)(),c={id:"video",upload(e,t,r,i,a,n=_){if(!e.isValid){let e=a??t.target;r.texImage2D(e,0,t.internalFormat,1,1,0,t.format,t.type,null);return}u.glUploadImageResource.upload(e,t,r,i,a,n)}};e.s(["glUploadVideoResource",0,c],975e3);let h={linear:9729,nearest:9728},d={linear:{linear:9987,nearest:9985},nearest:{linear:9986,nearest:9984}},f={"clamp-to-edge":33071,repeat:10497,"mirror-repeat":33648},m={never:512,less:513,equal:514,"less-equal":515,greater:516,"not-equal":517,"greater-equal":518,always:519};function g(e,t,r,i,a,n,s,o){if(!o||"repeat"!==e.addressModeU||"repeat"!==e.addressModeV||"repeat"!==e.addressModeW){let r=f[s?"clamp-to-edge":e.addressModeU],i=f[s?"clamp-to-edge":e.addressModeV],o=f[s?"clamp-to-edge":e.addressModeW];t[a](n,t.TEXTURE_WRAP_S,r),t[a](n,t.TEXTURE_WRAP_T,i),t.TEXTURE_WRAP_R&&t[a](n,t.TEXTURE_WRAP_R,o)}if(o&&"linear"===e.magFilter||t[a](n,t.TEXTURE_MAG_FILTER,h[e.magFilter]),r){if(!o||"linear"!==e.mipmapFilter){let r=d[e.minFilter][e.mipmapFilter];t[a](n,t.TEXTURE_MIN_FILTER,r)}}else t[a](n,t.TEXTURE_MIN_FILTER,h[e.minFilter]);if(i&&e.maxAnisotropy>1){let r=Math.min(e.maxAnisotropy,t.getParameter(i.MAX_TEXTURE_MAX_ANISOTROPY_EXT));t[a](n,i.TEXTURE_MAX_ANISOTROPY_EXT,r)}e.compare?(t[a](n,t.TEXTURE_COMPARE_FUNC,m[e.compare]),t[a](n,t.TEXTURE_COMPARE_MODE,t.COMPARE_REF_TO_TEXTURE)):o||t[a](n,t.TEXTURE_COMPARE_MODE,t.NONE)}function E(e){return{r8unorm:e.RED,r8snorm:e.RED,r8uint:e.RED,r8sint:e.RED,r16uint:e.RED,r16sint:e.RED,r16float:e.RED,rg8unorm:e.RG,rg8snorm:e.RG,rg8uint:e.RG,rg8sint:e.RG,r32uint:e.RED,r32sint:e.RED,r32float:e.RED,rg16uint:e.RG,rg16sint:e.RG,rg16float:e.RG,rgba8unorm:e.RGBA,"rgba8unorm-srgb":e.RGBA,rgba8snorm:e.RGBA,rgba8uint:e.RGBA,rgba8sint:e.RGBA,bgra8unorm:e.RGBA,"bgra8unorm-srgb":e.RGBA,rgb9e5ufloat:e.RGB,rgb10a2unorm:e.RGBA,rg11b10ufloat:e.RGB,rg32uint:e.RG,rg32sint:e.RG,rg32float:e.RG,rgba16uint:e.RGBA,rgba16sint:e.RGBA,rgba16float:e.RGBA,rgba32uint:e.RGBA,rgba32sint:e.RGBA,rgba32float:e.RGBA,stencil8:e.STENCIL_INDEX8,depth16unorm:e.DEPTH_COMPONENT,depth24plus:e.DEPTH_COMPONENT,"depth24plus-stencil8":e.DEPTH_STENCIL,depth32float:e.DEPTH_COMPONENT,"depth32float-stencil8":e.DEPTH_STENCIL}}function T(e,r){let i={},a=e.RGBA;return e instanceof t.DOMAdapter.get().getWebGLRenderingContext()?r.srgb&&(i={"rgba8unorm-srgb":r.srgb.SRGB8_ALPHA8_EXT,"bgra8unorm-srgb":r.srgb.SRGB8_ALPHA8_EXT}):(i={"rgba8unorm-srgb":e.SRGB8_ALPHA8,"bgra8unorm-srgb":e.SRGB8_ALPHA8},a=e.RGBA8),{r8unorm:e.R8,r8snorm:e.R8_SNORM,r8uint:e.R8UI,r8sint:e.R8I,r16uint:e.R16UI,r16sint:e.R16I,r16float:e.R16F,rg8unorm:e.RG8,rg8snorm:e.RG8_SNORM,rg8uint:e.RG8UI,rg8sint:e.RG8I,r32uint:e.R32UI,r32sint:e.R32I,r32float:e.R32F,rg16uint:e.RG16UI,rg16sint:e.RG16I,rg16float:e.RG16F,rgba8unorm:e.RGBA,...i,rgba8snorm:e.RGBA8_SNORM,rgba8uint:e.RGBA8UI,rgba8sint:e.RGBA8I,bgra8unorm:a,rgb9e5ufloat:e.RGB9_E5,rgb10a2unorm:e.RGB10_A2,rg11b10ufloat:e.R11F_G11F_B10F,rg32uint:e.RG32UI,rg32sint:e.RG32I,rg32float:e.RG32F,rgba16uint:e.RGBA16UI,rgba16sint:e.RGBA16I,rgba16float:e.RGBA16F,rgba32uint:e.RGBA32UI,rgba32sint:e.RGBA32I,rgba32float:e.RGBA32F,stencil8:e.STENCIL_INDEX8,depth16unorm:e.DEPTH_COMPONENT16,depth24plus:e.DEPTH_COMPONENT24,"depth24plus-stencil8":e.DEPTH24_STENCIL8,depth32float:e.DEPTH_COMPONENT32F,"depth32float-stencil8":e.DEPTH32F_STENCIL8,...r.s3tc?{"bc1-rgba-unorm":r.s3tc.COMPRESSED_RGBA_S3TC_DXT1_EXT,"bc2-rgba-unorm":r.s3tc.COMPRESSED_RGBA_S3TC_DXT3_EXT,"bc3-rgba-unorm":r.s3tc.COMPRESSED_RGBA_S3TC_DXT5_EXT}:{},...r.s3tc_sRGB?{"bc1-rgba-unorm-srgb":r.s3tc_sRGB.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT,"bc2-rgba-unorm-srgb":r.s3tc_sRGB.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT,"bc3-rgba-unorm-srgb":r.s3tc_sRGB.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT}:{}
151,...r.rgtc?{"bc4-r-unorm":r.rgtc.COMPRESSED_RED_RGTC1_EXT,"bc4-r-snorm":r.rgtc.COMPRESSED_SIGNED_RED_RGTC1_EXT,"bc5-rg-unorm":r.rgtc.COMPRESSED_RED_GREEN_RGTC2_EXT,"bc5-rg-snorm":r.rgtc.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT}:{},...r.bptc?{"bc6h-rgb-float":r.bptc.COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT,"bc6h-rgb-ufloat":r.bptc.COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT,"bc7-rgba-unorm":r.bptc.COMPRESSED_RGBA_BPTC_UNORM_EXT,"bc7-rgba-unorm-srgb":r.bptc.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT}:{},...r.etc?{"etc2-rgb8unorm":r.etc.COMPRESSED_RGB8_ETC2,"etc2-rgb8unorm-srgb":r.etc.COMPRESSED_SRGB8_ETC2,"etc2-rgb8a1unorm":r.etc.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2,"etc2-rgb8a1unorm-srgb":r.etc.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2,"etc2-rgba8unorm":r.etc.COMPRESSED_RGBA8_ETC2_EAC,"etc2-rgba8unorm-srgb":r.etc.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC,"eac-r11unorm":r.etc.COMPRESSED_R11_EAC,"eac-rg11unorm":r.etc.COMPRESSED_SIGNED_RG11_EAC}:{},...r.astc?{"astc-4x4-unorm":r.astc.COMPRESSED_RGBA_ASTC_4x4_KHR,"astc-4x4-unorm-srgb":r.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR,"astc-5x4-unorm":r.astc.COMPRESSED_RGBA_ASTC_5x4_KHR,"astc-5x4-unorm-srgb":r.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR,"astc-5x5-unorm":r.astc.COMPRESSED_RGBA_ASTC_5x5_KHR,"astc-5x5-unorm-srgb":r.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR,"astc-6x5-unorm":r.astc.COMPRESSED_RGBA_ASTC_6x5_KHR,"astc-6x5-unorm-srgb":r.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR,"astc-6x6-unorm":r.astc.COMPRESSED_RGBA_ASTC_6x6_KHR,"astc-6x6-unorm-srgb":r.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR,"astc-8x5-unorm":r.astc.COMPRESSED_RGBA_ASTC_8x5_KHR,"astc-8x5-unorm-srgb":r.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR,"astc-8x6-unorm":r.astc.COMPRESSED_RGBA_ASTC_8x6_KHR,"astc-8x6-unorm-srgb":r.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR,"astc-8x8-unorm":r.astc.COMPRESSED_RGBA_ASTC_8x8_KHR,"astc-8x8-unorm-srgb":r.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR,"astc-10x5-unorm":r.astc.COMPRESSED_RGBA_ASTC_10x5_KHR,"astc-10x5-unorm-srgb":r.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR,"astc-10x6-unorm":r.astc.COMPRESSED_RGBA_ASTC_10x6_KHR,"astc-10x6-unorm-srgb":r.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR,"astc-10x8-unorm":r.astc.COMPRESSED_RGBA_ASTC_10x8_KHR,"astc-10x8-unorm-srgb":r.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR,"astc-10x10-unorm":r.astc.COMPRESSED_RGBA_ASTC_10x10_KHR,"astc-10x10-unorm-srgb":r.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR,"astc-12x10-unorm":r.astc.COMPRESSED_RGBA_ASTC_12x10_KHR,"astc-12x10-unorm-srgb":r.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR,"astc-12x12-unorm":r.astc.COMPRESSED_RGBA_ASTC_12x12_KHR,"astc-12x12-unorm-srgb":r.astc.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR}:{}}}function p(e){return{r8unorm:e.UNSIGNED_BYTE,r8snorm:e.BYTE,r8uint:e.UNSIGNED_BYTE,r8sint:e.BYTE,r16uint:e.UNSIGNED_SHORT,r16sint:e.SHORT,r16float:e.HALF_FLOAT,rg8unorm:e.UNSIGNED_BYTE,rg8snorm:e.BYTE,rg8uint:e.UNSIGNED_BYTE,rg8sint:e.BYTE,r32uint:e.UNSIGNED_INT,r32sint:e.INT,r32float:e.FLOAT,rg16uint:e.UNSIGNED_SHORT,rg16sint:e.SHORT,rg16float:e.HALF_FLOAT,rgba8unorm:e.UNSIGNED_BYTE,"rgba8unorm-srgb":e.UNSIGNED_BYTE,rgba8snorm:e.BYTE,rgba8uint:e.UNSIGNED_BYTE,rgba8sint:e.BYTE,bgra8unorm:e.UNSIGNED_BYTE,"bgra8unorm-srgb":e.UNSIGNED_BYTE,rgb9e5ufloat:e.UNSIGNED_INT_5_9_9_9_REV,rgb10a2unorm:e.UNSIGNED_INT_2_10_10_10_REV,rg11b10ufloat:e.UNSIGNED_INT_10F_11F_11F_REV,rg32uint:e.UNSIGNED_INT,rg32sint:e.INT,rg32float:e.FLOAT,rgba16uint:e.UNSIGNED_SHORT,rgba16sint:e.SHORT,rgba16float:e.HALF_FLOAT,rgba32uint:e.UNSIGNED_INT,rgba32sint:e.INT,rgba32float:e.FLOAT,stencil8:e.UNSIGNED_BYTE,depth16unorm:e.UNSIGNED_SHORT,depth24plus:e.UNSIGNED_INT,"depth24plus-stencil8":e.UNSIGNED_INT_24_8,depth32float:e.FLOAT,"depth32float-stencil8":e.FLOAT_32_UNSIGNED_INT_24_8_REV}}function R(e){return{"2d":e.TEXTURE_2D,cube:e.TEXTURE_CUBE_MAP,"1d":null,"3d":e?.TEXTURE_3D||null,"2d-array":e?.TEXTURE_2D_ARRAY||null,"cube-array":e?.TEXTURE_CUBE_MAP_ARRAY||null}}e.s(["compareModeToGlCompare",0,m,"mipmapScaleModeToGlFilter",0,d,"scaleModeToGlFilter",0,h,"wrapModeToGlAddress",0,f],681905),e.s(["applyStyleParams",0,g],911512),e.s(["mapFormatToGlFormat",0,E],721666),e.s(["mapFormatToGlInternalFormat",0,T],266598),e.s(["mapFormatToGlType",0,p],717313),e.s(["mapViewDimensionToGlTarget",0,R],959726);let x=class e{constructor(t){this._glSamplers=Object.create(null),this._boundTextures=[],this._activeTextureLocation=-1,this._boundSamplers=Object.create(null),this._premultiplyAlpha=!1,this._useSeparateSamplers=!1,this._renderer=t,this._managedTextures=new i.GCManagedHash({renderer:t,type:"resource",onUnload:this.onSourceUnload.bind(this),name:"glTexture"});const r={image:u.glUploadImageResource,buffer:s.glUploadBufferImageResource,video:c,compressed:o.glUploadCompressedTextureResource,...e.uploadExtensions};this._uploads={...r,cube:(0,l.createGlUploadCubeTextureResource)(r)}}get managedTextures(){return Object.values(this._managedTextures.items)}contextChange(e){this._gl=e,this._mapFormatToInternalFormat||(this._mapFormatToInternalFormat=T(e,this._renderer.context.extensions),this._mapFormatToType=p(e),this._mapFormatToFormat=E(e),this._mapViewDimensionToGlTarget=R(e)),this._managedTextures.removeAll(!0),this._glSamplers=Object.create(null),this._boundSamplers=Object.create(null),this._premultiplyAlpha=!1;for(let e=0;e<16;e++)this.bind(a.Texture.EMPTY,e)}initSource(e){this.bind(e)}bind(e,t=0){let r=e.source;e?(this.bindSource(r,t),this._useSeparateSamplers&&this._bindSampler(r.style,t)):(this.bindSource(null,t),this._useSeparateSamplers&&this._bindSampler(null,t))}bindSource(e,t=0){let r=this._gl;if(e._gcLastUsed=this._renderer.gc.now,this._boundTextures[t]!==e){this._boundTextures[t]=e,this._activateLocation(t),e||(e=a.Texture.EMPTY.
151source);let i=this.getGlSource(e);r.bindTexture(i.target,i.texture)}}_bindSampler(e,t=0){let r=this._gl;if(!e){this._boundSamplers[t]=null,r.bindSampler(t,null);return}let i=this._getGlSampler(e);this._boundSamplers[t]!==i&&(this._boundSamplers[t]=i,r.bindSampler(t,i))}unbind(e){let t=e.source,r=this._boundTextures,i=this._gl;for(let e=0;e<r.length;e++)if(r[e]===t){this._activateLocation(e);let a=this.getGlSource(t);i.bindTexture(a.target,null),r[e]=null}}_activateLocation(e){this._activeTextureLocation!==e&&(this._activeTextureLocation=e,this._gl.activeTexture(this._gl.TEXTURE0+e))}_initSource(e){let t=this._gl,r=new n.GlTexture(t.createTexture());if(r.type=this._mapFormatToType[e.format],r.internalFormat=this._mapFormatToInternalFormat[e.format],r.format=this._mapFormatToFormat[e.format],r.target=this._mapViewDimensionToGlTarget[e.viewDimension],null===r.target)throw Error(`Unsupported view dimension: ${e.viewDimension} with this webgl version: ${this._renderer.context.webGLVersion}`);if(e.autoGenerateMipmaps&&(this._renderer.context.supports.nonPowOf2mipmaps||e.isPowerOfTwo)){let t=Math.max(e.width,e.height);e.mipLevelCount=Math.floor(Math.log2(t))+1}return e._gpuData[this._renderer.uid]=r,this._managedTextures.add(e)&&(e.on("update",this.onSourceUpdate,this),e.on("resize",this.onSourceUpdate,this),e.on("styleChange",this.onStyleChange,this),e.on("updateMipmaps",this.onUpdateMipmaps,this)),this.onSourceUpdate(e),this.updateStyle(e,!1),r}onStyleChange(e){this.updateStyle(e,!1)}updateStyle(e,t){let r=this._gl,i=this.getGlSource(e);r.bindTexture(i.target,i.texture),this._boundTextures[this._activeTextureLocation]=e,g(e.style,r,e.mipLevelCount>1,this._renderer.context.extensions.anisotropicFiltering,"texParameteri",i.target,!this._renderer.context.supports.nonPowOf2wrapping&&!e.isPowerOfTwo,t)}onSourceUnload(e,t=!1){let r=e._gpuData[this._renderer.uid];r&&(t||(this.unbind(e),this._gl.deleteTexture(r.texture)),e.off("update",this.onSourceUpdate,this),e.off("resize",this.onSourceUpdate,this),e.off("styleChange",this.onStyleChange,this),e.off("updateMipmaps",this.onUpdateMipmaps,this))}onSourceUpdate(e){let t=this._gl,r=this.getGlSource(e);t.bindTexture(r.target,r.texture),this._boundTextures[this._activeTextureLocation]=e;let i="premultiply-alpha-on-upload"===e.alphaMode;if(this._premultiplyAlpha!==i&&(this._premultiplyAlpha=i,t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL,i)),this._uploads[e.uploadMethodId])this._uploads[e.uploadMethodId].upload(e,r,t,this._renderer.context.webGLVersion);else if(r.target===t.TEXTURE_2D)this._initEmptyTexture2D(r,e);else if(r.target===t.TEXTURE_2D_ARRAY)this._initEmptyTexture2DArray(r,e);else if(r.target===t.TEXTURE_CUBE_MAP)this._initEmptyTextureCube(r,e);else throw Error("[GlTextureSystem] Unsupported texture target for empty allocation.");this._applyMipRange(r,e),e.autoGenerateMipmaps&&e.mipLevelCount>1&&this.onUpdateMipmaps(e,!1)}onUpdateMipmaps(e,t=!0){t&&this.bindSource(e,0);let r=this.getGlSource(e);this._gl.generateMipmap(r.target)}_initEmptyTexture2D(e,t){let r=this._gl;r.texImage2D(r.TEXTURE_2D,0,e.internalFormat,t.pixelWidth,t.pixelHeight,0,e.format,e.type,null);let i=Math.max(t.pixelWidth>>1,1),a=Math.max(t.pixelHeight>>1,1);for(let n=1;n<t.mipLevelCount;n++)r.texImage2D(r.TEXTURE_2D,n,e.internalFormat,i,a,0,e.format,e.type,null),i=Math.max(i>>1,1),a=Math.max(a>>1,1)}_initEmptyTexture2DArray(e,t){if(2!==this._renderer.context.webGLVersion)throw Error("[GlTextureSystem] TEXTURE_2D_ARRAY requires WebGL2.");let r=this._gl,i=Math.max(0|t.arrayLayerCount,1);r.texImage3D(r.TEXTURE_2D_ARRAY,0,e.internalFormat,t.pixelWidth,t.pixelHeight,i,0,e.format,e.type,null);let a=Math.max(t.pixelWidth>>1,1),n=Math.max(t.pixelHeight>>1,1);for(let s=1;s<t.mipLevelCount;s++)r.texImage3D(r.TEXTURE_2D_ARRAY,s,e.internalFormat,a,n,i,0,e.format,e.type,null),a=Math.max(a>>1,1),n=Math.max(n>>1,1)}_initEmptyTextureCube(e,t){let r=this._gl;for(let i=0;i<6;i++)r.texImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+i,0,e.internalFormat,t.pixelWidth,t.pixelHeight,0,e.format,e.type,null);let i=Math.max(t.pixelWidth>>1,1),a=Math.max(t.pixelHeight>>1,1);for(let n=1;n<t.mipLevelCount;n++){for(let t=0;t<6;t++)r.texImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+t,n,e.internalFormat,i,a,0,e.format,e.type,null);i=Math.max(i>>1,1),a=Math.max(a>>1,1)}}_applyMipRange(e,t){if(2!==this._renderer.context.webGLVersion||t.mipLevelCount<=1)return;let r=this._gl,i=Math.max((0|t.mipLevelCount)-1,0);r.texParameteri(e.target,r.TEXTURE_BASE_LEVEL,0),r.texParameteri(e.target,r.TEXTURE_MAX_LEVEL,i)}_initSampler(e){let t=this._gl,r=this._gl.createSampler();return this._glSamplers[e._resourceId]=r,g(e,t,this._boundTextures[this._activeTextureLocation].mipLevelCount>
1511,this._renderer.context.extensions.anisotropicFiltering,"samplerParameteri",r,!1,!0),this._glSamplers[e._resourceId]}_getGlSampler(e){return this._glSamplers[e._resourceId]||this._initSampler(e)}getGlSource(e){return e._gcLastUsed=this._renderer.gc.now,e._gpuData[this._renderer.uid]||this._initSource(e)}generateCanvas(e){let{pixels:r,width:i,height:a}=this.getPixels(e),n=t.DOMAdapter.get().createCanvas();n.width=i,n.height=a;let s=n.getContext("2d");if(s){let e=s.createImageData(i,a);e.data.set(r),s.putImageData(e,0,0)}return n}getPixels(e){let t=e.source.resolution,r=e.frame,i=Math.max(Math.round(r.width*t),1),a=Math.max(Math.round(r.height*t),1),n=new Uint8Array(4*i*a),s=this._renderer,o=s.renderTarget.getRenderTarget(e),l=s.renderTarget.getGpuRenderTarget(o),u=s.gl;return s.renderTarget.adaptor.bindFramebuffer(l.resolveTargetFramebuffer),u.readPixels(Math.round(r.x*t),Math.round(r.y*t),i,a,u.RGBA,u.UNSIGNED_BYTE,n),{pixels:new Uint8ClampedArray(n.buffer),width:i,height:a}}destroy(){this._managedTextures.destroy(),this._glSamplers=null,this._boundTextures=null,this._boundSamplers=null,this._mapFormatToInternalFormat=null,this._mapFormatToType=null,this._mapFormatToFormat=null,this._uploads=null,this._renderer=null}resetState(){this._activeTextureLocation=-1,this._boundTextures.fill(a.Texture.EMPTY.source),this._boundSamplers=Object.create(null);let e=this._gl;this._premultiplyAlpha=!1,e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,this._premultiplyAlpha)}};x.extension={type:[r.ExtensionType.WebGLSystem],name:"texture"},x.uploadExtensions=Object.create(null),r.extensions.handleByMap(r.ExtensionType.TextureUploaderWebGL,x.uploadExtensions),e.s(["GlTextureSystem",0,x],467596)},170950,671133,e=>{"use strict";var t=e.i(116447),r=e.i(440477),i=e.i(715446),a=e.i(509750),n=e.i(6540),s=e.i(89537),o=e.i(82345),l=e.i(465993),u=e.i(639373),_=e.i(543890);class c{contextChange(e){let t=new _.UniformGroup({uColor:{value:new Float32Array([1,1,1,1]),type:"vec4<f32>"},uTransformMatrix:{value:new r.Matrix,type:"mat3x3<f32>"},uRound:{value:0,type:"f32"}}),c=e.limits.maxBatchableTextures,h=(0,i.compileHighShaderGlProgram)({name:"graphics",bits:[a.colorBitGl,(0,n.generateTextureBatchBitGl)(c),s.localUniformBitGl,o.roundPixelsBitGl]});this.shader=new u.Shader({glProgram:h,resources:{localUniforms:t,batchSamplers:(0,l.getBatchSamplersUniformGroup)(c)}})}execute(e,t){let r=t.context,i=r.customShader||this.shader,a=e.renderer,{batcher:n,instructions:s}=a.graphicsContext.getContextRenderData(r);i.groups[0]=a.globalUniforms.bindGroup,a.state.set(e.state),a.shader.bind(i),a.geometry.bind(n.geometry,i.glProgram);let o=s.instructions;for(let e=0;e<s.instructionSize;e++){let t=o[e];if(t.size){for(let e=0;e<t.textures.count;e++)a.texture.bind(t.textures.textures[e],e);a.geometry.draw(t.topology,t.size,t.start)}}}destroy(){this.shader.destroy(!0),this.shader=null}}c.extension={type:[t.ExtensionType.WebGLPipesAdaptor],name:"graphics"},e.s(["GlGraphicsAdaptor",0,c],170950);var h=e.i(866009),d=e.i(382827),f=e.i(412263);class m{init(){let e=(0,i.compileHighShaderGlProgram)({name:"mesh",bits:[s.localUniformBitGl,h.textureBitGl,o.roundPixelsBitGl]});this._shader=new u.Shader({glProgram:e,resources:{uTexture:d.Texture.EMPTY.source,textureUniforms:{uTextureMatrix:{type:"mat3x3<f32>",value:new r.Matrix}}}})}execute(e,t){let r=e.renderer,i=t._shader;if(i){if(!i.glProgram)return void(0,f.warn)("Mesh shader has no glProgram",t.shader)}else{i=this._shader;let e=t.texture,r=e.source;i.resources.uTexture=r,i.resources.uSampler=r.style,i.resources.textureUniforms.uniforms.uTextureMatrix=e.textureMatrix.mapCoord}i.groups[100]=r.globalUniforms.bindGroup,i.groups[101]=e.localUniformsBindGroup,r.encoder.draw({geometry:t._geometry,shader:i,state:t.state})}destroy(){this._shader.destroy(!0),this._shader=null}}m.extension={type:[t.ExtensionType.WebGLPipesAdaptor],name:"mesh"},e.s(["GlMeshAdaptor",0,m],671133)},653796,e=>{"use strict";var t=e.i(72145);e.s(["isSafari",0,function(){let{userAgent:e}=t.DOMAdapter.get().getNavigator();return/^((?!chrome|android).)*safari/i.test(e)}])}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.