()
| 182 | }; |
| 183 | |
| 184 | const dispose: StreamBuffer['dispose'] = () => { |
| 185 | if (disposed) return; |
| 186 | disposed = true; |
| 187 | vertexCount = 0; |
| 188 | |
| 189 | for (const slot of slots) { |
| 190 | try { |
| 191 | slot.buffer.destroy(); |
| 192 | } catch { |
| 193 | // best-effort |
| 194 | } |
| 195 | } |
| 196 | }; |
| 197 | |
| 198 | return { write, getBuffer, getVertexCount, dispose }; |
| 199 | } |