1 / 28

View Coherence Acceleration for Ray Traced Animation

View Coherence Acceleration for Ray Traced Animation. University of Colorado at Colorado Springs Master’s Thesis Defense by Philip Glen Gage April 19, 2002. Introduction. Ray tracing generates realistic images Ray tracing is slow, realism/speed tradeoff

cassie
Télécharger la présentation

View Coherence Acceleration for Ray Traced Animation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. View Coherence Acceleration for Ray Traced Animation University of Colorado at Colorado Springs Master’s Thesis Defense by Philip Glen Gage April 19, 2002

  2. Introduction • Ray tracing generates realistic images • Ray tracing is slow, realism/speed tradeoff • Many ray tracing acceleration methods • Accelerate animation using frame coherence • Earlier methods have static view limitation • Thesis adds pan/zoom from fixed viewpoint

  3. Ray Tracing • Trace rays from eye through pixels to scene • Find closest ray-object intersection point • Recursive reflection and refraction rays • Shadow rays to each light source • Apply shading model to color pixel

  4. Ray Tracing Geometry Light Sources Reflection Ray Shadow Rays Normal Intersection Point Pixel Eye or camera Transmission Ray Object Image Plane

  5. Ray Tracing Acceleration • Faster, fewer ray-object intersection tests • Bounding volume hierarchy • Spatial subdivision into voxels • Coherence • Image space • Object space • Temporal (frame) • View (new)

  6. Animation Acceleration

  7. Jevans OSTC Paper • “Object Space Temporal Coherence for Ray Tracing,” D. Jevans, Graphics Interface, 1992 • Accelerate object animation using spatial grid • Image divided into 16x16 grid of 256 areas • Voxels save bitmap of dependent image areas • Ray trace only changed areas of each frame • Jevans requires a static camera view

  8. OSTC Operation Image Areas Rays Eye Spatial Subdivision Voxel Grid Rays set image area bit in each traversed voxel bitmap 0 0 0 0 0 0 1 0 0 1 1 0 0 0 0 0

  9. New Pan Algorithm • Pan by shifting image and retracing new area • Standard view fails, angle varies per pixel • Requires an equal-angle view projection • Cylindrical equirectangular map projection • 360º panorama view, distorts at wide angles Standard Cylindrical

  10. Pan by Image Shift and Redraw Pan Direction Ray trace only once Ray trace for vertical pan Ray trace for horiz pan New Frame Shift and reuse pixels Previous Frame Shift Direction

  11. Cylindrical View Projection 60 World Map Panoramic View Ray 90 30 45 Unroll Cylinder Latitude (elevation) 0 Latitude (elevation) 0 Eye -30 -45 0 -90 -180 -90 0 180 90 Longitude (azimuth) -60 90 180 Longitude (azimuth)

  12. Projection Comparison

  13. New Zoom Algorithm • Large image buffer to accelerate smooth zoom • Smaller viewport samples ray traced image • Ray trace only sampled pixels on demand • Ray traced image buffer acts as pixel cache • 2D transforms for zoom, rotate, warp effects • Viewport range limited by image buffer size

  14. Ray Trace and Viewport Images 320x200 sampled zoom viewport 640x480 ray traced image with sampled pixels 320x200 zoom and rotate viewport

  15. New Algorithm Summary • Panimation • Shift previous frame image, ray trace new area • Equal-angle pixels using cylindrical projection • Fast pan, slow zoom, unlimited range • Ray Sample Viewport (RSVP) • Sample ray traced image, ray trace on demand • Any view projection may be used • Fast pan, zoom, 2D transforms, limited range

  16. Algorithm Summary • OSTC acceleration (Jevans) • Voxels have bitmap of dependent image areas • Fast object and light animation, static camera • Integrated approach (all three algorithms) • Panimation for large pan and zoom, pixel cache • RSVP for small pan, zoom, other effects • OSTC method for object and light animation • Accelerates all animation except camera motion

  17. Integration • Integrating new pan and zoom algorithms • Draw new areas in null color instead of ray tracing • If viewport samples a null color pixel, ray trace • A viewport transform can fix cylindrical distortion • Integrating OSTC and new algorithms • Draw areas changed by animation in null color • Keep pan pixel offset for OSTC bitmap areas • Wrap OSTC bitmap area rows/columns for pan

  18. Integrated Architecture Panoramic World View Plane Transforms for pan, zoom, rotate, inverse cylindrical & other effects accelerated by pixel caching Pan accelerated by image shift, animation accelerated by OSTC Objects Eye Ray SampleViewport (RSVP) without Cylindrical Distortion Ray Traced Panimation and OSTC Image Buffer with Cylindrical Distortion Cylindrical Equidistant View Projection

  19. Panimation and OSTC Black areas due to pan and animation need to be ray traced, other pixels are reused from previous frame

  20. Camera and Viewport 640x480 ray traced camera image sampled pixels with cylindrical distortion 320x200 viewport image from sampled pixels with cylindrical distortion removed for standard view appearance

  21. Implementation • Started with my CS 581 C++ ray tracer • Converted to Java JDK 1.3.1 on PC • Added uniform spatial subdivision, OSTC • Added new Panimation, RSVP algorithms • Integrated OSTC, Panimation and RSVP • Tested animation, interactive virtual reality

  22. Architecture • World has lights, objects,cameras, viewports • Each has an animate(framenumber) method • World has a uniform spatial subdivision grid • Each camera contains an OSTC bitmap grid • Each camera has a framebuffer for ray tracing • Each viewport has framebuffer for sampling

  23. Animation Algorithm For each frame Animate lights, if changed, set voxel changed flags Animate objects, if changed, set voxel changed flags Animate cameras, update images using Panimation, OSTC Animate viewports, update images using RSVP Clear all voxel changed flags

  24. Results

  25. Future Work • Panimation 2:1 zoom can reuse 1/4 pixels • Automatic pan/zoom camera for viewports • Use shift, redraw areas for delta compression • Add saved ray trees for faster light changes • Add reprojection to handle camera motion

  26. Conclusion • Researched ray traced animation acceleration • Developed new algorithms for fast pan/zoom • Implemented and tested algorithms in Java • Integrated new pan/zoom with Jevans method • Order of magnitude pan/zoom speed increase • Many uses in animation and virtual reality

  27. Demonstration

More Related