omnidirectional rendering
DESCRIPTION
Omnidirectional Rendering. Jiesang Song Stephanie Weirich. Motivation. Rendering is neat Many video games strive to immerse the player in an imaginary world. Rendering is slow Complexity is based upon the number of objects in the scene, as well as the number of pixels in the output. - PowerPoint PPT PresentationTRANSCRIPT
Omnidirectional Rendering
Jiesang SongStephanie Weirich
Motivation
Rendering is neat – Many video games strive to immerse
the player in an imaginary world. Rendering is slow
– Complexity is based upon the number of objects in the scene, as well as the number of pixels in the output.
Quake screen shot
Riven screen shot
Inspiration
Columbia Omnicamera - Teleconferencing
Quicktime VR - Panoramic Imaging
Methodology
Render complex scenes ahead of time in an “Intermediate Image”
Compute several perspective views from that one image
#declare Glas2 =sor { 12, <.517241379, -.132625995> <.249336870, 0.000000> <.068965517, .031830239> <.021220159, .050397878> <.238726790, .602122016> <.249336870, .721485411> <.233421751, .864721485> <.167108753, 1.000000000> <.084880637, 1.055702918> open}
POV Source Hemisperical view Perspective view
Methodology
Parabolic Mirror
Generalization
Parabolic mirror defines a function between the angle of elevation, , of a ray and the radial distance, r, of its location in the image.
cos
sin1r
Generalization
We don’t need to follow physical laws We can use (almost) any function of
we wish! Parabolic mirror model shows us how
Generalization (Cont)
Parabolic Mirror Fisheye lens
Different functions allow us to adjust the resolution of parts of the image
Fisheye lens - r is linear in Another function might allow us to have more resolution near the horizon.
Implementation Overview
• Initialize windows application
• Initialize DirectDraw Surface in Video memory
• Read in .PPM files
• Run conversion algorithm
• Initialize Device Independent Bitmap (DIB)
• Stretch and copy Bitmap into DirectDraw Surface
• Enter message processing loop
Interface
Move mouse to pan image
Use left/right mouse buttons to zoom in and out (limited depth)
Performance
About 1 – 3 seconds to generate new 640*480 or 320 * 240 images on Intel Pentium 200 MHz running Win95
About 5 – 9 seconds for 1024 * 768 images but takes longer to initialize
Room for optimization