Visible Surface Determination in First Person 3D Software
Visible Surface Determination in First Person 3D Software
This was my science project in grade 11. I won the Young Scientist Competition in Computer Science in Thailand and came to Detroit, Michigan to present it in ISEF2000. I won the second place in the category of computer science. This project proposed an adaptive algorithm to determine which 3D objects are worth using as occluders, based on user feedback. Basically, the program will initially guessed that none of the objects is worth using as an occluder. When a user controls the camera to move around the 3D scene and encounters a place where the frame rate significantly drops, he/she can hit a button to tell the program to figure out what objects should it uses as occluders in that particular viewpoint to cull out other objects to increase the frame rate. I implemented a 3D level editor to test out the algorithm in Microsoft Visual C++ 5.0, with DirectX 7.0. The testing was done using Pentium II 400, with 256 MB of RAM and Geforce 1.