Ray Tracing In 3D Egoshooters
Until now every 3D Shooter has been completly rendered in software or using common rasterization hardware. As a scientific study Saarland University developed in cooperation with Erlangen University the worlds first completly ray traced 3D Shooter.
As base for this kind of game Quake 3: Arena Demo from id Software has been choosen.
The game engine was written from scratch and supports player and bot movement including shooting and jumping, collision detection, and many sepcial effects like jump-pads and teleporters. The main development was done by Daniel Pohl in less than six months with contribution for shading by several other students (see feature list). The engine builds upon the OpenRT-API, which manages the ray tracing.
Features
The developed 3D Shooter has the following features...
... through OpenRT API (Ingo Wald, Carsten Benthin and all the other hard working guys at uni-sb):
realtime 3d raytrace engine
runs faster with more computers (about 20 fps@36 GHz in 512x512 with 4xFSAA)
realtime per-pixel shadows
possible resolution up to 16384x16384x32
... optical special effects
real glass with reflection and refraction (thanx to Tim Dahmen)
real mirrors
colored realtime per-pixel shadows (thanx to Tim Dahmen)
realtime soft shadows
colored lights
flashlight
ground fog (thanx to Tim Dahmen)
some walls replaced with high polygon displaced walls
reflecting water
mipmapping
wireframe mode (thanx to Jörg Schmittler)
B/W filter
camera portals
... for gaming
loading quake3 maps
support for md3 model format
quake3 like console
integrated benchmark system
offline rendering for saved demos
realistic physic for weapons (e.g. grenades)
physic for players (e.g. gravity)
collision detection for players and weapons
player animations
AI
tga screenshots
png screenshots (thanx to Tim Dahmen)
sounds
jumppads
Additional thanks to: Marc Stamminger, Philipp Slusallek, Raoul Plettke, Gametutorials.com, NeHe GameDev