Skip to main content

Real-Time Algebraic Surface Visualization

  • Chapter

Abstract

We demonstrate a ray tracing type technique for rendering algebraic surfaces using programmable graphics hardware (GPUs). Our approach allows for real-time exploration and manipulation of arbitrary real algebraic surfaces, with no pre-processing step, except that of a possible change of polynomial basis.

The algorithm is based on the blossoming principle of trivariate Bernstein-Bézier functions over a tetrahedron. By computing the blossom of the function describing the surface with respect to each ray, we obtain the coefficients of a univariate Bernstein polynomial, describing the surface’s value along each ray. We then use Bézier subdivision to find the first root of the curve along each ray to display the surface. These computations are performed in parallel for all rays and executed on a GPU.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD   109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. http://mathworld.wolfram.com/OrdinaryDoublePoint.html. Checked as of September 2006.

    Google Scholar 

  2. D. Blythe. The Direct3D 10 system. ACM Trans. Graph., 25(3):724–734, 2006.

    Article  MathSciNet  Google Scholar 

  3. BrookGPU. http://graphics.stanford.edu/projects/brookgpu/.

    Google Scholar 

  4. N. A. Carr, J. D. Hall, and J. C. Hart. The ray engine. In HWWS’ 02: Proceedings of the ACM SIGGRAPH/EUROGRAPHICS conference on Graphics hardware, pages 37–46, Aire-la-Ville, Switzerland, Switzerland, 2002. Eurographics Association.

    Google Scholar 

  5. N. A. Carr, J. Hoberock, K. Crane, and J. C. Hart. Fast GPU ray tracing of dynamic meshes using geometry images. In GI’ 06: Proceedings of the 2006 conference on Graphics interface, pages 203–209, Toronto, Ont., Canada, 2006. Canadian Information Processing Society.

    Google Scholar 

  6. M. Christen. Ray tracing on GPU. Master’s thesis, University of Applied Sciences, Basel, 2005. http://www.clockworkcoders.com/oglsl/rt/.

    Google Scholar 

  7. T. D. DeRose, R. N. Goldman, H. Hagen, and S. Mann. Functional composition algorithms via blossoming. ACM Trans. Graph., 12(2):113–135, 1993.

    Article  MATH  Google Scholar 

  8. T. Dokken, T. R. Hagen, and J. M. Hjelmervik. An introduction to general-purpose computing on programmable graphics hardware. In this book.

    Google Scholar 

  9. T. Dokken and V. Skytt. Intersection algorithms for CAGD. In this book.

    Google Scholar 

  10. W. Donnelly. GPU Gems 2, chapter Per-Pixel Displacement Mapping with Distance Functions, pages 123–136. Addison-Wesley, 2005.

    Google Scholar 

  11. T. Duff. Interval arithmetic recursive subdivision for implicit functions and constructive solid geometry. In SIGGRAPH’ 92: Proceedings of the 19th annual conference on Computer graphics and interactive techniques, pages 131–138, New York, NY, USA, 1992. ACM Press.

    Google Scholar 

  12. S. EndraSurf 1.0.5. http://surf.sourceforge.net.

    Google Scholar 

  13. G. Farin. Curves and surfaces for CAGD: a practical guide. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA, 2002.

    Google Scholar 

  14. R. T. Farouki and T. N. T. Goodman. On the optimal stability of Bernstein basis. Mathematics of Computation, 65:1553–1556, 1996.

    Article  MATH  MathSciNet  Google Scholar 

  15. R. Fernando and M. J. Kilgard. The Cg Tutorial: The Definitive Guide to Programmable Real-Time Graphics. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA, 2003.

    Google Scholar 

  16. R. Goldman. Using degenerate Bézier triangles and tetrahedra to subdivide Bézier curves. Computer Aided Design, 14(6):307–311, November 1982.

    Article  Google Scholar 

  17. X. Gu, S. J. Gortler, and H. Hoppe. Geometry images. In SIGGRAPH’ 02: Proceedings of the 29th annual conference on Computer graphics and interactive techniques, pages 355–361, New York, NY, USA, 2002. ACM Press.

    Google Scholar 

  18. J. Hirche, A. Ehlert, S. Guthe, and M. Doggett. Hardware accelerated perpixel displacement mapping. In GI’ 04: Proceedings of the 2004 conference on Graphics interface, pages 153–158, School of Computer Science, University of Waterloo, Waterloo, Ontario, Canada, 2004. Canadian Human-Computer Communications Society.

    Google Scholar 

  19. S. Holzer and O. Labs. Algebraic Geometry and Geometric Modelling, chapter Illustrating the classification of real cubic surfaces, pages 119–134. Mathematics and Visualization. Springer-Verlag, 2006.

    Google Scholar 

  20. S. Holzer and O. Labs. SURFEX 0.89. Technical report, University of Mainz, University of Saarbrücken, 2006. http://www.surfex.AlgebraicSurface.net.

    Google Scholar 

  21. F. Karlsson and C. J. Ljungstedt. Ray tracing fully implemented on programmable graphics hardware. Master’s thesis, Department of Computer Engineering, Chalmers University of Technology, Göteborg, 2004.

    Google Scholar 

  22. C. Loop and J. Blinn. Resolution independent curve rendering using programmable graphics hardware. ACM Trans. Graph., 24(3):1000–1009, 2005.

    Article  Google Scholar 

  23. C. Loop and J. Blinn. Real-time GPU rendering of piecewise algebraic surfaces. ACM Trans. Graph., 25(3):664–670, 2006.

    Article  Google Scholar 

  24. T. Lyche and J. M. Pena. Optimally stable multivariate bases. Advances in Computational Mathematics, 20:149–159, 2004.

    Article  MATH  MathSciNet  Google Scholar 

  25. T. Lyche and K. Scherer. On the p-norm condition number of the multivariate triangular Bernstein basis. J. Comput. Appl. Math., 119(1–2):259–273, 2000.

    Article  MATH  MathSciNet  Google Scholar 

  26. M. D. McCool, Z. Qin, and T. S. Popa. Shader metaprogramming. In SIGGRAPH/Eurographics Graphics Hardware Workshop, pages 57–68, September 2002. revised.

    Google Scholar 

  27. K. Mørken and M. Reimers. An unconditionally convergent method for computing zeros of splines and polynomials. Mathematics of Computation, To appear.

    Google Scholar 

  28. M. Olano. A Programmable Pipeline for Graphics Hardware. PhD thesis, Department of Computer Science, University of North Carolina, Chapel Hill, http://www.cs.unc.edu/olano/papers/dissertation/, April 1998.

    Google Scholar 

  29. M. Olano, A. Lastra, and J. Leech. Procedural primitives in a high performance, hardware accelerated, Z-Buffer renderer. Technical Report Tr97-040, UNC Computer Science Technical Report, 1997.

    Google Scholar 

  30. J. D. Owens, D. Luebke, N. Govindaraju, M. Harris, J. Krüger, A. E. Lefohn, and T. J. Purcell. A survey of general-purpose computation on graphics hardware. In Eurographics 2005, State of the Art Reports, pages 21–51, August 2005.

    Google Scholar 

  31. T. J. Purcell, I. Buck, W. R. Mark, and P. Hanrahan. Ray tracing on programmable graphics hardware. In SIGGRAPH’ 02: Proceedings of the 29th annual conference on Computer graphics and interactive techniques, pages 703–712, New York, NY, USA, 2002. ACM Press.

    Google Scholar 

  32. L. Ramshaw. Blossoming: A connect-the-dots approach to splines. Technical report, Digital Systems Research, 1987.

    Google Scholar 

  33. A. Rockwood, K. Heaton, and T. Davis. Real-time rendering of trimmed surfaces. Computer Graphics, 23(3):107–116, July 1989.

    Article  Google Scholar 

  34. R. J. Rost. OpenGL(R) Shading Language. Addison Wesley Longman Publishing Co., Inc., 2004.

    Google Scholar 

  35. J. Schmittler, S. Woop, D. Wagner, W. J. Paul, and P. Slusallek. Realtime ray tracing of dynamic scenes on an FPGA chip. In HWWS’ 04: Proceedings of the ACM SIGGRAPH/EUROGRAPHICS conference on Graphics hardware, pages 95–106, New York, NY, USA, 2004. ACM Press.

    Google Scholar 

  36. P. J. Schneider. Graphics gems, chapter A Bézier curve-based root-finder, pages 408–415. Academic Press Professional, Inc., San Diego, CA, USA, 1990.

    Google Scholar 

  37. H. P. Seidel. A general subdivision theorem for Bézier triangles, pages 573–581. Academic Press Professional, Inc., San Diego, CA, USA, 1989.

    Google Scholar 

  38. J. M. Snyder. Interval analysis for computer graphics. In SIGGRAPH’ 92: Proceedings of the 19th annual conference on Computer graphics and interactive techniques, pages 121–130, New York, NY, USA, 1992. ACM Press.

    Google Scholar 

  39. M. R. Spencer. Polynomial real root finding in Bernstein form. PhD thesis, Brigham Young University, Provo, UT, USA, 1994.

    Google Scholar 

  40. N. Thrane and L. O. Simonsen. A comparison of acceleration structures for GPU assisted ray tracing. Master’s thesis, Department of Computer Science, University of Aarhus, August 2005.

    Google Scholar 

  41. Y. Uralsky. Practical metaballs and implicit surfaces. Game Developers Conference 2006. http://developer.nvidia.com.

    Google Scholar 

  42. M. Weiler, M. Kraus, and T. Ertl. Hardware-based view-independent cell projection. In VVS’ 02: Proceedings of the 2002 IEEE symposium on Volume visualization and graphics, pages 13–22, Piscataway, NJ, USA, 2002. IEEE Press.

    Google Scholar 

  43. B. Wylie, K. Moreland, L. A. Fisk, and P. Crossno. Tetrahedral projection using vertex shaders. In VVS’ 02: Proceedings of the 2002 IEEE symposium on Volume visualization and graphics, pages 7–12, Piscataway, NJ, USA, 2002. IEEE Press.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Seland, J.S., Dokken, T. (2007). Real-Time Algebraic Surface Visualization. In: Hasle, G., Lie, KA., Quak, E. (eds) Geometric Modelling, Numerical Simulation, and Optimization. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-68783-2_6

Download citation

Publish with us

Policies and ethics