public static Collection<Face> fromFile(File file, Color color) {
        ArrayList<Face> faces = new ArrayList<Face>();
        try {
            File modelFile = file;
            FileInputStream fis = new FileInputStream(file);
            BufferedReader reader = new BufferedReader(new InputStreamReader(fis));
            ArrayList<Vertex> vertexList = new ArrayList<Vertex>();
            ArrayList<Vertex> normalList = new ArrayList<Vertex>();
            String line;
            int[] verts = new int[3];
            int[] norms = new int[3];
            while ((line = reader.readLine()) != null) {
                if (line.startsWith("v ")) {
                    String[] c = line.split(" ");
                    vertexList.add(new Vertex(
                            Float.parseFloat(c[1]), 
                            Float.parseFloat(c[2]), 
                            Float.parseFloat(c[3])));
                } else if (line.startsWith("vn ")) {
                    String[] c = line.split(" ");
                    normalList.add(new Vertex(
                            Float.parseFloat(c[1]), 
                            Float.parseFloat(c[2]), 
                            Float.parseFloat(c[3])));
                    
                } else if (line.startsWith("f ")) {
                    String[] c = line.split(" ");
                    for (int loc=1;loc<=3;loc++) {
                        String[] nums = c[loc].split("//");
                        verts[loc-1]=Integer.parseInt(nums[0]);
                        norms[loc-1]=Integer.parseInt(nums[1]);
                    }
                    Face f = new Face(
                            vertexList.get(verts[0]-1), 
                            vertexList.get(verts[1]-1), 
                            vertexList.get(verts[2]-1), 
                            normalList.get(norms[0]-1), 
                            normalList.get(norms[1]-1), 
                            normalList.get(norms[2]-1), 
                            color);
                    faces.add(f);
                }
            }
            reader.close();
        } catch (IOException e) {
            System.out.println("Error loading model " + file);
        }
        return faces;
    }