{"version":3,"file":"static/js/2029.ef3b71a4.chunk.js","mappings":"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","sources":["../node_modules/@arcgis/core/views/webgl/BufferObject.js","../node_modules/@arcgis/core/views/webgl/FramebufferObject.js","../node_modules/@arcgis/core/views/webgl/Renderbuffer.js","../node_modules/@arcgis/core/views/webgl/Util.js","../node_modules/@arcgis/core/views/webgl/VertexArrayObject.js"],"sourcesContent":["/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{isArrayLike as e}from\"../../core/arrayUtils.js\";import t from\"../../core/Logger.js\";import{isSome as r}from\"../../core/maybe.js\";import{isUint16Array as i,isUint32Array as s}from\"../../core/typedArrayUtil.js\";import{checkWebGLError as n}from\"./checkWebGLError.js\";import{ContextType as o}from\"./context-util.js\";import{BufferType as f,ResourceType as a,Usage as u,DataType as h}from\"./enums.js\";const _=t.getLogger(\"esri.views.webgl.BufferObject\");function b(t){return e(t)}class c{constructor(e,t,r,i){this._context=e,this.bufferType=t,this.usage=r,this._glName=null,this._size=-1,this._indexType=void 0,e.instanceCounter.increment(a.BufferObject,this),this._glName=this._context.gl.createBuffer(),n(this._context.gl),i&&this.setData(i)}static createIndex(e,t,r){return new c(e,f.ELEMENT_ARRAY_BUFFER,t,r)}static createVertex(e,t,r){return new c(e,f.ARRAY_BUFFER,t,r)}static createUniform(e,t,r){if(e.type!==o.WEBGL2)throw new Error(\"Uniform buffers are supported in WebGL2 only!\");return new c(e,f.UNIFORM_BUFFER,t,r)}static createPixelPack(e,t=u.STREAM_READ,r){if(e.type!==o.WEBGL2)throw new Error(\"Pixel pack buffers are supported in WebGL2 only!\");const i=new c(e,f.PIXEL_PACK_BUFFER,t);return r&&i.setSize(r),i}static createPixelUnpack(e,t=u.STREAM_DRAW,r){if(e.type!==o.WEBGL2)throw new Error(\"Pixel unpack buffers are supported in WebGL2 only!\");return new c(e,f.PIXEL_UNPACK_BUFFER,t,r)}get glName(){return this._glName}get size(){return this._size}get indexType(){return this._indexType}get byteSize(){return this.bufferType===f.ELEMENT_ARRAY_BUFFER?this._indexType===h.UNSIGNED_INT?4*this._size:2*this._size:this._size}get _isVAOAware(){return this.bufferType===f.ELEMENT_ARRAY_BUFFER||this.bufferType===f.ARRAY_BUFFER}dispose(){if(this._context?.gl){if(this._glName){this._context.gl.deleteBuffer(this._glName),this._glName=null}this._context.instanceCounter.decrement(a.BufferObject,this),this._context=null}else this._glName&&_.warn(\"Leaked WebGL buffer object\")}setSize(e,t=null){if(e<=0&&_.error(\"Buffer size needs to be positive!\"),this.bufferType===f.ELEMENT_ARRAY_BUFFER&&r(t))switch(this._indexType=t,t){case h.UNSIGNED_SHORT:e*=2;break;case h.UNSIGNED_INT:e*=4}this._setBufferData(e)}setData(e){if(!e)return;let t=e.byteLength;this.bufferType===f.ELEMENT_ARRAY_BUFFER&&(i(e)&&(t/=2,this._indexType=h.UNSIGNED_SHORT),s(e)&&(t/=4,this._indexType=h.UNSIGNED_INT)),this._setBufferData(t,e)}_setBufferData(e,t=null){this._size=e;const i=this._context.getBoundVAO();this._isVAOAware&&this._context.bindVAO(null),this._context.bindBuffer(this);const s=this._context.gl;r(t)?s.bufferData(this.bufferType,t,this.usage):s.bufferData(this.bufferType,e,this.usage),n(s),this._isVAOAware&&this._context.bindVAO(i)}setSubData(e,t=0,r=0,o=e.byteLength){if(!e)return;(t<0||t>=this._size)&&_.error(\"offset is out of range!\");let a=t,u=r,h=o,b=e.byteLength;this.bufferType===f.ELEMENT_ARRAY_BUFFER&&(i(e)?(b/=2,a*=2,u*=2,h*=2):s(e)&&(b/=4,a*=4,u*=4,h*=4)),void 0===o&&(o=b-1),r>=o&&_.error(\"end must be bigger than start!\"),t+r-o>this._size&&_.error(\"An attempt to write beyond the end of the buffer!\");const c=this._context.getBoundVAO();this._isVAOAware&&this._context.bindVAO(null),this._context.bindBuffer(this);const E=this._context.gl,l=ArrayBuffer.isView(e)?e.buffer:e,d=0===u&&h===e.byteLength?l:l.slice(u,h);E.bufferSubData(this.bufferType,a,d),n(E),this._isVAOAware&&this._context.bindVAO(c)}setSubDataFromView(e,t,r,i){if(!e)return;(t<0||t>=this._size)&&_.error(\"offset is out of range!\"),r>=i&&_.error(\"end must be bigger than start!\"),t+r-i>this._size&&_.error(\"An attempt to write beyond the end of the buffer!\");const s=this._context.getBoundVAO();this._isVAOAware&&this._context.bindVAO(null),this._context.bindBuffer(this);const f=this._context.gl;if(this._context.type===o.WEBGL2)f.bufferSubData(this.bufferType,t*e.BYTES_PER_ELEMENT,e,r,i-r);else{const s=0===r&&i===e.length?e:e.subarray(r,i);f.bufferSubData(this.bufferType,t*e.BYTES_PER_ELEMENT,s)}n(f),this._isVAOAware&&this._context.bindVAO(s)}getSubData(e,t=0,r,i){if(this._context.type!==o.WEBGL2)return void _.error(\"Get buffer subdata is supported in WebGL2 only!\");if(r<0||i<0)return void _.error(\"Problem getting subdata: offset and length were less than zero!\");const s=b(e)?e.BYTES_PER_ELEMENT:1;if(s*((r??0)+(i??0))>e.byteLength)return void _.error(\"Problem getting subdata: offset and length exceeded destination size!\");t+s*(i??0)>this.byteSize&&_.warn(\"Potential problem getting subdata: requested data exceeds buffer size!\");const n=this._context.gl;this._context.bindBuffer(this,f.COPY_READ_BUFFER),n.getBufferSubData(f.COPY_READ_BUFFER,t,e,r,i),this._context.unbindBuffer(f.COPY_READ_BUFFER)}async getSubDataAsync(e,t=0,r,i){this._context.type===o.WEBGL2?(await this._context.clientWaitAsync(),this.getSubData(e,t,r,i)):_.error(\"Get buffer subdata is supported in WebGL2 only!\")}}export{c as BufferObject};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport t from\"../../core/Logger.js\";import{isSome as e,isNone as i}from\"../../core/maybe.js\";import{BufferObject as r}from\"./BufferObject.js\";import{webglDebugEnabled as s,webglValidateShadersEnabled as h}from\"./checkWebGLError.js\";import{ContextType as n}from\"./context-util.js\";import{ResourceType as c,ColorAttachment as o,DepthStencilTargetType as _,PixelFormat as a,PixelType as l,DepthStencilAttachment as T,RenderbufferFormat as E,FramebufferTarget as d,TextureType as u,Usage as f,BufferType as m,TargetType as A,TextureSamplingMode as p,TextureWrapMode as R,SizedPixelFormat as N}from\"./enums.js\";import{Renderbuffer as g}from\"./Renderbuffer.js\";import{Texture as F}from\"./Texture.js\";import{getGpuMemoryUsage as x}from\"./Util.js\";const b=t.getLogger(\"esri.views.webgl.FrameBufferObject\");class D{constructor(t,i,r=null,s=null){if(this._context=t,this._glName=null,this._depthAttachment=null,this._stencilAttachment=null,this._colorAttachments=new Map,this._initialized=!1,this._desc={...i},t.instanceCounter.increment(c.FramebufferObject,this),e(r)){Array.isArray(r)||(r=[r]);for(let t=0;tt+x(i)),0)+x(this.depthStencilAttachment)}getColorTexture(t){const e=this._colorAttachments.get(t);return e&&C(e)?e:null}attachColorTexture(t,e=o.COLOR_ATTACHMENT0){if(!t)return;this._validateColorAttachmentPoint(e);P(t.descriptor,this._desc),this._disposeColorAttachments(),this._initialized&&(this._context.bindFramebuffer(this),this._framebufferTexture2D(t.glName,e)),this._colorAttachments.set(e,t)}detachColorTexture(t=o.COLOR_ATTACHMENT0){const e=this._colorAttachments.get(t);if(C(e)){const i=e;return this._initialized&&(this._context.bindFramebuffer(this),this._framebufferTexture2D(null,t)),this._colorAttachments.delete(t),i}}setColorTextureTarget(t,e=o.COLOR_ATTACHMENT0){const i=this._colorAttachments.get(e);C(i)&&this._framebufferTexture2D(i.glName,e,t)}attachDepthStencilTexture(t){if(i(t))return;const e=t.descriptor;e.pixelFormat!==a.DEPTH_STENCIL&&console.error(\"Depth/Stencil texture must have a pixel type of DEPTH_STENCIL!\"),e.dataType!==l.UNSIGNED_INT_24_8&&console.error(\"Depth/Stencil texture must have data type of UNSIGNED_INT_24_8!\"),this._context.capabilities.depthTexture||console.error(\"Extension WEBGL_depth_texture isn't supported therefore it is no possible to set the depth/stencil texture!\"),P(e,this._desc),this._desc.depthStencilTarget&&this._desc.depthStencilTarget!==_.DEPTH_STENCIL_TEXTURE&&(this._desc.depthStencilTarget=_.DEPTH_STENCIL_TEXTURE),this._disposeDepthStencilAttachments(),this._initialized&&(this._context.bindFramebuffer(this),this._framebufferTexture2D(t.glName,T)),this._depthStencilTexture=t}detachDepthStencilTexture(){const t=this._depthStencilTexture;return t&&this._initialized&&(this._context.bindFramebuffer(this),this._framebufferTexture2D(null,T)),this._depthStencilTexture=null,t}attachDepthStencilBuffer(t){if(i(t))return;const e=t.descriptor;if(e.internalFormat!==E.DEPTH_STENCIL&&e.internalFormat!==E.DEPTH_COMPONENT16&&console.error(\"Depth/Stencil buffer must have correct internalFormat\"),B(e,this._desc),this._disposeDepthStencilAttachments(),this._desc.depthStencilTarget=e.internalFormat===E.DEPTH_STENCIL?_.DEPTH_STENCIL_RENDER_BUFFER:_.DEPTH_RENDER_BUFFER,this._initialized){this._context.bindFramebuffer(this);const e=this._context.gl,i=this._desc.depthStencilTarget===_.DEPTH_RENDER_BUFFER?e.DEPTH_ATTACHMENT:e.DEPTH_STENCIL_ATTACHMENT;e.framebufferRenderbuffer(d.FRAMEBUFFER,i,e.RENDERBUFFER,t.glName)}this._depthAttachment=t}detachDepthStencilBuffer(){const t=this._context.gl,e=this._depthAttachment;if(e&&this._initialized){this._context.bindFramebuffer(this);const e=this._desc.depthStencilTarget===_.DEPTH_RENDER_BUFFER?t.DEPTH_ATTACHMENT:t.DEPTH_STENCIL_ATTACHMENT;t.framebufferRenderbuffer(d.FRAMEBUFFER,e,t.RENDERBUFFER,null)}return this._depthAttachment=null,e}detachAll(){this._colorAttachments.forEach(((t,e)=>this._detachColorAttachment(e))),this.detachDepthStencilBuffer(),this.detachDepthStencilTexture()}copyToTexture(t,e,i,r,s,h,n){(t<0||e<0||s<0||h<0)&&console.error(\"Offsets cannot be negative!\"),(i<=0||r<=0)&&console.error(\"Copy width and height must be greater than zero!\");const c=this._desc,o=n.descriptor;n.descriptor.target!==u.TEXTURE_2D&&console.error(\"Texture target must be TEXTURE_2D!\"),(t+i>c.width||e+r>c.height||s+i>o.width||h+r>o.height)&&console.error(\"Bad dimensions, the current input values will attempt to read or copy out of bounds!\");const _=this._context,a=_.bindTexture(n,F.TEXTURE_UNIT_FOR_UPDATES);_.setActiveTexture(F.TEXTURE_UNIT_FOR_UPDATES),_.bindFramebuffer(this),_.gl.copyTexSubImage2D(u.TEXTURE_2D,0,s,h,t,e,i,r),_.bindTexture(a,F.TEXTURE_UNIT_FOR_UPDATES)}readPixels(t,e,i,r,s,h,n){(i<=0||r<=0)&&console.error(\"Copy width and height must be greater than zero!\"),n||console.error(\"Target memory is not initialized!\"),this._context.bindFramebuffer(this);this._context.gl.readPixels(t,e,i,r,s,h,n)}async readPixelsAsync(t,e,i,h,c,o,_){if(this._context.type!==n.WEBGL2)return s()&&console.warn(\"Attempting to read pixels using pixel buffer object without WebGL2\"),void this.readPixels(t,e,i,h,c,o,_);const a=this._context.gl,l=r.createPixelPack(this._context,f.STREAM_READ,_.byteLength);this._context.bindBuffer(l),this._context.bindFramebuffer(this),a.readPixels(t,e,i,h,c,o,0),this._context.unbindBuffer(m.PIXEL_PACK_BUFFER),await l.getSubDataAsync(_),l.dispose()}resize(t,e){const i=this._desc;if(i.width!==t||i.height!==e){if(!this._initialized)return i.width=t,i.height=e,this._colorAttachments.forEach((i=>{i&&i.resize(t,e)})),void(this._depthStencilTexture&&this._depthStencilTexture.resize(t,e));i.width=t,i.height=e,this._colorAttachments.forEach((i=>{i&&i.resize(t,e)})),null!=this._depthStencilTexture?this._depthStencilTexture.resize(t,e):(this._depthAttachment||this._stencilAttachment)&&(this._depthAttachment&&this._depthAttachment.resize(t,e),this._stencilAttachment&&this._stencilAttachment.resize(t,e)),this._context.getBoundFramebufferObject()===this&&this._context.bindFramebuffer(null),this._initialized=!1}}initializeAndBind(t=d.FRAMEBUFFER){const e=this._context.gl;if(this._initialized)return void e.bindFramebuffer(t,this.glName);this._glName&&e.deleteFramebuffer(this._glName);const i=this._context,r=e.createFramebuffer(),s=this._desc,n=s.colorTarget??A.RENDER_BUFFER,c=s.width??1,T=s.height??1;if(e.bindFramebuffer(t,r),0===this._colorAttachments.size)if(n===A.TEXTURE||n===A.CUBEMAP)this._colorAttachments.set(o.COLOR_ATTACHMENT0,H(i,s,this.descriptor.colorTarget===A.CUBEMAP?u.TEXTURE_CUBE_MAP:u.TEXTURE_2D));else{const t=new g(i,{internalFormat:N.RGBA4,width:c,height:T});this._colorAttachments.set(o.COLOR_ATTACHMENT0,t)}this._colorAttachments.forEach(((i,r)=>{i&&(C(i)?this._framebufferTexture2D(i.glName,r,M(i),t):e.framebufferRenderbuffer(t,r,e.RENDERBUFFER,i.glName))}));const f=s.depthStencilTarget??_.NONE;switch(f){case _.DEPTH_RENDER_BUFFER:case _.DEPTH_STENCIL_RENDER_BUFFER:{this._depthAttachment||(this._depthAttachment=new g(i,{internalFormat:s.depthStencilTarget===_.DEPTH_RENDER_BUFFER?E.DEPTH_COMPONENT16:E.DEPTH_STENCIL,width:c,height:T}));const r=f===_.DEPTH_RENDER_BUFFER?e.DEPTH_ATTACHMENT:e.DEPTH_STENCIL_ATTACHMENT;e.framebufferRenderbuffer(t,r,e.RENDERBUFFER,this._depthAttachment.glName);break}case _.STENCIL_RENDER_BUFFER:this._stencilAttachment||(this._stencilAttachment=new g(i,{internalFormat:E.STENCIL_INDEX8,width:c,height:T})),e.framebufferRenderbuffer(t,e.STENCIL_ATTACHMENT,e.RENDERBUFFER,this._stencilAttachment.glName);break;case _.DEPTH_STENCIL_TEXTURE:if(!this._depthStencilTexture){i.capabilities.depthTexture||console.error(\"Extension WEBGL_depth_texture isn't supported therefore it is no possible to set the depth/stencil texture as an attachment!\");const t={target:u.TEXTURE_2D,pixelFormat:a.DEPTH_STENCIL,dataType:l.UNSIGNED_INT_24_8,samplingMode:p.NEAREST,wrapMode:R.CLAMP_TO_EDGE,width:c,height:T};this._depthStencilTexture=new F(i,t)}this._framebufferTexture2D(this._depthStencilTexture.glName,e.DEPTH_STENCIL_ATTACHMENT,M(this._depthStencilTexture),t)}if(h()){e.checkFramebufferStatus(t)!==e.FRAMEBUFFER_COMPLETE&&console.error(\"Framebuffer is incomplete!\")}this._glName=r,this._initialized=!0}_framebufferTexture2D(t,e=o.COLOR_ATTACHMENT0,i=u.TEXTURE_2D,r=d.FRAMEBUFFER,s=0){this._context.gl.framebufferTexture2D(r,e,i,t,s)}_detachColorAttachment(t){s()&&console.warn(\"Detaching an FBO attachment can be a slow due to invalidating framebuffer completeness!\");const e=this._context.gl,i=this._colorAttachments.get(t);return C(i)?this._initialized&&(this._context.bindFramebuffer(this),this._framebufferTexture2D(null,t)):this._initialized&&(this._context.bindFramebuffer(this),e.framebufferRenderbuffer(d.FRAMEBUFFER,t,e.RENDERBUFFER,null)),this._colorAttachments.delete(t),i}_disposeColorAttachments(){this._colorAttachments.forEach(((t,e)=>{this._detachColorAttachment(e),t.dispose()})),this._colorAttachments.clear()}_disposeDepthStencilAttachments(){const t=this._context.gl;if(this._depthAttachment){if(this._initialized){this._context.bindFramebuffer(this);const e=this._desc.depthStencilTarget===_.DEPTH_RENDER_BUFFER?t.DEPTH_ATTACHMENT:t.DEPTH_STENCIL_ATTACHMENT;t.framebufferRenderbuffer(d.FRAMEBUFFER,e,t.RENDERBUFFER,null)}this._depthAttachment.dispose(),this._depthAttachment=null}this._stencilAttachment&&(this._initialized&&(this._context.bindFramebuffer(this),t.framebufferRenderbuffer(d.FRAMEBUFFER,t.STENCIL_ATTACHMENT,t.RENDERBUFFER,null)),this._stencilAttachment.dispose(),this._stencilAttachment=null),this._depthStencilTexture&&(this._initialized&&(this._context.bindFramebuffer(this),this._framebufferTexture2D(null,t.DEPTH_STENCIL_ATTACHMENT)),this._depthStencilTexture.dispose(),this._depthStencilTexture=null)}_validateColorAttachmentPoint(t){if(-1===D._MAX_COLOR_ATTACHMENTS){const t=this._context.capabilities.drawBuffers;if(t){const e=this._context.gl;D._MAX_COLOR_ATTACHMENTS=e.getParameter(t.MAX_COLOR_ATTACHMENTS)}else D._MAX_COLOR_ATTACHMENTS=1}const e=t-o.COLOR_ATTACHMENT0;e+1>D._MAX_COLOR_ATTACHMENTS&&b.error(\"esri.FrameBufferObject\",`illegal attachment point for color attachment: ${e+1}. Implementation supports up to ${D._MAX_COLOR_ATTACHMENTS} color attachments`)}}function C(t){return\"type\"in t&&\"texture\"===t.type}function S(t){return\"type\"in t&&\"renderbuffer\"===t.type}function U(t){return C(t)||\"pixelFormat\"in t}function H(t,e,i){return new F(t,{target:i,pixelFormat:a.RGBA,dataType:l.UNSIGNED_BYTE,samplingMode:p.NEAREST,wrapMode:R.CLAMP_TO_EDGE,width:e.width,height:e.height})}function P(t,e){t.target!==u.TEXTURE_2D&&t.target!==u.TEXTURE_CUBE_MAP&&console.error(\"Texture type must be TEXTURE_2D or TEXTURE_CUBE_MAP!\"),void 0!==e.width&&e.width>=0&&void 0!==e.height&&e.height>=0?e.width===t.width&&e.height===t.height||console.error(\"Color attachment texture must match the framebuffer's!\"):(e.width=t.width,e.height=t.height)}function B(t,e){void 0!==e.width&&e.width>=0&&void 0!==e.height&&e.height>=0?e.width===t.width&&e.height===t.height||console.error(\"Renderbuffer dimensions must match the framebuffer's!\"):(e.width=t.width,e.height=t.height)}function M(t){return t.descriptor.target===u.TEXTURE_CUBE_MAP?u.TEXTURE_CUBE_MAP_POSITIVE_X:u.TEXTURE_2D}D._MAX_COLOR_ATTACHMENTS=-1;export{D as FramebufferObject};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport{ContextType as e}from\"./context-util.js\";import{ResourceType as t}from\"./enums.js\";class r{constructor(r,s){this._context=r,this._desc=s,this.type=\"renderbuffer\",this._context.instanceCounter.increment(t.Renderbuffer,this);const i=this._context.gl;this.glName=i.createRenderbuffer(),this._context.bindRenderbuffer(this);const{width:n,height:h,internalFormat:o,multisampled:a}=s;if(a){if(this._context.type!==e.WEBGL2)throw new Error(\"Multisampled renderbuffers are not supported in WebGL1!\");i.renderbufferStorageMultisample(i.RENDERBUFFER,this.samples,o,n,h)}else i.renderbufferStorage(i.RENDERBUFFER,o,n,h)}get descriptor(){return this._desc}get samples(){const e=this._desc.samples,t=this._context.parameters.maxSamples;return e?Math.min(e,t):t}resize(e,t){const r=this._desc;if(r.width===e&&r.height===t)return;r.width=e,r.height=t;const s=this._context.gl;if(this._context.bindRenderbuffer(this),r.multisampled){s.renderbufferStorageMultisample(s.RENDERBUFFER,this.samples,r.internalFormat,r.width,r.height)}else s.renderbufferStorage(s.RENDERBUFFER,r.internalFormat,r.width,r.height)}dispose(){this._context&&(this._context.gl.deleteRenderbuffer(this.glName),this._context.instanceCounter.decrement(t.Renderbuffer,this),this._context=null)}}export{r as Renderbuffer};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport\"../../core/has.js\";import{isNone as e}from\"../../core/maybe.js\";import{BufferType as r,CompressedTextureFormat as t,SizedPixelFormat as s,RenderbufferFormat as a,PixelFormat as c}from\"./enums.js\";function i(e){const r=e.gl;switch(r.getError()){case r.NO_ERROR:return null;case r.INVALID_ENUM:return\"An unacceptable value has been specified for an enumerated argument\";case r.INVALID_VALUE:return\"A numeric argument is out of range\";case r.INVALID_OPERATION:return\"The specified command is not allowed for the current state\";case r.INVALID_FRAMEBUFFER_OPERATION:return\"The currently bound framebuffer is not framebuffer complete\";case r.OUT_OF_MEMORY:return\"Not enough memory is left to execute the command\";case r.CONTEXT_LOST_WEBGL:return\"WebGL context is lost\"}return\"Unknown error\"}function n(e,r){return e.vertexBuffers[r].size/o(e.layout[r])}function o(e){return e[0].stride}function R(e,r,t,s,a=0){const c=e.gl,i=e.capabilities.instancing;e.bindBuffer(t);for(const n of s){const e=r.get(n.name);void 0===e&&console.error(`There is no location for vertex attribute '${n.name}' defined.`);const t=a*n.stride;if(n.count<=4)c.vertexAttribPointer(e,n.count,n.type,n.normalized,n.stride,n.offset+t),c.enableVertexAttribArray(e),n.divisor>0&&i&&i.vertexAttribDivisor(e,n.divisor);else if(9===n.count)for(let r=0;r<3;r++)c.vertexAttribPointer(e+r,3,n.type,n.normalized,n.stride,n.offset+12*r+t),c.enableVertexAttribArray(e+r),n.divisor>0&&i&&i.vertexAttribDivisor(e+r,n.divisor);else if(16===n.count)for(let r=0;r<4;r++)c.vertexAttribPointer(e+r,4,n.type,n.normalized,n.stride,n.offset+16*r+t),c.enableVertexAttribArray(e+r),n.divisor>0&&i&&i.vertexAttribDivisor(e+r,n.divisor);else console.error(\"Unsupported vertex attribute element count: \"+n.count)}}function E(e,t,s,a){const c=e.gl,i=e.capabilities.instancing;e.bindBuffer(s);for(const r of a){const e=t.get(r.name);if(r.count<=4)c.disableVertexAttribArray(e),r.divisor&&r.divisor>0&&i&&i.vertexAttribDivisor(e,0);else if(9===r.count)for(let t=0;t<3;t++)c.disableVertexAttribArray(e+t),r.divisor&&r.divisor>0&&i&&i.vertexAttribDivisor(e+t,0);else if(16===r.count)for(let t=0;t<4;t++)c.disableVertexAttribArray(e+t),r.divisor&&r.divisor>0&&i&&i.vertexAttribDivisor(e+t,0);else console.error(\"Unsupported vertex attribute element count: \"+r.count)}e.unbindBuffer(r.ARRAY_BUFFER)}function _(e){switch(e){case c.ALPHA:case c.LUMINANCE:case c.RED:case c.RED_INTEGER:case s.R8:case s.R8I:case s.R8UI:case s.R8_SNORM:case a.STENCIL_INDEX8:return 1;case c.LUMINANCE_ALPHA:case c.RG:case c.RG_INTEGER:case s.RGBA4:case s.R16F:case s.R16I:case s.R16UI:case s.RG8:case s.RG8I:case s.RG8UI:case s.RG8_SNORM:case s.RGB565:case s.RGB5_A1:case a.DEPTH_COMPONENT16:return 2;case c.DEPTH_COMPONENT:case c.RGB:case c.RGB_INTEGER:case s.RGB8:case s.RGB8I:case s.RGB8UI:case s.RGB8_SNORM:case s.SRGB8:case a.DEPTH_COMPONENT24:return 3;case c.DEPTH_STENCIL:case c.RGBA:case c.RGBA_INTEGER:case s.RGBA8:case s.R32F:case s.R11F_G11F_B10F:case s.RG16F:case s.R32I:case s.R32UI:case s.RG16I:case s.RG16UI:case s.RGBA8I:case s.RGBA8UI:case s.RGBA8_SNORM:case s.SRGB8_ALPHA8:case s.RGB9_E5:case s.RGB10_A2UI:case s.RGB10_A2:case a.DEPTH_STENCIL:case a.DEPTH_COMPONENT32F:case a.DEPTH24_STENCIL8:return 4;case a.DEPTH32F_STENCIL8:return 5;case s.RGB16F:case s.RGB16I:case s.RGB16UI:return 6;case s.RG32F:case s.RG32I:case s.RG32UI:case s.RGBA16F:case s.RGBA16I:case s.RGBA16UI:return 8;case s.RGB32F:case s.RGB32I:case s.RGB32UI:return 12;case s.RGBA32F:case s.RGBA32I:case s.RGBA32UI:return 16;case t.COMPRESSED_RGB_S3TC_DXT1_EXT:case t.COMPRESSED_RGBA_S3TC_DXT1_EXT:return.5;case t.COMPRESSED_RGBA_S3TC_DXT3_EXT:case t.COMPRESSED_RGBA_S3TC_DXT5_EXT:return 1;case t.COMPRESSED_R11_EAC:case t.COMPRESSED_SIGNED_R11_EAC:case t.COMPRESSED_RGB8_ETC2:case t.COMPRESSED_SRGB8_ETC2:case t.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:case t.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:return.5;case t.COMPRESSED_RG11_EAC:case t.COMPRESSED_SIGNED_RG11_EAC:case t.COMPRESSED_RGBA8_ETC2_EAC:case t.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:return 1}return 0}function u(r){if(e(r))return 0;if(\"descriptor\"in r)return r.glName?u(r.descriptor):0;const t=r.internalFormat||\"pixelFormat\"in r&&r.pixelFormat;if(!t)return 0;const s=\"hasMipmap\"in r&&r.hasMipmap?1.3:1,a=r.width*r.height;return _(t)*a*s}export{R as bindVertexBufferLayout,_ as getBytesPerElementFormat,i as getErrorString,u as getGpuMemoryUsage,o as getStride,E as unbindVertexBufferLayout,n as vertexCount};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.24/esri/copyright.txt for details.\n*/\nimport t from\"../../core/Logger.js\";import{isSome as e,disposeMaybe as i}from\"../../core/maybe.js\";import{ResourceType as r}from\"./enums.js\";import{bindVertexBufferLayout as s,unbindVertexBufferLayout as n}from\"./Util.js\";const o=t.getLogger(\"esri.views.webgl.VertexArrayObject\");class f{constructor(t,e,i,s,n=null){this._context=t,this._locations=e,this._layout=i,this._buffers=s,this._indexBuffer=n,this._glName=null,this._initialized=!1,t.instanceCounter.increment(r.VertexArrayObject,this)}get glName(){return this._glName}get context(){return this._context}get vertexBuffers(){return this._buffers}get indexBuffer(){return this._indexBuffer}get size(){return Object.keys(this._buffers).reduce(((t,e)=>t+this._buffers[e].size),e(this._indexBuffer)?this._indexBuffer.size:0)}get layout(){return this._layout}get locations(){return this._locations}dispose(t=!0){if(!this._context)return void((this._glName||t&&Object.getOwnPropertyNames(this._buffers).length>0)&&o.warn(\"Leaked WebGL VAO\"));if(this._glName){const t=this._context?.capabilities?.vao;t?(t.deleteVertexArray(this._glName),this._glName=null):o.warn(\"Leaked WebGL VAO\")}if(this._context.getBoundVAO()===this&&this._context.bindVAO(null),t){for(const t in this._buffers)this._buffers[t].dispose(),delete this._buffers[t];this._indexBuffer=i(this._indexBuffer)}this._context.instanceCounter.decrement(r.VertexArrayObject,this),this._context=null}initialize(){if(this._initialized)return;const t=this._context.capabilities.vao;if(t){const e=t.createVertexArray();t.bindVertexArray(e),this._bindLayout(),t.bindVertexArray(null),this._glName=e}this._initialized=!0}bind(){this.initialize();const t=this._context.capabilities.vao;t?t.bindVertexArray(this.glName):(this._context.bindVAO(null),this._bindLayout())}_bindLayout(){const{_buffers:t,_layout:i,_indexBuffer:r}=this;t||o.error(\"Vertex buffer dictionary is empty!\");const n=this._context.gl;for(const e in t){const r=t[e];r||o.error(\"Vertex buffer is uninitialized!\");const n=i[e];n||o.error(\"Vertex element descriptor is empty!\"),s(this._context,this._locations,r,n)}if(e(r)){!!this._context.capabilities.vao?n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,r.glName):this._context.bindBuffer(r)}}unbind(){this.initialize();const t=this._context.capabilities.vao;t?t.bindVertexArray(null):this._unbindLayout()}_unbindLayout(){const{_buffers:t,_layout:i}=this;t||o.error(\"Vertex buffer dictionary is empty!\");for(const e in t){const r=t[e];r||o.error(\"Vertex buffer is uninitialized!\");const s=i[e];n(this._context,this._locations,r,s)}e(this._indexBuffer)&&this._context.unbindBuffer(this._indexBuffer.bufferType)}}export{f as VertexArrayObject};\n"],"names":["_","t","c","constructor","e","r","i","this","_context","bufferType","usage","_glName","_size","_indexType","instanceCounter","increment","a","gl","createBuffer","n","setData","f","type","o","Error","u","setSize","glName","size","indexType","byteSize","h","_isVAOAware","dispose","deleteBuffer","decrement","warn","error","_setBufferData","byteLength","s","getBoundVAO","bindVAO","bindBuffer","bufferData","setSubData","b","E","l","ArrayBuffer","isView","buffer","d","slice","bufferSubData","setSubDataFromView","BYTES_PER_ELEMENT","length","subarray","getSubData","getBufferSubData","unbindBuffer","clientWaitAsync","D","_depthAttachment","_stencilAttachment","_colorAttachments","Map","_initialized","_desc","Array","isArray","U","C","descriptor","set","F","P","S","g","B","_validateColorAttachmentPoint","capabilities","depthTexture","console","_depthStencilTexture","depthStencilTarget","getBoundFramebufferObject","_disposeColorAttachments","_disposeDepthStencilAttachments","deleteFramebuffer","bindFramebuffer","colorTexture","get","colorAttachment","depthStencilAttachment","depthStencilTexture","width","height","gpuMemoryUsage","reduce","x","getColorTexture","attachColorTexture","_framebufferTexture2D","detachColorTexture","delete","setColorTextureTarget","attachDepthStencilTexture","pixelFormat","dataType","T","detachDepthStencilTexture","attachDepthStencilBuffer","internalFormat","DEPTH_ATTACHMENT","DEPTH_STENCIL_ATTACHMENT","framebufferRenderbuffer","RENDERBUFFER","detachDepthStencilBuffer","detachAll","forEach","_detachColorAttachment","copyToTexture","target","bindTexture","setActiveTexture","copyTexSubImage2D","readPixels","m","getSubDataAsync","resize","initializeAndBind","createFramebuffer","colorTarget","A","samplingMode","p","wrapMode","R","H","N","M","STENCIL_ATTACHMENT","checkFramebufferStatus","FRAMEBUFFER_COMPLETE","framebufferTexture2D","clear","_MAX_COLOR_ATTACHMENTS","drawBuffers","getParameter","MAX_COLOR_ATTACHMENTS","createRenderbuffer","bindRenderbuffer","multisampled","renderbufferStorageMultisample","samples","renderbufferStorage","parameters","maxSamples","Math","min","deleteRenderbuffer","getError","NO_ERROR","INVALID_ENUM","INVALID_VALUE","INVALID_OPERATION","INVALID_FRAMEBUFFER_OPERATION","OUT_OF_MEMORY","CONTEXT_LOST_WEBGL","vertexBuffers","stride","layout","instancing","name","count","vertexAttribPointer","normalized","offset","enableVertexAttribArray","divisor","vertexAttribDivisor","disableVertexAttribArray","hasMipmap","_locations","_layout","_buffers","_indexBuffer","context","indexBuffer","Object","keys","locations","vao","deleteVertexArray","getOwnPropertyNames","initialize","createVertexArray","bindVertexArray","_bindLayout","bind","ELEMENT_ARRAY_BUFFER","unbind","_unbindLayout"],"sourceRoot":""}