*** TO DO *** This conversion does not allow for vector models where there are lines which do not form a closed polygon face. For example the antenna on a vehicle. These 1-D line segments may be a single edge or may be several edges end-to-end. These will have to be detected and output separately as a list of polylines. Note that as well as polylines, we may find faces that describe planar areas but which do not enclose solid volumes. For instance the Tailgunner ships are like that - imagine a paper aeroplane for example. Faces but no volumes. Contrast with the 3D objects from Battlezone which mostly are volumes. Also remaining to be done is to determine the winding numbers for the faces, i.e. which side of the face is facing outwards (bearing in mind the whole issue of convex vs concave surfaces...) I'm not sure that this can be done without needing almost all of a raytracing package. Simple tricks that I had thought of at first such as shared edges being in opposing directions don't work - take the three surface faces of a triangular pyramid for example. (The winding numbers are needed to determine normals, but note: only for solid volumes. planar surfaces that do not form enclosed volumes don't have a single 'outward' facing normal. They have two normals depending on which side of the plane you're looking at. Think of the tail of an aeroplane for example if implemented as a single flat surface with no width. I need a version of this which takes only edge vectors as input and extracts an array of unique vertexes from the edge endpoints. I could also could use a version that reads the edge/vertex data from text files (in some arbitrary format) rather than C arrays. (btw I do know that the plural of vertex is vertices but I'm using vertexes deliberately to simplify searching in the editor). Drop the vectrex.c graphics compatible interface layer, and go straight to SDL.