Point3f[] getFaceVertices(byte face) {
		if (faceVertices == null) {
			faceVertices = new Point3f[4];
			for (int i = 0; i < 4; i++)
				faceVertices[i] = new Point3f();
		}
		float x = Math.abs(corner.x);
		float y = Math.abs(corner.y);
		float z = Math.abs(corner.z);
		switch (face) {
		case FRONT:
			faceVertices[0].set(center.x + x, center.y + y, center.z + z);
			faceVertices[1].set(center.x - x, center.y + y, center.z + z);
			faceVertices[2].set(center.x - x, center.y - y, center.z + z);
			faceVertices[3].set(center.x + x, center.y - y, center.z + z);
			return faceVertices;
		case REAR:
			faceVertices[0].set(center.x + x, center.y + y, center.z - z);
			faceVertices[1].set(center.x - x, center.y + y, center.z - z);
			faceVertices[2].set(center.x - x, center.y - y, center.z - z);
			faceVertices[3].set(center.x + x, center.y - y, center.z - z);
			return faceVertices;
		case TOP:
			faceVertices[0].set(center.x + x, center.y + y, center.z + z);
			faceVertices[1].set(center.x - x, center.y + y, center.z + z);
			faceVertices[2].set(center.x - x, center.y + y, center.z - z);
			faceVertices[3].set(center.x + x, center.y + y, center.z - z);
			return faceVertices;
		case BOTTOM:
			faceVertices[0].set(center.x + x, center.y - y, center.z + z);
			faceVertices[1].set(center.x - x, center.y - y, center.z + z);
			faceVertices[2].set(center.x - x, center.y - y, center.z - z);
			faceVertices[3].set(center.x + x, center.y - y, center.z - z);
			return faceVertices;
		case RIGHT:
			faceVertices[0].set(center.x + x, center.y + y, center.z + z);
			faceVertices[1].set(center.x + x, center.y - y, center.z + z);
			faceVertices[2].set(center.x + x, center.y - y, center.z - z);
			faceVertices[3].set(center.x + x, center.y + y, center.z - z);
			return faceVertices;
		case LEFT:
			faceVertices[0].set(center.x - x, center.y + y, center.z + z);
			faceVertices[1].set(center.x - x, center.y - y, center.z + z);
			faceVertices[2].set(center.x - x, center.y - y, center.z - z);
			faceVertices[3].set(center.x - x, center.y + y, center.z - z);
			return faceVertices;
		}
		return null;
	}