Presentation is loading. Please wait.

Presentation is loading. Please wait.

Computer Animation Rick Parent Computer Animation Algorithms and Techniques Special Models.

Similar presentations


Presentation on theme: "Computer Animation Rick Parent Computer Animation Algorithms and Techniques Special Models."— Presentation transcript:

1 Computer Animation Rick Parent Computer Animation Algorithms and Techniques Special Models

2 Computer Animation Rick Parent L-Systems

3 Computer Animation Rick Parent L-Systems Branching Structures Botany Display geometric substitution turtle graphics Animating plants, animals

4 Computer Animation Rick Parent Plant examples http://algorithmicbotany.org/papers/#abop

5 Computer Animation Rick Parent As a Formal Grammar Related to fractals recursive branching structure often self-similar under scale Grammar parallel rewriting system context-free (in basic version)

6 Computer Animation Rick Parent Historical development Aristid Lindenmayer botanist the ‘L’ in L-systems Przemyslaw Prusinkiewicz U. of Calgary introduced L-systems to graphics The Algorithmic Beauty of Plants

7 Computer Animation Rick Parent DOL-systems Basic version Deterministic Context-free rules words

8 Computer Animation Rick Parent Geometric interpretation Geometric substitution symbol -> geometric element Turtle graphics symbol -> drawing command

9 Computer Animation Rick Parent Geometric substitution

10 Computer Animation Rick Parent Turtle graphics F move forward w/ drawing f move forward w/o drawing + turn left -Turn right rules words S -> ABA A -> FF B -> TT T->-F++F- S ABA FFTTFF FF-F++F--F++F-FF

11 Computer Animation Rick Parent Turtle graphics FF-F++F--F++F-FF

12 Computer Animation Rick Parent Botany: terms Stems, roots, buds, leaves, flowers Nodes, internodes Herbaceous v. woody Dichotomous, monopodial Lateral bud Leavs from buds: alternate, opposite whorled Cell influence: lineage, tropisms, obstacles Discrete components: apices, internodes, leaves, flowers Finite number of components Components represented by symbols

13 Computer Animation Rick Parent Bracketed L-Systems S->FAF A->[+FBF] A->F B->[-FBF] B->F Also add non-determinism database amplification procedural models Brackets -> branch

14 Computer Animation Rick Parent Example S->FAF A->[+FBF] A->F B->[-FBF] B->F

15 Computer Animation Rick Parent More examples S->FAF A->[+FBF] A->F B->[-FBF] B->F

16 Computer Animation Rick Parent Stochastic L-System Add probabilities to non-deterministic L-systems Controls average termination level

17 Computer Animation Rick Parent Context-sensitive Better control of rule application

18 Computer Animation Rick Parent Animating plant growth Changes in topology Elongation of existing structures Changing angles, lengths

19 Computer Animation Rick Parent Animating branches

20 Computer Animation Rick Parent Parametric L-systems

21 Computer Animation Rick Parent Context-sensitive, timed w/ conditions

22 Computer Animation Rick Parent Open L-systems environmental interaction Plant Reception of information from environment Transport and processing of info inside plant Response in form of growth changes Environment Perception of plants actions Simulate processes of environment (e.g. light propagation) Present modified environment to plant

23 Computer Animation Rick Parent Open L-systems environmental interaction Add construct to L-systems ?E(x 1,x 2,…,x m ) See paper by Mech and Prusinkiewicz for details (a bit simply) Query appears in production - sends message to environment which then returns value to production

24 Computer Animation Rick Parent Implicit Surfaces

25 Computer Animation Rick Parent Implicit Surfaces Surface is only *implicitly* defined explicit parametric

26 Computer Animation Rick Parent Implicit Surfaces Basic formulation Animation Collision detection Deforming implicits Level set methods

27 Computer Animation Rick Parent Implicit Surfaces Usually define so: surface = 0 inside <0 outside > 0

28 Computer Animation Rick Parent Displaying Implicit Surfaces Marching cubes embed in 3D volume of cells intersect cell edges with surface define polygonal pieces from cell intercepts see examples a few slides later Ray Tracing Search along ray to find zero point

29 Computer Animation Rick Parent Metaball spherical, distance-based implicit In isolation: a sphere d T

