lecture 30 of 41 animation 3 of 3: inverse kinematics...

40
Computing & Information Sciences Kansas State University CIS 536/636 Introduction to Computer Graphics Lecture 30 of 41 William H. Hsu Department of Computing and Information Sciences, KSU KSOL course pages: http://bit.ly/hGvXlH / http://bit.ly/eVizrE Public mirror web site: http://www.kddresearch.org/Courses/CIS636 Instructor home page: http://www.cis.ksu.edu/~bhsu Readings: Last class: Particle System Handout Today: §5.3, Eberly 2 e – see http://bit.ly/ieUq45; CGA Handout Next class: Chapter 14, Eberly 2 e Reference: Wikipedia, Inverse Kinematics , http://bit.ly/hr8r2u Reference: Wikipedia, Ragdoll Physics, http://bit.ly/3oggUZ Animation 3 of 3: Inverse Kinematics Control & Ragdoll Physics Lecture 30 of 41

Upload: others

Post on 22-Oct-2019

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

William H. Hsu

Department of Computing and Information Sciences, KSU

KSOL course pages: http://bit.ly/hGvXlH / http://bit.ly/eVizrE

Public mirror web site: http://www.kddresearch.org/Courses/CIS636

Instructor home page: http://www.cis.ksu.edu/~bhsu

Readings:

Last class: Particle System Handout

Today: §5.3, Eberly 2e – see http://bit.ly/ieUq45; CGA Handout

Next class: Chapter 14, Eberly 2e

Reference: Wikipedia, Inverse Kinematics, http://bit.ly/hr8r2u

Reference: Wikipedia, Ragdoll Physics, http://bit.ly/3oggUZ

Animation 3 of 3: Inverse KinematicsControl & Ragdoll Physics

Lecture 30 of 41

Page 2: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

2

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Reading for Last Class: Particle System Handout

Reading for Today: §5.3, Eberly 2e; CGA Handout

Reading for Next Class: Chapter 14, Eberly 2e

Last Time: Lab on Particle Systems; Dissection of Working Program

Today: Animation Part 3 of 3 – Inverse Kinematics

Autonomous agents (robots, swarms) vs. hand-animated movement

Forward kinematics and control

Inverse kinematics for autonomous movement in robotics

Jacobians and iterative minimization models

Rag doll physics

End of Material on: Particle Systems, Collisions, CGA

Also Conclusion of Physically-Based Modeling (PBM)

Next Class: Ray Tracing, Part 1 of 2

Vectors: light/shadow (L), reflected (R), transmitted/refracted (T)

Basic recursive ray tracing: ray trees

Lecture Outline

Page 3: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

3

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Where We Are

Page 4: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

4

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Acknowledgements:Inverse Kinematics

Steve RotenbergVisiting Lecturer

Graphics Lab

University of California – San Diego

CEO/Chief Scientist, PixelActive

http://graphics.ucsd.edu

David C. BroganVisiting Assistant Professor, Computer Science Department, University of Virginia

http://www.cs.virginia.edu/~dbrogan/

Susquehanna International Group (SIG)

http://www.sig.com

Renata MelamudPh.D. Candidate

Mechanical Engineering Department

Stanford University

http://micromachine.stanford.edu/~rmelamud/

Page 5: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

5

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Review [1]:Uses of Particle Systems

Adapted from slides 2008 R. Malhotra, CSU San MarcosCS 536 Intro to 3-D Game Graphics, Spring 2008 – http://bit.ly/hNhUuE

Explosions

Large

Fireworks

Fire

Vapor

Clouds

Dust

Fog

Smoke

Contrails

Water

Waterfalls

Streams

Plants

Command & Conquer 4: Tiberian Twilight© 2010 Electronic Arts, Inc.

Wikipedia: http://bit.ly/gFGMjO

Page 6: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

6

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Spacewar! (1962) Used Pixel Clouds as Explosions

Asteroids (1979) First “Physically-Based” PS/Collision Model in Games

Star Trek II (1983) Particle Fountain: http://youtu.be/Qe9qSLYK5q4

Hey, Hey, 16K © 2000 M. J. Hibbett, Video © 2004 R. Manuel

