Reading Meshes Be sure to include a README as required from previous projects. Refer to those assignments for readme requirements. In addition, which mesh is not visible? Look in the mesh file and figure out why. Also, discuss the display mode you implement below. In this project you will read in a mesh from a file and display it on the screen. Mesh files contain a list of vertices followed by a list of faces. Sample mesh files can be found on the website. A single triangle mesh file may look like this: Number of vertices: 3 0 0 0 1 0 0 0 1 0 Number of faces: 1 0 1 2 Steps 1) Change Orthographic projection to gluOrtho2D(-1,1,-1,1). Make sure to change it in reshape also. 2) Provide a method of entering the filename that does not require the console window. Use the keyboard to achieve this and likely some global variable that detects if you are in 'file name read' mode or not. 3) Read in files. Detect bad file names. No crashing from user input. 4) Display the mesh by throwing away the z component. Use glBegin(GL_TRIANGLES), glEnd() and use glVertex2f(x,y) in place of each vertex. 5) Allow the user to switch to special display mode. Instead of plotting (x,y), plot (-2*x/(z-2) , -2*y/(z-2) ) for a vertex. What is this doing? Respond in README. Extra Credit: - Incorporate a toggle for wireframe mode - Incorporate a toggle for backface culling - Incorporate lighting, flat shading, smooth shading