Comp236

Course Project Proposal

Ken Brooks and Brian Clipp

May, 2006

 

Final results

Final Paper

Powerpoint presentation

The project

The game of Catchwater is about building a system of pipes and funnels before and above one's opponents, so as to catch most of the rainwater coming into the world. It is turn-based, but requires real-time response as the user rotates the view of the world and manipulates pipes segments to put them into place. Pipe segments once in place are aligned on a three-dimensional cubical grid.

 

Motivation

I (Ken) have thought about implementing this game since long before it was technically feasible on consumer hardware. The original implementation was done with wood and cardboard; the visualization required was much too hard for most players, and cried out for computer graphics help. Now we have not only the ability to implement it, but to make it look nice and actually make the falling rain, and the water in the pipes, visible.

 

 

Final Results

After investigating real time ray tracing, we decided that modeling flowing water using OpenGL would be a more effective way of developing the game.  We have implemented flowing water based on smooth particle hydrodynamics and its interaction with pipe sections.  The water flows into and out of a pipe network in real time.  The following is a link to our final paper.

 

_____________________________________________________________________________________________

 

 

Proposed work

We propose to implement a basic version of Catchwater (certainly not debugged for great gameplay!) with the following graphically interesting features:

1. Ray tracing with transparency and refraction to illustrate the amount of water in each pipe.

2. Adaptive ray tracing, providing lower quality when the scene is in motion and higher quality when it is still and we can afford more time to render it.

3. A representation of falling rain, probably as some sort of mist. Rain is not everywhere; it will be absent from certain cells in the grid because it has already been caught on a level above.

 

The main interest from a graphics standpoint of our proposed project is its rendering technique. We propose to ray trace the game environment in real time. Advances in CPU speed and multicore architectures have made real time ray tracing a possibility. However, rendering dynamic scenes in real time remains a challenging topic of research. Prior work real time dynamic ray tracing includes work by Wald, Benthin and Slusallek at Saarland University and their openRT graphics engine. The openRT engine represents objects differently based on the type of motion they undergo. We propose to extend on their ray tracing engine which supports real time to use Levels of Detail (LOD). While our game model will not be ÒmassiveÓ it will be changing dynamically potentially fairly quickly. The use of LOD to speed the rendering of the scene while it is in motion should allow users to maintain a sense of position in the scene while the camera or a scene object is moving, and traditional ray tracing techniques might be too slow.

 

 

References

 

Ingo Wald, Carsten Benthin and Philipp Slusallek

ÒDistributed Interactive Ray Tracing of Dynamic Scenes Ò
Proceedings of the IEEE Symposium on Parallel and Large-Data Visualization and Graphics (PVG), 2003

 

Andreas Dietrich, Ingo Wald and Philipp Slusallek,

ÒThe OpenRT Application Programming Interface
Towards A Common API for Interactive Ray Tracing Ò
Proceedings of the 2003 OpenSG Symposium,
Darmstadt, Germany, April 1-2, 2003, pages 23-31,
Published by the Eurographics Association