http://youtu.be/Ts96J7HhO28

Review [2]:History of Particle Systems

Adapted from slides 2008 R. Malhotra, CSU San MarcosCS 536 Intro to 3-D Game Graphics, Spring 2008 – http://bit.ly/hNhUuE

Asteroids © 1979 L. Rains & E. LoggWikipedia: http://bit.ly/hwfEQk

Spacewar! © 1962 S. Russell et al.Wikipedia: http://bit.ly/eaiWUW

Star Trek II © 1983 ParamountWikipedia: http://bit.ly/eXwrhb

Page 7: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

7

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Review [3]:Definition & Physically-Based Model

Adapted from slides 2008 R. Malhotra, CSU San MarcosCS 536 Intro to 3-D Game Graphics, Spring 2008 – http://bit.ly/hNhUuE

Page 8: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

8

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Review [4]:More Attributes of Particles

Adapted from slides 2008 R. Malhotra, CSU San MarcosCS 536 Intro to 3-D Game Graphics, Spring 2008 – http://bit.ly/hNhUuE

Page 9: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

9

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Review [5]:Four Ways to Represent Particles

Adapted from slides 2008 R. Malhotra, CSU San MarcosCS 536 Intro to 3-D Game Graphics, Spring 2008 – http://bit.ly/hNhUuE

Page 10: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

10

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Kinematics

Adapted from slides 2000 – 2005 D. Brogan, University of VirginiaCS 551, Advanced CG & Animation – http://bit.ly/hUXrqd

Page 11: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

11

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Degrees of Freedom (DOFs) [1]:Translational & Rotational

Adapted from slides 2000 – 2005 D. Brogan, University of VirginiaCS 551, Advanced CG & Animation – http://bit.ly/hUXrqd

Page 12: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

12

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Degrees of Freedom (DOFs) [2]:Robot Arm

Adapted from slides 2000 – 2005 D. Brogan, University of VirginiaCS 551, Advanced CG & Animation – http://bit.ly/hUXrqd

Page 13: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

13

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Configuration Space

Adapted from slides 2000 – 2005 D. Brogan, University of VirginiaCS 551, Advanced CG & Animation – http://bit.ly/hUXrqd

Page 14: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

14

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Work Spacevs. Configuration Space

Adapted from slides 2000 – 2005 D. Brogan, University of VirginiaCS 551, Advanced CG & Animation – http://bit.ly/hUXrqd

Page 15: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

15

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

More Examples

Adapted from slides 2000 – 2005 D. Brogan, University of VirginiaCS 551, Advanced CG & Animation – http://bit.ly/hUXrqd

Page 16: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

16

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Controlled DOFs

Adapted from slides 2000 – 2005 D. Brogan, University of VirginiaCS 551, Advanced CG & Animation – http://bit.ly/hUXrqd

Page 17: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

17

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Hierarchical Kinetic Modeling

Adapted from slides 2000 – 2005 D. Brogan, University of VirginiaCS 551, Advanced CG & Animation – http://bit.ly/hUXrqd

Page 18: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

18

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Robot Parts & Terms

Adapted from slides 2000 – 2005 D. Brogan, University of VirginiaCS 551, Advanced CG & Animation – http://bit.ly/hUXrqd

Page 19: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

19

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Example:Puma 560 Robot

Adapted from slides 2002 R. Melamud, Stanford UniversityMirrored at CMU 16-311 Introduction to Robotics, http://generalrobotics.org

Wikipedia, Programmable Universal Machine for Assembly (PUMA): http://bit.ly/fBMRaM

Page 20: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

20

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Joint Types:Revolute, Prismatic, Spherical

Adapted from slides 2002 R. Melamud, Stanford UniversityMirrored at CMU 16-311 Introduction to Robotics, http://generalrobotics.org

Page 21: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

21

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

More Complex Joints

Adapted from slides 2000 – 2005 D. Brogan, University of VirginiaCS 551, Advanced CG & Animation – http://bit.ly/hUXrqd

Page 22: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

22

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Hierarchical Representation

