Download presentation

1
**Content Subdivision First some basics (control point polygon, mesh)**

Smooth - Triangle Some Polygon techniques(Strips, fans, meshes) Subdivision Linear/ Curves Subdivision Surfaces -Doo-Sabin -Catmull-Clark -Loop Scheme

2
**Basics(Control Polygon)**

3
Basics(Control Mesh)

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 surfaces Why??? 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.

9
**Tessellation(Ear Clipping)**

10
**Triangle Strips Serie of connected triangles**

No need for sending each triangle. Only needs to send one vertex So 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 process Subdivision can be used for Modelling, animation and even for colours and textures.

13
**Subdivision modelling**

What is Subdivision?

14
Subdivision Subdivision 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 Curves Chaikin’s scheme: Qi = 3/4Pi + 1/4Pi+1 Ri = 1/4Pi + 3/4Pi+1 P0 -> P1 ->P2 -> P (P =Polygon) Approximation convex hull Works on open and closed polygons Corner cutting(low pass filter) twice as much vertices after each step new vertices are connected.

17
**Subdivision Curves (Example)**

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

21
**Subdivision Surfaces(4)**

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 approximation Convex polyhedral

23
Doo-Sabin Scheme(1) For each vertex of each face there will be an new vertex created For each face, connect the new points that have been generated. Connect the new vertices to the adjacent ones

24
Doo-Sabin Scheme(2)

25
**Doo Sabin Scheme (example)**

Every Valence = 4 note the triangular facets Approximating

26
**Catmull-Clark Sheme(1)**

For each face of the mesh, generate the new face points Generate the new edge points Calculate the new vertex points The 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

27
**Catmull-Clark Scheme(2)**

28
**Catmull-Clark Scheme (example)**

Every face has 4 control points Vertices retain their valence First order continuity at a irregular vertex Approximating Subdivision 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 triangles phase 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 points Next Beta-function give C2 at regular vertices

32
**Loop Scheme(3) First formula calculates directly a limit point**

Second formula calculates a limit tangent use cross product to get the normal, n = tu x tv With many subdivisions a model shrinks, a solution might be to increase more vertices at the control mesh

Similar presentations

© 2021 SlidePlayer.com Inc.

All rights reserved.

To make this website work, we log user data and share it with processors. To use this website, you must agree to our Privacy Policy, including cookie policy.

Ads by Google