Download presentation
Presentation is loading. Please wait.
Published byAbner Horn Modified over 9 years ago
1
Per-Pixel Evaluation of Parametric Surfaces on GPU ACM Workshop on General Purpose Computing on Graphics Processors Los Angeles, USA, 7-8 August, 2004 Takashi Kanai Keio University SFC Yusuke Yasui ASTOM Inc.
2
Per-Pixel Evaluation of Parametric Surfaces on GPU ACM SIGGRAPH 2004 Poster Los Angeles, USA, 8-12 August, 2004 Takashi Kanai Keio University SFC Yusuke Yasui ASTOM Inc.
3
Surface Rendering In the rendering of parametric surfaces, in general, we often use a polygon to draw the approximation of its original surface. However, such rendering of a polygon does not represent its original surface exactly. This occurs notably in the case that a polygon is coarse or that a view position becomes closer to a surface.
4
Our Contribution Use of GPU (Programmable Graphics Hardware) Fragment-based evaluation (position, derivatives) of parametric surfaces on GPU Robust and high-quality evaluation Interactive computation
5
Parametric Surfaces on GPU Linear form of parametric surfaces (Bezier, B-spline, Coons, … ) Control points stored to texture(s) Basis functions directly provided in a fragment program
6
Parametric Form of Subdivision Surface [Stam98] u,v n,k ( n: subdivision level, k: domain id) 1 st derivatives of both u, v directions can also be computed Bi-cubic B-spline basis functions Subdivision Surface on GPU #1 eigenvalues for A subdivision matrix Coefficients of eigenbasis functions Control points
7
Implementation on GPU : computed in advance Computed for all patterns of n, k ( n = 1…15, k = 1, 2, 3. … 45 patterns) → stored in a texture In the fragment program, Fetch 16 control points from a texture by n, k Basis functions … directly computed in FP Linear combination of basis functions and control points Subdivision Surface on GPU #2
8
Texture Storage Subdivision Surface on GPU #3
9
Texture Storage (Close-up View) Subdivision Surface on GPU #3’
10
Algorithm Overview Subdivided Polygon - parameters u,v - face id Rasterization Fragments fragment program #1 - Compute n and k from u,v - Fetch control points from a texture - Compute basis functions → surface position fragment program #2 - Compute n and k - Fetch control points - Compute basis functions → derivatives, normal → output
11
Application: Reflection Lines [Yasui and Kanai, SMI 2004] For each fragment, 1. Compute a reflection vector 2. Compute an intersection point 3. Assign a color to a fragment 4. A line on a surface with different color … a reflection line
12
Results wireframe polygon-based fragment-based
13
Polygon-based Pixel-based
14
Discussion Position of a fragment Position of parametric surface computed on GPU Current solution: input polygon: better approximation of a surface run fragment program with bigger size of image
15
Conclusion and Future Work Conclusion Fragment-based evaluation of parametric surfaces on GPU Robust computation High-quality even for low polygons Interactive computation Future Work The number of instruction sets in a fragment program 1,024 (GF 5x00) → 65,000 (GF 6x00) Processing on a single fragment program will be possible (cuurrently … two FPs) in the near future.
16
Contact & References Takashi Kanai Keio University SFC E-mail: kanai@sfc.keio.ac.jp Web: http://www.sfc.keio.ac.jp/~kanai/ References Yusuke Yasui and Takashi Kanai, "Surface Quality Assessment of Subdivision Surfaces on Programmable Graphics Hardware", Proc. International Conference on Shape Modeling and Applications 2004 (Genova, Italy, 7-9 June 2004), pp.129-136, 2004.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.