4 Smooth - Triangle(1) Curves are described with equations curves: -Compact notations, -Scalable, -Smooth and continuous, -Easy for collision detection and animation; -Saving in memory -Curves use less matrix transformation then similar done with a mesh -Potential for real-time rendering and simple code
5 Smooth - Triangle(2) Basic Atom Graphics cards do not have build-in support for curves. Curves are not generous enough for computing shadow volume which can be more easily done with the basic atom.
6 Tessellation Splitting a surface into a set of polygons. Also possible for curved surfacesWhy??? Hardware!Any surface can be made out of triangles.With triangles it is alluded as Triangulation.Useful to handle concave polygons.Important for catching shadows and light.
7 Tessellation(2) Avoid long thin triangles for shading. A Tessellator first projects its 3D polygon to a 2D plane.Best plane is where polygon with the largest area.Calculation of area where the magnitude of the normal has the largest length and throw away that direction.
8 Tessellation(3) Ear clipping O(n2) Look at triangles with vertices i, (i+1), (i+2) where modulo n check if the line segments from at vertices i and (i+2) intersects line segments.Other problems might occur when polygons do not exhibit from one single outline. When they consists of holes for example. Solution could be to connects the holes with the exterior bounds so that one outline emerges.
10 Triangle Strips Serie of connected triangles No need for sending each triangle.Only needs to send one vertexSo rendering will be done fast.(v0, v1, v2, …, vn-1)
11 Triangle Fan Same Idea as Strips Same performance Nvidea prefers Strips over Fans because of the driver optimisation.(v0, v1, v2, …, vn-1)
12 Subdivision modelling What is Subdivision?Relative new(used in movies)-Creating Attractive shapes(usually smooth)-From a basic to nice shape !-from an arbitrary mesh-the limit of an infinite refinement processSubdivision can be used for Modelling, animation and even for colours and textures.
14 SubdivisionSubdivision Can be roughly be categorised into Interpolating and approximating schemes.You start with an initial polygonal mesh which often has few vertices.By repetitively applying the subdivision procedure to the initial mesh, we generate a sequence of meshes that converges to a resulting surface.
15 Subdivision(Linear) Piecewise Linear 1-Dimensional X = 1/2(Xleft + Xright)Y = 1/2(Yleft + Yright)
16 Subdivision CurvesChaikin’s scheme: Qi = 3/4Pi + 1/4Pi+1 Ri = 1/4Pi + 3/4Pi+1P0 -> P1 ->P2 -> P (P =Polygon)Approximationconvex hullWorks on open and closed polygonsCorner cutting(low pass filter)twice as much verticesafter each step new vertices are connected.
18 Subdivision Surfaces(1) Powerful Paradigm !!!Infinite level of detail (LOD)original surface is compact!Easy implementation, but analysis not.Works with polygons !
19 Subdivision Surfaces(2) Two phase Process 1) Refinement phase 2) Smoothing Phase
20 Subdivision Surfaces(3) The details specify the scheme and thus the shape -splitting can be done in different ways. -Whether the surface is approximating or interpolating.A subdivision scheme can be specified by: -(non)Stationary -uniform, same rules for each vertex and edge (smoothing phase) -triangle/polygon
22 Subdivision Surfaces(5) Regular/ irregular vertices.Conditions -Subdivision should be efficient thus few floating point operations. -The region of a of a control point should be finite. -Subdivision should achieve a order of smoothness thus C1 or C2.Shrinking at approximationConvex polyhedral
23 Doo-Sabin Scheme(1)For each vertex of each face there will be an new vertex createdFor each face, connect the new points that have been generated.Connect the new vertices to the adjacent ones
25 Doo Sabin Scheme (example) Every Valence = 4note the triangular facetsApproximating
26 Catmull-Clark Sheme(1) For each face of the mesh, generate the new face pointsGenerate the new edge pointsCalculate the new vertex pointsThe mesh is reconnected by the following method. -Each new face point is connected to the new edge points of the edges defining the original face. -Each new vertex point is connected to the new edge points of all original edges incident on the original vertex point.Catmull-Clark works with quad meshes
28 Catmull-Clark Scheme (example) Every face has 4 control pointsVertices retain their valenceFirst order continuity at a irregular vertexApproximatingSubdivision can be adapted at certain places where more detail is needed.
29 Loop-Scheme(1) The Loop scheme is defined for triangle meshes only Every triangle will be split in 4 new triangles.m triangles, with n steps, 4n m triangles.Most edges are shared by two trianglesphase 1: refinement.Phase 2: fix geometry look at mesh not just a triangle
30 Loop Scheme(2) First formula updates existing vertices Second updates the new vertices
31 Loop Scheme(3) Valence = 6 (regular) Mask (draw) New point should lie on the neighbourhood of the weighted pointsNext Beta-function give C2 at regular vertices
32 Loop Scheme(3) First formula calculates directly a limit point Second formula calculates a limit tangentuse cross product to get the normal, n = tu x tvWith many subdivisions a model shrinks, a solution might be to increase more vertices at the control mesh