From 5caaf856b5770ae48c983ae6fb24ed91a2b99cf5 Mon Sep 17 00:00:00 2001 From: Jamie Wong Date: Wed, 24 Jan 2018 10:41:55 -0800 Subject: [PATCH] Stop allocating six times more memory than necessary :) --- rectangle-batch-renderer.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/rectangle-batch-renderer.ts b/rectangle-batch-renderer.ts index 7d893ce..d3be102 100644 --- a/rectangle-batch-renderer.ts +++ b/rectangle-batch-renderer.ts @@ -6,9 +6,9 @@ import { Color } from './color' export class RectangleBatch { private vertexCapacity = 60 private vertexCount = 0 - private positions = new Float32Array(this.vertexCapacity * 6 * 2) - private physicalSpaceOffsets = new Float32Array(this.vertexCapacity * 6 * 2) - private vertexColors = new Float32Array(this.vertexCapacity * 6 * 3) + private positions = new Float32Array(this.vertexCapacity * 2) + private physicalSpaceOffsets = new Float32Array(this.vertexCapacity * 2) + private vertexColors = new Float32Array(this.vertexCapacity * 3) private offset = { topLeft: new Vec2(1, -1), @@ -49,9 +49,9 @@ export class RectangleBatch { if (index >= this.vertexCapacity) { // Not enough capacity, time to resize! We'll double the capacity each time. this.vertexCapacity *= 2 - const positions = new Float32Array(this.vertexCapacity * 6 * 2) - const physicalSpaceOffsets = new Float32Array(this.vertexCapacity * 6 * 2) - const vertexColors = new Float32Array(this.vertexCapacity * 6 * 3) + const positions = new Float32Array(this.vertexCapacity * 2) + const physicalSpaceOffsets = new Float32Array(this.vertexCapacity * 2) + const vertexColors = new Float32Array(this.vertexCapacity * 3) positions.set(this.positions) physicalSpaceOffsets.set(this.physicalSpaceOffsets)