====== BSPLoad ====== These are screenshots from a custom-made loader and displayer of Quake 3 maps (which use binary space partitioning), written in plain C with OpenGL and SDL. It implements Bezier surfaces with dynamic detail level, collision detection and multi-textured lightmaps. It also includes several of Quake's rendering optimization techniques, such as potentially visible sets (PVS) and frustum culling. This was made in my spare time after gaining experience with OpenGL during an internship at [[http://www.key2.nl|Key2]]. It proved to be a good preparation for the [[.:flyby|Flyby Demo]] project several months later. {{:portfolio:bspload:alphamask.jpg?320|Alpha masked textures}}{{:portfolio:bspload:archhigh.jpg?320|Curved arched with high detail}}{{:portfolio:bspload:archlow.jpg?320|Curved arch with low detail}}{{:portfolio:bspload:fovmodel.jpg?320|Complex curved surfaces and an FOV gun model}}{{:portfolio:bspload:vista01.jpg?320|}}{{:portfolio:bspload:vista02.jpg?320|}}{{:portfolio:bspload:vista03.jpg?320|}}{{:portfolio:bspload:vista04.jpg?320|}}{{:portfolio:bspload:vista05.jpg?320|}}{{:portfolio:bspload:vista06.jpg?320|}}