Curves and Surfaces 2.0

Post on 23-Feb-2016

64 views 0 download

Tags:

description

Curves and Surfaces 2.0. CSE3AGR - Paul Taylor 2009. Basic Surfaces. A surface patch is very similar to the Bezier curves we finished with last week Creating another abstraction!!! S( x,y ) = Fb1, Fb2 So each Point in 3D space exists on 2 curves b1 and b2. 3 Ways to Render. - PowerPoint PPT Presentation

Transcript of Curves and Surfaces 2.0

Curves and Surfaces 2.0

CSE3AGR - Paul Taylor 2009

Basic Surfaces

• A surface patch is very similar to the Bezier curves we finished with last week

• Creating another abstraction!!!– S(x,y) = Fb1, Fb2– So each Point in 3D space exists on 2 curves b1

and b2

3 Ways to Render

1) Generate a mesh of points on the surface- Use the mesh to render Vertexes and Polygons

2) Recursive subdivision down to sub-pixel polygons (RenderMan Style)

3) Render Pixels Directly from the curve function

How to Generate Surface Points

• We can recursively subdivide our Bezier Curve• We can use a Control Mesh to define the

curves which create our Surface

The left image shows the Control Mesh

The right image shows the rendered polygon mesh

• http://web.cs.wpi.edu/~matt/courses/cs563/talks/surface/bez_surf.html

Interactive Bezier Patch

• http://www.math.psu.edu/dlittle/java/parametricequations/beziersurfaces/index.html

That's enough Surfaces for now!

Back to the Curves! Joy!

Rational Bezier Curves

http://en.wikipedia.org/wiki/File:Rational_Bezier_curve-conic_sections.svgWe are talking about control points with weightsThese guys can exactly represent conic shapesDownside is complexity

Cubic Bezier-Splines

• Dot – to – dot– We did C0 and C1 Continuity with our Bezier Curves– But C2 Continuity alluded us!– Attaining C2 will require us to learn a 3rd Type of

Curve..............

NURBSNon-uniform Rational Bezier Spline

• Yes Rational = weighted control points– Non Rational would be an URBS (no one uses

URBS!!!)

Good things about NURBS

• Invariant with Translations and rotations on control points

• Being rational they can represent conics• Flexible• Relatively quick (in mathematical terms) to

calculate

Knots & Knot Vectors

• Where one control point looses its effect, and another new control point starts affecting the curve.

http://www.shodor.org/interactivate/activities/GraphSketcher/?version=skip1&browser=unknown

NURB Basis Matrix1/6(-x^3 +3x^2 -3x +1)1/6(3x^3 -6x^2 +4)1/6(-3x^3 +3x^2 +3x +1)1/6(x^3)

http://upload.wikimedia.org/math/c/a/0/ca03153859eff1142aa9a1c1b580b716.png

NURBS don’t start at P0!!!!

NURBS BEZIER

Knots or Control Points?

• When modifying your NURBS there are two important ways

• Knots– Good for moving specific parts of your curve

• Control points– Good for changing the shape of the curve a bit

http://en.wikipedia.org/wiki/File:Spline01.gif

Knot Insertion

• It is possible to insert a new knot (generating another control point without disturbing the curve!!!

• Knot insertion can be used to allow discontinuity in the curve too!!!

Start and End Values

• Generating start and end points• 0,0,0,1,2,3,4,4,4• Now we have a curve in the form of a Bezier• You must limit the number of repeat knots to

the same as the Degree of the curve!

B-Spline Surfaces

• Bezier Surface Patches have the same pros/cons as Bezier curves– Simple to implement– Hard to join at C2 continuity

NURBS Surfaces

• Again we are basically extruding the Curve functionality over a 3D surface.

Generating Edge Points

• http://www.doc.ic.ac.uk/~dfg/AndysSplineTutorial/BSplineSurface.html

Again the Extra Knots principle is used to generate start and End PointsNote: If you are blending to another Spline you don’t need the End Points.

- The overlap in the Control points will connect the curves!

• http://www.sharecg.com/images/medium/8599.png

The Stupid Teapot

• This Teapot consists of 32 bi-cubic Bezier Patches, specified by 306 vertices.

• 12 Patches define the Body of the pot, 4 for the spout, 8 for the lid, and the last 4 define the bottom.

Stupid Teapot facts!

• The Teapot appears in:– Toy Story (The teapot scene)– Monsters Inc– The Simpsons 3D Episode

Given it’s global use the teapot has even been called the 6th Platonic Solid

• http://design.osu.edu/carlson/history/images/small/CACMcover.512.jpg

Build your own teapot!

• http://www.holmes3d.net/graphics/teapot/teapot.off

• Pimping your teapot does NOT make it cool!

Offline Rendering

• http://www.seanet.com/~myandper/gallery.htm

200 Light SourcesRadiosity done with 4.8 million photons.From “Ratatouille”

Monsters Inc Scene

• 500 Million Triangles

• http://www.seanet.com/~myandper/gallery.htm

GameasutraSlashdot for Game Dev

• http://www.gamasutra.com/

References

• http://en.wikipedia.org/wiki/NURBS#Technical_specifications

• http://en.wikipedia.org/wiki/B-spline

The EndAC/DC Tix Monday 25th May 9am

• Coming in Feb 2010