Line 20: Line 20:
  
 
== D-E-A-D-L-I-N-E-S ==
 
== D-E-A-D-L-I-N-E-S ==
 +
* Animators team (Axx): <b>deadline 14.12.2015 the last lecture</b>
 +
** Show your animation, how far have you made it. It should be 30% of the work done, otherwise your team gets Fx.
 +
* Coders team (Cxx): <b>deadline 17.12.2015 the last exercise</b>
 +
** Show the short DEMO of your project, how far have you made it. It should be 30% of the work done, otherwise your team gets Fx.
 +
 
* Coders team (Cxx): <b>deadline 26.1.2016</b>
 
* Coders team (Cxx): <b>deadline 26.1.2016</b>
 
** Create a web page where you write your progress, upload source code, executable, images description of your project and short manual.  
 
** Create a web page where you write your progress, upload source code, executable, images description of your project and short manual.  
Line 68: Line 73:
 
** Choose some authoring tool and create hot physically based demo reel
 
** Choose some authoring tool and create hot physically based demo reel
 
** Present a selected research paper
 
** Present a selected research paper
 +
** Prepare a written report, at least 2 A4 pages, on the topic of state exam question.
 
* Projects with minimal requirements: [[media:Projects.pdf|Projects.pdf]]
 
* Projects with minimal requirements: [[media:Projects.pdf|Projects.pdf]]
  
Line 75: Line 81:
  
 
=== Lesson01 "Introduction to Computer Animation" ===
 
