Download presentation
Presentation is loading. Please wait.
Published byNeal Morrison Modified over 9 years ago
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.