updateGlyphs(glyphBounds, glyphAtlasIndices, blockBounds, chunkedBounds, glyphColors) {
    // Update the instance attributes
    this.updateAttributeData(glyphBoundsAttrName, glyphBounds, 4)
    this.updateAttributeData(glyphIndexAttrName, glyphAtlasIndices, 1)
    this.updateAttributeData(glyphColorAttrName, glyphColors, 3)
    this._blockBounds = blockBounds
    this._chunkedBounds = chunkedBounds
    this.instanceCount = glyphAtlasIndices.length
    this._updateBounds()
  }
Update the geometry for a new set of glyphs.
@param {Float32Array} glyphBounds - An array holding the planar bounds for all glyphs
       to be rendered, 4 entries for each glyph: x1,x2,y1,y1
@param {Float32Array} glyphAtlasIndices - An array holding the index of each glyph within
       the SDF atlas texture.
@param {Array} blockBounds - An array holding the [minX, minY, maxX, maxY] across all glyphs
@param {Array} [chunkedBounds] - An array of objects describing bounds for each chunk of N
       consecutive glyphs: `{start:N, end:N, rect:[minX, minY, maxX, maxY]}`. This can be
       used with `applyClipRect` to choose an optimized `instanceCount`.
@param {Uint8Array} [glyphColors] - An array holding r,g,b values for each glyph.