UNPKG

@tolokoban/tgd

Version:

ToloGameDev library for WebGL2

23 lines 1.5 kB
export class UniformBufferObjectsManager { constructor() { this.uniformBuffers = []; } /** * @returns A free binding point. */ add(uniformBuffer) { const { uniformBuffers } = this; let bindingPoint = 0; while (uniformBuffers[bindingPoint]) bindingPoint++; uniformBuffers[bindingPoint] = uniformBuffer; return bindingPoint; } remove(uniformBuffer) { const { uniformBuffers } = this; if (uniformBuffers[uniformBuffer.bindingPoint] !== uniformBuffer) return; delete uniformBuffers[uniformBuffer.bindingPoint]; } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWJvLW1hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29udGV4dC91Ym8tbWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sMkJBQTJCO0lBQXhDO1FBQ3FCLG1CQUFjLEdBQTZCLEVBQUUsQ0FBQTtJQW1CbEUsQ0FBQztJQWpCRzs7T0FFRztJQUNILEdBQUcsQ0FBQyxhQUFxQztRQUNyQyxNQUFNLEVBQUUsY0FBYyxFQUFFLEdBQUcsSUFBSSxDQUFBO1FBQy9CLElBQUksWUFBWSxHQUFHLENBQUMsQ0FBQTtRQUNwQixPQUFPLGNBQWMsQ0FBQyxZQUFZLENBQUM7WUFBRSxZQUFZLEVBQUUsQ0FBQTtRQUNuRCxjQUFjLENBQUMsWUFBWSxDQUFDLEdBQUcsYUFBYSxDQUFBO1FBQzVDLE9BQU8sWUFBWSxDQUFBO0lBQ3ZCLENBQUM7SUFFRCxNQUFNLENBQUMsYUFBcUM7UUFDeEMsTUFBTSxFQUFFLGNBQWMsRUFBRSxHQUFHLElBQUksQ0FBQTtRQUMvQixJQUFJLGNBQWMsQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLEtBQUssYUFBYTtZQUFFLE9BQU07UUFFeEUsT0FBTyxjQUFjLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxDQUFBO0lBQ3JELENBQUM7Q0FDSiJ9