Adapted from slides 2000 – 2005 D. Brogan, University of VirginiaCS 551, Advanced CG & Animation – http://bit.ly/hUXrqd

Page 23: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

23

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Forward vs. Inverse Kinematics

Adapted from slides 2000 – 2005 D. Brogan, University of VirginiaCS 551, Advanced CG & Animation – http://bit.ly/hUXrqd

Page 24: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

24

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Forward Kinematics [1]:Definition & General Approach

Adapted from slides 2000 – 2005 D. Brogan, University of VirginiaCS 551, Advanced CG & Animation – http://bit.ly/hUXrqd

Page 25: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

25

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Forward Kinematics [2]:Illustration

Adapted from slides 2002 K. J. Choi, Seoul National UniversityGraphics and Media Lab (http://graphics.snu.ac.kr) – mirrored at: http://bit.ly/hnzSAN

Base

12 End Effector

3?

)f(θx

Choi

Φe fRotenberg

Page 26: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

26

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Forward Kinematics [3]:Joint Angles to Bone Coordinates

Adapted from slides 2004 – 2005 S. Rotenberg, UCSDCSE169: Computer Animation, Winter 2005 – http://bit.ly/f0ViAN

Page 27: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

27

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Inverse Kinematics [1]:Definition & General Approach

Adapted from slides 2000 – 2005 D. Brogan, University of VirginiaCS 551, Advanced CG & Animation – http://bit.ly/hUXrqd

Page 28: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

28

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Inverse Kinematics [2]:Illustration

Adapted from slides 2002 K. J. Choi, Seoul National UniversityGraphics and Media Lab (http://graphics.snu.ac.kr) – mirrored at: http://bit.ly/hnzSAN

Base

12 3

End Effector??

For more on characters & IK, see:Advanced Topics in CG Lecture 05

)(f 1 xθ

Choi Rotenberg

eΦ 1 f

Page 29: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

29

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Inverse Kinematics [3]:Demos

© 2008 T. Komura, H. S. Lim, & R. W. H. Lauhttp://youtu.be/FJTBMnP6oCM

© 2008 M. Kinzelmanhttp://youtu.be/l52yZ491kPo

© 2007 A. Brownhttp://youtu.be/6JdLOLazJJ0

© 2011 K. Iyerhttp://youtu.be/YvRBWIRAPsE

Page 30: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

30

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Inverse Kinematics [4]:Analytic Solution for 2-Link Case

2

1

a1

a2

O2

O1

O0

x1

x0

x2

y1

y2

y0

(x,y)

2

22

221

22

22222

211

2

222

21

22

22222

21

22

21

2221

22

21

222122

21

22

21

22

2

22122

21

22

tan2

2

2

cos1

cos1

2tan

accuracygreater for

2cos

)cos(2

aayx

yxaa

aayx

yxaa

aayxaa

aayxaa

aa

aayx

aaaayx

• Two solutions: elbow up & elbow down

Adapted from slides 2000 – 2005 D. Brogan, University of VirginiaCS 551, Advanced CG & Animation – http://bit.ly/hUXrqd

Page 31: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

31

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Inverse Kinematics [5]:Iterative IK Solutions

Adapted from slides 2000 – 2005 D. Brogan, University of VirginiaCS 551, Advanced CG & Animation – http://bit.ly/hUXrqd

Page 32: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

32

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Jacobian [1]:6x6 DOF Case

Adapted from slides 2000 – 2005 D. Brogan, University of VirginiaCS 551, Advanced CG & Animation – http://bit.ly/hUXrqd

Page 33: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

33

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Jacobian [2]:Solution

Adapted from slides 2000 – 2005 D. Brogan, University of VirginiaCS 551, Advanced CG & Animation – http://bit.ly/hUXrqd

Page 34: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

34

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Another IK Problem:Revolute & Prismatic Joints Combined

Adapted from slides 2002 R. Melamud, Stanford UniversityMirrored at CMU 16-311 Introduction to Robotics, http://generalrobotics.org

1

X

Y

S

(x , y)

Finding :

)x

yarctan(θ

More Specifically:

)x

y(2arctanθ arctan2() specifies

that it’s in the first quadrant

Finding S:

)y(xS 22

Page 35: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

35

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Ragdoll Physics [1]:Definition

Type of Procedural Animation

Automatically generates CGA directives (rotations)

Based on simulation

Rigid-body dynamics

Articulated Figure

Gravity

No autonomous movement

Used for inert body

Usually: character death (car impact, falling body, etc.)

Less often: unconscious, paralyzed character

Collisions with Multiple Bodies

Inter-character

Character-object

Falling Bodies © 1997 – 2001 Animats http://www.animats.com

Page 36: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

36

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Ragdoll Physics [2]:Demos

© 2006 P. Pelthttp://youtu.be/6JdLOLazJJ0

See also: http://youtu.be/5_QIsI0fyaU

© 2007 N. Picouet http://youtu.be/ohNqCb--aSs

© 2010 M. Heinzen (Arkaein) http://bit.ly/gUj9Su / http://youtu.be/FJTBMnP6oCM

© 2009 M. E. Cerquonihttp://youtu.be/uW_DK2qvKv8

Page 37: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

37

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Physically-Based Modeling (PBM) [1]:Looking Back

Particle Dynamics

Emitters

0-D (points), 1-D (lines), 2-D (planes, discs, cross-sections)

e.g., fireworks (0-D); fountains (0/1/2-D); smokestacks, jets (2-D)

Simulation: birth-death process, functions of particle age/trajectory

Rigid-Body Dynamics

Constrained systems of connected parts

Examples: falling rocks, colliding vehicles, rag dolls

Articulated Figures

More References

ACM, Intro to Physically-Based Modeling : http://bit.ly/hhQvXd

Wikipedia, Physics Engine: http://bit.ly/h4PIRt

Wikipedia, N-Body Problem: http://bit.ly/1ayWwe

Rocks fall Everyone dies

Page 38: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

38

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Physically-Based Modeling (PBM) [2]:Applications in Movies & Games

Star Wars Episode I: The Phantom Menace © 1999 Lucasfilm, Inc. http://youtu.be/d4PSMXUCi-0

Page 39: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

39

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Summary

Reading for Today: §5.3, Eberly 2e; CGA Handout

Reading for Next Class: Chapter 14, Eberly 2e

Last Class: Lab on Particle Systems; Dissection of Working Program

Today: Computer-Generated Animation Concluded

CGA of autonomous agents (robots, swarms) vs. animation by hand

Degrees of freedom (DOFs) and kinds of joints

Forward kinematics (FK)

Forward problem illustrated

Control problem

Inverse kinematics (IK)

IK (finding angles) vs. mechanical problem of finding forces

Analytical models

Iterative models (Jacobian-based)

Ragdoll physics

Next Class: Ray Tracing, Part 1 of 2

Page 40: Lecture 30 of 41 Animation 3 of 3: Inverse Kinematics ...kdd.cs.ksu.edu/Courses/CIS536/Lectures/Slides/Lecture-30-Main_full.pdfComputing & Information Sciences Kansas State University

Computing & Information SciencesKansas State University

40

CIS 536/636

Introduction to Computer GraphicsLecture 30 of 41

Terminology

Emitter – Point, Line, Plane or Region from which Particles Originate

Particle Fountain – Particle System with Directional Emitter

Sprite (Wikipedia: http://bit.ly/gyInPg)

Definition: 2-D image or animation made part of larger scene

Point sprite (Saar & Rotzler, 2008): http://bit.ly/fkjBPY

Joints: Parts of Robot / Articulated Figure That Turn, Slide

Revolute: able to turn (rotate), forming angle between bones

Prismatic (aka slider): “bone” slides through – http://bit.ly/hScjoe

Spherical (aka ball joint): “bone” rotates around socket

Cylindrical (aka hinge): flaps wrap around joint, joined to surfaces

Effectors: Parts of Robot / Articulated Figure That Act (e.g., Hand, Foot)

Bones: Effectors, Other Parts That Rotate about, Slide through Joints

Procedural Animation: Automatic Generation of Motion via Simulation

Ragdoll physics: procedural animation for inert characters

Other types: particle systems, N-body dynamics