30 Computer Animation Rick Parent Multiple Implicits Sum overlapped implicits - with weights

31 Computer Animation Rick Parent Implicit Surfaces

32 Computer Animation Rick Parent Topology smoothly changes http://local.wasp.uwa.edu.au/~pbourke/modelling_rendering/implicitsurf/

33 Computer Animation Rick Parent Signed-distance-based prmitives From Point Edge Face Polyhedron

34 Computer Animation Rick Parent Implicit Surfaces

35 Computer Animation Rick Parent Testing - good for collision detection ?

36 Computer Animation Rick Parent Polyhedra embedded in implicits

37 Computer Animation Rick Parent Implicit Surfaces

38 Computer Animation Rick Parent Colliding Implicit Surfaces

39 Computer Animation Rick Parent Colliding Implicit Surfaces

40 Computer Animation Rick Parent Level Sets

41 Computer Animation Rick Parent Level Set Methods Adds dynamics to implicit surfaces Usually operate on signed distance function Isosurface updated according to velocity field defined over interface Tracing particles on curve is problematic

42 Computer Animation Rick Parent Fundamental Idea Instead of evolving curve C(t) = 0 Evolve surface, U, that curve is a level set of Common surface used is signed distance function U(x,y) = distance to nearest point in C If U evolves according to U t, C will evolve by C t

43 Computer Animation Rick Parent Level Set - Fundamental idea

44 Computer Animation Rick Parent Front Propogation Isosurface advects Can have constant magnitude Normally in direction of gradient Or use magnitude of curvature

45 Computer Animation Rick Parent Level Set Methods

46 Computer Animation Rick Parent Front Propogation Velocity can depend on: Local properties (e.g. curvature) Global properties (e.g. position of front) Properites Independent of shape (e.g. transport function) More generally

47 Computer Animation Rick Parent Level Set Equation V - velocity field Convection equation

48 Computer Animation Rick Parent Level Set Equation F can be: Constant Function of gradient Function of curvature

49 Computer Animation Rick Parent Implementation Use grid to hold distance function http://www.cs.cornell.edu/Courses/cs664/2005fa/Lectures/lecture24.pdf

50 Computer Animation Rick Parent Narrow band

51 Computer Animation Rick Parent Subdivision surfaces

52 Computer Animation Rick Parent Subdivision surfaces Use coarse polyhedron as general shape Refine to generate smooth surface Issue: what is the limit surface? Gives high-level shape control By its nature is a level-of-detail representation Does is shrink or expand the object?

53 Computer Animation Rick Parent Design using Subdivision

54 Computer Animation Rick Parent Simple Subdivision Cut off each corner of polyhedron and replace with face

55 Computer Animation Rick Parent Subdivision surfaces Redefine faces

56 Computer Animation Rick Parent Subdivision surfaces But doesn’t smooth large flat areas

57 Computer Animation Rick Parent Various Subdivision schemes Following images are from: http://www.holmes3d.net/graphics/subdivision/ Doo-Sabin Catmull-Clark Loop Butterfly (not shown below)

58 Computer Animation Rick Parent Edge point - average of 2 edge vertices and 2 new face points Face point - for each face, average of vertices Doo-Sabin Subdivision Vertex point - for each face, average the vertex, the face point and two midpoints

59 Computer Animation Rick Parent Doo-Sabin Subdivision

60 Computer Animation Rick Parent Catmull-Clark Subdivision Face point - for each face, average of vertices Vertex point - (n-3/n)*vertex + 1/n average of face points + 2/n midpoints of edges Edge point - average of 2 edge vertices and 2 new face points

61 Computer Animation Rick Parent Catmull-Clark Subdivision

62 Computer Animation Rick Parent Loop Subdivision Vertex point - (1-n)*s*vertex + s*(sum of neighboring vertices) For n=3, s = 3/16 Else s = (1/n)(5/8-(3/8 + 1/4cose(2Pi/n))^2) Edge point - = (3/8)*2 edge vertices + (1/8)*2 triangle vertices Only works on triangles

63 Computer Animation Rick Parent Loop Subdivision


Download ppt "Computer Animation Rick Parent Computer Animation Algorithms and Techniques Special Models."

Similar presentations


Ads by Google