Jason's Programming Projects

Enable javascript to see screen shots.

prev next

Hexen BSP Generator

Project Members:
Programmer: Jason Eaton

Languages: C++
Libraries: OpenGL, SDL

Date Added: 4/8/2011
File Size: 33,000k
Download: BSP.zip

This was a particularly enjoyable project to work on, since Hexen was one of my favorite games. This was a final project for an algorithm design and analysis class. We had the option to do a computational geometry project, and a BSP tree seemed like a fun idea. I am particularly proud of the fact that I completed this project in about three weeks, and it can load in Hexen levels strait from the level files extracted from the Hexen wad file.

Originally I planned to create my own levels and not allow for the sudo 3d aspect of Hexen, but adding it turned out to be very strait forward. Plus the time saved by having 30+ Hexen levels as test cases sped up the development of this project considerably. It also meant that I could create my own test cases very fast in Hexen editors I used to work with frequently. In fact, the Hexen scripting language is where I first learned C syntax, since the scripting language closely resembles it.

Another nice feature of this project is that it allows you to view the BSP tree nodes created for the geometry. In the second image you can see that there are gray lines splitting up the map, and color codes the left and right branch of the currently selected node.