Presentation is loading. Please wait.

Presentation is loading. Please wait.

Procedural Models How to easily generate complex data?

Similar presentations


Presentation on theme: "Procedural Models How to easily generate complex data?"— Presentation transcript:

1 Procedural Models How to easily generate complex data?
Data from parameterized procedure and/or digitized Data amplification Ray trace directly v. convert to polygonal models and use z-buffer

2 Basic Procedural Approaches
composition from primitive shapes extrusion surface of revolution lofting sweep operator

3 Composition Procedurally generated Controlled randomness

4 Extrusion

5 Surface of revolution

6 Lofting

7 Sweep Operator Combines extrusion, lofting, and surface of revolution

8 More sophisticated approaches
CSG Subdivision surfaces Curves & surfaces Fractals Implicit functions

9 CSG: constructive solid geometry
primitive shapes union, difference, intersection tree structure representation Ray trace directly Evaluate to polyhedron with Boolean operators OpenGL rendering using stencil buffer advanced97/notes/node11.html

10 Subdivision surfaces Initial coursely defined geometry
Refine geometry by rounding corners, subdividing faces and edges, smoothing faces What is resulting limit surface? What is continuity of limit surface?

11 Subdivision surfaces Round corners Catmull-Clark Doo-Sabin Loop
Butterfly

12 Catmull-Clark Subdivision

13 Loop Subdivision

14 Curved surface patches
Hermite curve & patches Bezier curve & patches Catmull-Rom spline B-spline

15 Hermite Curve Given: starting and ending points and tangents
Determine cubic equation that satisfies constraints

16 Hermite Patch Given: starting and ending points and tangents
Determine bicubic equation that satisfies constraints

17 Fractal geometry Objects that exhibit similarity under scale
e.g., Koch curve Mathematically curious - continuous, infinite length, nowhere differentiable, bounded

18 Serpinski Gaskets

19 Other fractal shapes Mandelbrot set Coastlines Mountains
statistically self-similar under scale

20 Create mountains Subdivide triangle Displace upward
Reduce amplitude of displacement Recurse on subdivisions

21 Implicit functions & isosurfaces
f(x,y,z) = 0 “density” function distance-based implicit functions Marching Cubes algorithm

22 Marching Cubes : convert to polygons

23 Implicit functions & isosurfaces


Download ppt "Procedural Models How to easily generate complex data?"

Similar presentations


Ads by Google