setUniform(name, value) {
		const uniforms = this.uniforms;
		if (typeof uniforms[name] !== "undefined") {
			if (typeof value === "object" && typeof value.toArray === "function") {
				uniforms[name] = value.toArray();
			} else {
				uniforms[name] = value;
			}
		} else {
			throw new Error("undefined (" + name + ") uniform for shader " + this);
		}
	}
Set the uniform to the given value
@param {string} name - the uniform name
@param {object|Float32Array} value - the value to assign to that uniform
@example
myShader.setUniform("uProjectionMatrix", this.projectionMatrix);