void renderFace(int face, int lface, Matrix4f cubeletMatrix) {
		Matrix4f localMatrix = (Matrix4f) new Matrix4f().setIdentity();
		switch(face) {
			case Cube.TOP:
				localMatrix.rotate((float) Math.toRadians(-90), new Vector3f(1, 0, 0));
				break;
			case Cube.FRONT:
				break;
			case Cube.LEFT:
				localMatrix.rotate((float) Math.toRadians(-90), new Vector3f(0, 1, 0));
				break;
			case Cube.BOTTOM:
				localMatrix.rotate((float) Math.toRadians(90), new Vector3f(1, 0, 0));
				break;
			case Cube.BACK:
				localMatrix.rotate((float) Math.toRadians(180), new Vector3f(0, 1, 0));
				break;
			case Cube.RIGHT:
				localMatrix.rotate((float) Math.toRadians(90), new Vector3f(0, 1, 0));
				break;
			default:
				return;
		}
		Matrix4f faceMatrix = Matrix4f.mul(cubeletMatrix, localMatrix, null);

		int lmvp = glGetUniformLocation(shader, "U_MODEL_VIEW_PROJECTION");
		int lcol = glGetUniformLocation(shader, "U_COLOR");
		int lpos = glGetAttribLocation(shader, "A_POSITION");
		int lnormal = glGetAttribLocation(shader, "A_NORMAL");
		int luv = glGetAttribLocation(shader, "A_UV");

		FloatBuffer matBuffer = BufferUtils.createFloatBuffer(16);
		faceMatrix.store(matBuffer);
		matBuffer.flip();
		glUniformMatrix4(lmvp, false, matBuffer);

		glUniform4f(lcol, faceColors[lface][0], faceColors[lface][1], faceColors[lface][2], faceColors[lface][3]);

		glBindBuffer(GL_ARRAY_BUFFER, verticesVBO);
		glVertexAttribPointer(lpos, 3, GL_FLOAT, false, 0, 0);
		glBindBuffer(GL_ARRAY_BUFFER, normalsVBO);
		glVertexAttribPointer(lnormal, 3, GL_FLOAT, false, 0, 0);
		glBindBuffer(GL_ARRAY_BUFFER, uvsVBO);
		glVertexAttribPointer(luv, 2, GL_FLOAT, false, 0, 0);
		glBindBuffer(GL_ARRAY_BUFFER, 0);

		glEnableVertexAttribArray(lpos);
		glEnableVertexAttribArray(lnormal);
		glEnableVertexAttribArray(luv);

		glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, indicesVBO);
		glDrawElements(GL_TRIANGLES, indices.length, GL_UNSIGNED_BYTE, 0);
		glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0);

		glDisableVertexAttribArray(lpos);
		glDisableVertexAttribArray(lnormal);
		glDisableVertexAttribArray(luv);
	}