Program binaries: Linux and Solaris
3D Graphics Pipeline & Hidden Line Demonstration ================================================ Author: Antti Puhakka, Tampere University of Technology, Software Systems Laboratory Uses the GTK library Without options: runs the program with a default 3D model Options: -i file Read model from file - Read model from standard input Moving Around: ============= u,o, left mouse Rotate around origin w,s,a,d,e,c, left/middle mouse Move forwad/backward/left/right/up/down j,l,k,i, right mouse Turn left/right/up/down Visibility: ========== b Hide back faces h Hide all invisible lines Demonstration of the 3D drawing pipeline: ======================================== Keys 1-8 show the sequence of 3D-pipeline transformations; in between you can move around as usual. You should probably first bring the far clip plane closer (and perhaps remove the 'floor'). +,- Far clipping plane further/closer t Floor on/off 1 Show view frustum 2 Tranform to eye (camera) coordinates 3 Perspective transformation 4 Normalisation transformation 5 Clip inside normalized view volume 6 (Optional) clip invisible lines 7 Transform to screeen coordinates (a scaled down version shown) 8 Final rasterized image 0 Restore the original view Demonstration of 3D visibility clipping: ======================================= b Hide back faces h Hide all invisible lines f Freeze the visibility clipping (you can move around) r The same, with view frustum shown g Restore back to normal