addRegion(name, x, y, w, h) {
		// TODO: Require proper atlas regions instead of caching arbitrary region keys
		if (renderer.settings.verbose === true) {
			console.warn("Adding texture region", name, "for texture", this);
		}

		const source = this.getTexture();
		const atlas = this.getAtlas();
		const dw = source.width;
		const dh = source.height;

		atlas[name] = {
			name: name,
			offset: new Vector2d(x, y),
			width: w,
			height: h,
			angle: 0,
		};

		this.addUVs(atlas, name, dw, dh);

		return atlas[name];
	}
add a region to the atlas
@param {string} name - region mame
@param {number} x - x origin of the region
@param {number} y - y origin of the region
@param {number} w - width of the region
@param {number} h - height of the region
@returns {object} the created region