=== Lesson01 "Introduction to Computer Animation" ===
[[File:ca10_lesson01.png|link=http://www.sccg.sk/~onderik/phd/ca2010/ca10_lesson01.pdf]]
+
[[File:ca10_lesson01.png]]
 
* Introduction to Computer Animation
 
* Introduction to Computer Animation
 
* Common animation techniques
 
* Common animation techniques
Line 86: Line 92:
  
 
=== Lesson02 "Basic methods in Computer Animation" ===
 
=== Lesson02 "Basic methods in Computer Animation" ===
[[File:ca10_lesson02.png|link=http://www.sccg.sk/~onderik/phd/ca2010/ca10_lesson02.pdf]]
+
[[File:ca10_lesson02.png]]
 
* Problem definition and motivations
 
* Problem definition and motivations
 
* Key-framing and parameter interpolation
 
* Key-framing and parameter interpolation
Line 99: Line 105:
  
 
=== Lesson03 "Particle Systems" ===
 
=== Lesson03 "Particle Systems" ===
[[File:ca10_lesson03.png|link=http://www.sccg.sk/~onderik/phd/ca2010/ca10_lesson03.pdf]]
+
[[File:ca10_lesson03.png]]
 
* Newton dynamics of particles
 
* Newton dynamics of particles
 
* Ordinary differential equation (ODE) solver
 
* Ordinary differential equation (ODE) solver
Line 110: Line 116:
  
 
=== Lesson04 "Soft bodies, Cloths and hair” ===
 
=== Lesson04 "Soft bodies, Cloths and hair” ===
[[File:ca10_lesson11.png|link=http://www.sccg.sk/~onderik/phd/ca2010/ca10_lesson11.pdf]]
+
[[File:ca10_lesson11.png]]
 
* Problem definition and motivations
 
* Problem definition and motivations
 
* Modeling solids with stress and strain
 
* Modeling solids with stress and strain
Line 123: Line 129:
  
 
=== Lesson05 "Broad Phase Collision Detection" ===
 
=== Lesson05 "Broad Phase Collision Detection" ===
[[File:ca10_lesson04.png|link=http://www.sccg.sk/~onderik/phd/ca2010/ca10_lesson04.pdf]]
+
[[File:ca10_lesson04.png]]
 
* Problem definition and motivations
 
* Problem definition and motivations
 
* Hierarchical grids and spatial hashing
 
* Hierarchical grids and spatial hashing
Line 133: Line 139:
  
 
=== Lesson06 "Mid Phase Collision Detection" ===
 
=== Lesson06 "Mid Phase Collision Detection" ===
[[File:ca10_lesson05.png|link=http://www.sccg.sk/~onderik/phd/ca2010/ca10_lesson05.pdf]]
+
[[File:ca10_lesson05.png]]
 
* Problem definition and motivations
 
* Problem definition and motivations
 
* Generic Bounding Volume Hierarchy (BVH)
 
* Generic Bounding Volume Hierarchy (BVH)
Line 145: Line 151:
  
 
=== Lesson07 "Narrow Phase Collision Detection" ===
 
=== Lesson07 "Narrow Phase Collision Detection" ===
[[File:ca10_lesson06.png|link=http://www.sccg.sk/~onderik/phd/ca2010/ca10_lesson06.pdf]]
+
[[File:ca10_lesson06.png]]
 
* Problem definition and motivations
 
* Problem definition and motivations
 
* Proximity queries for convex objects (Minkowski space)
 
* Proximity queries for convex objects (Minkowski space)
Line 161: Line 167:
  
 
=== Lesson09 "Rigid body Dynamics” ===
 
=== Lesson09 "Rigid body Dynamics” ===
[[File:ca10_lesson08.png|link=http://www.sccg.sk/~onderik/phd/ca2010/ca10_lesson08.pdf]]
+
[[File:ca10_lesson08.png]]
 
* Problem definition and motivations
 
* Problem definition and motivations
 
* Dynamics of rigid bodies
 
* Dynamics of rigid bodies
Line 172: Line 178:
  
 
=== Lesson10 "Rigid body Collisions and Joints” ===
 
=== Lesson10 "Rigid body Collisions and Joints” ===
[[File:ca10_lesson09.png|link=http://www.sccg.sk/~onderik/phd/ca2010/ca10_lesson09.pdf]]
+
[[File:ca10_lesson09.png]]
 
* Problem definition and motivations
 
* Problem definition and motivations
 
* Simplified collision model
 
* Simplified collision model
Line 184: Line 190:
  
 
=== Lesson11 "Fluid, Fire and Smoke” ===
 
=== Lesson11 "Fluid, Fire and Smoke” ===
[[File:ca10_lesson10.png|link=http://www.sccg.sk/~onderik/phd/ca2010/ca10_lesson10.pdf]]
+
[[File:ca10_lesson10.png]]
 
* Problem definition and motivations
 
* Problem definition and motivations
 
* Navier-Stokes equations for fluid dynamics
 
* Navier-Stokes equations for fluid dynamics
Line 198: Line 204:
 
* Don't panic - just few simple questions
 
* Don't panic - just few simple questions
  
 +
=== Lesson13 "Animation Show" ===
 +
* Show your animation to your colleagues
  
  

Revision as of 15:06, 14 September 2015

Ca10 lesson01.png

Physical based Animations and Mathematical Modelling (Course Materials)

This lecture ...

  • Will focus on simulating natural phenomena
  • Will show you what are current topics
  • Will improve your skills in
    • Newtonian physics
    • Computational geometry
    • Algorithms and data structures
  • Hopefully will not be boring

Student Projects

D-E-A-D-L-I-N-E-S

  • Animators team (Axx): deadline 14.12.2015 the last lecture
    • Show your animation, how far have you made it. It should be 30% of the work done, otherwise your team gets Fx.
  • Coders team (Cxx): deadline 17.12.2015 the last exercise
    • Show the short DEMO of your project, how far have you made it. It should be 30% of the work done, otherwise your team gets Fx.
  • Coders team (Cxx): deadline 26.1.2016
    • Create a web page where you write your progress, upload source code, executable, images description of your project and short manual.
    • Send link to finished application (zipped source + executable.)
    • If you send it earlier you can get feedback how to improve your application
  • Animators team (Axx): deadline 26.1.2016
    • Create a web page where you write your progress, upload animation, source of animation, images description of your project and describe all physical effects to be evaluated.
    • Upload your animation video on youtube (or some alternative online service)
    • Send link to your webpage
    • If you send it earlier you can get feedback how to improve your animation
  • Oral/written exam (optional): deadline 18.1.2016, 8:00, classroom A
    • Instead of (optional) oral exam, you can get (0..+20) points due to a written exam.
    • It will be similar to final term, but less complicated.

What you Need to Pass

  • Attend lessons. All lessons attended is +0 points. Four and more missed is Fx.
  • Show your project (mandatory, 60 points). See later.
  • Solve all homework problems (mandatory each one >=30%, 40 points)
  • Pass oral/written exam: (optional, +0 .. +20 points) If you feel you are better, convince me ! You can get +20 points max.
  • Summary
    • Attendance = +0 or -100 (Fx)
    • Homework = +40..+12 or 12..0 (Fx)
    • Project = +60..0
    • Oral/written exam optional = +20..0
  • Grades
    • A = 92-100
    • B = 84-91
    • C = 76-83
    • D = 68-75
    • E = 60-67
    • Fx = 0-59

Oral Examination

To the oral examination all the above requirements must be SATISFACTORILY completed.

How to Arrange your Project

  • Take 1 friend and Team up
  • Role1: The Coder
    • Choose a given animation algorithm
    • Code up hot demo app and show it
    • Present a selected research paper
  • Role2: The Artist
    • Choose some authoring tool and create hot physically based demo reel
    • Present a selected research paper
    • Prepare a written report, at least 2 A4 pages, on the topic of state exam question.
  • Projects with minimal requirements: Projects.pdf
  • Teams fill the form (names and project): deadline 5.10.2015


Lesson01 "Introduction to Computer Animation"

Ca10 lesson01.png

  • Introduction to Computer Animation
  • Common animation techniques
  • Cutting edge tools and packages
  • Gurus and the State of the Art
  • Lecture schedule
  • "Terms and conditions" of this lecture
  • Lecture notes: lesson01.pdf


Lesson02 "Basic methods in Computer Animation"

Ca10 lesson02.png

  • Problem definition and motivations
  • Key-framing and parameter interpolation
  • Quternions, orientation
  • Skeleton and skinning animation
  • Forward and inverse kinematics
  • Procedural techniques
  • (Motion capture)
  • Lecture notes: lesson02.pdf
  • Štátnicová téma: Animácie pohybu a orientácie, interpolačný spline na animáciu pohybu, reparametrizácia splinu podľa dĺžky krivky, quaternion a orientácia, interpolácie dvoch a viacerých quaternionov.


Lesson03 "Particle Systems"

Ca10 lesson03.png

  • Newton dynamics of particles
  • Ordinary differential equation (ODE) solver
  • Particle - obstacle collision detection
  • Practical design of particle system
  • Demos / tools / libs
  • Lecture notes: lesson03.pdf
  • Štátnicová téma: Numerické riešenie diferenciálnych rovníc, Eulerova metóda, Runge-Kuta metóda, podmienka stability na voľbu časového kroku.


Lesson04 "Soft bodies, Cloths and hair”

Ca10 lesson11.png

  • Problem definition and motivations
  • Modeling solids with stress and strain
  • Extending Mass-spring model for cloth and ropes
  • Massive (self) collision and resolution for cloths
  • Mesh-less deformations
  • Modeling solids with infinitely stiff springs
  • Demos / tools / libs
  • Lecture notes: lesson04.pdf
  • Štátnicová téma (Lesson 3,4): Časticové systémy, rovnice pohybu prvého rádu, integračné metódy na výpočet rýchlosti a pozície, stavový vektor systému, vonkajšie sily, obmedzujúce podmienky – constraints, sily odozvy, kolízie častica - rovina.


Lesson05 "Broad Phase Collision Detection"

Ca10 lesson04.png

  • Problem definition and motivations
  • Hierarchical grids and spatial hashing
  • Sweep and prune and radix sort
  • Pair management – a practical guide
  • Demos / tools / libs
  • Lecture notes: lesson05.pdf
  • Assigment 3: assigment3.pdf

Lesson06 "Mid Phase Collision Detection"

Ca10 lesson05.png

  • Problem definition and motivations
  • Generic Bounding Volume Hierarchy (BVH)
  • Tandem BVH traversal
  • Proximity evaluation of primitive geometries
    • External Voronoi regions
    • Sphere x Capsule x Box x triangle collisions
  • Approximate convex decomposition
  • Lecture notes: lesson06.pdf
  • Assigment 4: assigment4.pdf

Lesson07 "Narrow Phase Collision Detection"

Ca10 lesson06.png

  • Problem definition and motivations
  • Proximity queries for convex objects (Minkowski space)
  • GJK based algorithms (GJK, EPA, ISA-GJK)
  • Voronoi-Clip (V-Clip) Algorithm
  • Signed Distance Maps for collision detection
  • Demos / tools / libs
  • Lecture notes: lesson07.pdf
  • Štátnicová téma (Lesson 5,6,7): Detekcie kolízie, Z buffer algoritmus, nutná a postačujúca podmienka kedy nie sú dve telesá v kolízii, deliaca rovina, hierarchie obálok, sily odozvy (response forces).

Lesson08 "All Saints' Day (no lesson)"

Ca10 lesson07.png

  • No lesson


Lesson09 "Rigid body Dynamics”

Ca10 lesson08.png

  • Problem definition and motivations
  • Dynamics of rigid bodies
  • The equation of unconstrained motion (ODE)
  • User and time control
  • Mass properties of polyhedral objects
  • Demos / tools / libs
  • Lecture notes: lesson08.pdf
  • Štátnicová téma (Lesson 9): Dynamika tuhých telies, rovnice pohybu, rýchlosť, zrýchlenie, uhľová rýchlosť a uhľové zrýchlenie, matica inercie.

Lesson10 "Rigid body Collisions and Joints”

Ca10 lesson09.png

  • Problem definition and motivations
  • Simplified collision model
  • Impulse based collision equation
  • Friction-less collision resolution
  • Algebraic collision resolution for Coulomb friction
  • Linear and angular joint formulations
  • Demos / tools / libs
  • Lecture notes:lesson09.pdf


Lesson11 "Fluid, Fire and Smoke”

Ca10 lesson10.png

  • Problem definition and motivations
  • Navier-Stokes equations for fluid dynamics
  • Grid based MAC method
  • Particle based SPH method
  • Neighbor search for coupled particles
  • Modeling smoke and fire with fluid
  • Demos / tools / libs
  • Lecture notes: lesson10.pdf

Lesson12 "Final term"

Ca10 lesson12.png

  • Don't panic - just few simple questions

Lesson13 "Animation Show"

  • Show your animation to your colleagues


SEMINARS

  • On every seminar we will implement selected problems from lessons. We will use software Mathematica to solve specific numerical problems.

RESOURCES