INF585 - Animation par ordinateur (2023-2024)
Topic outline
-
-
Useful Links
- Lab class exercises (code on github)
- Computer Graphics in general: [Internship/job offer], [some companies]
-
General timings
- Lectures are from 2pm-4pm in Amphi Curie
- Labs (bring your laptop) are from 4:15pm - 6:15pm in salle info 33, 34
Please check on Synapses for confirmation.Expected grading process
- 2 evaluated lab class: 10% final grade
- 2 in-class individual test (~20min each): 40% final grade
- 1st test: Scheduled on February 5th (to be confirmed)
- 2nd test: Scheduled on March 4th (to be confirmed)
- 1 final project: 50% final grade
-
-
-
Preliminary notes
- Please bring your laptop (if you have one) + its charger + a mouse for the labs.
- 3D labs using graphics chips empty the battery very quickly
- 3D rotation + touchpad = nightmare
- Please check beforehand if you can compile the lab introduction code.
- In particular, if you are on Windows, please install Visual Studio at home before coming to the lab, it can take hours and you need a good internet connection. (Beware that "Visual Studio" is not "Visual Studio Code")
- Please bring your laptop (if you have one) + its charger + a mouse for the labs.
-
16:15 - 18:15 Lab Class [Link]
- [Obligatory] Introduction [this is a warm-up, don't spend too much time on it]
- [Obligatory] Procedural Trajectories: Spheres bounce [difficulty: easy]
- [On Choice] Any of the following (order is arbitrary)
- Procedural Trajectories: Cauldron - User defined trajectory and billboards [difficulty: medium]
- Procedural Trajectories: Animated Texture - Perlin noise texture on shader [difficulty: easy]
- Procedural Trajectories: Water Droplet - Deformation on shader [difficulty: medium+]
- Procedural Trajectories: Cauldron - User defined trajectory and billboards [difficulty: medium]
-
- Video record of the interactive session (from previous year - if you missed the onsite version from 2024) -- the lecture video are accessible on YouTube: [Particles] [Noise]
-
-
-
The lecture takes place in 2 different parts.
- Part 1: 14h-15h: You watch the pre-recorded videos on your own. You don't have to be in the classroom between 14h and 15h, and there is no zoom link during this time. You can watch the video when you want, as long as it is before 15h.
- Part 2: 15h-16h: Interactive session together in amphi Curie between 15h and 16h + start of the Zoom link video.
-
14:00 - 15:00 Pre-recorded Lecture Videos (on your own)
Videos to watch on your own before 15h (and think about the questions)
- Facial Animation [Video (9 min)], or [src video], [Slides], [pdf]
- Affine Transformation [Video (30 min)], or [src video], [Slides], [pdf]
- Volume Deformation I [Video (6 min)], or [src video], [Slides], [pdf]
Optional - If you are not familiar with Quaternions: 3D Rotations and Quaternions details [Video (25 min)], [Slides], [pdf]
-
15:00 - 16:00 Interactive Session (in amphi Curie)
Please come at 15h in Amphi Curie.
We will discuss the questions given in the lecture videos.
-
16:15-18:15 Lab Class (room 33 & 30 exceptionally)
Don't forget to bring a mouse for the labs.
- [Obligatory] Interactive deformers - Deformation brush
- [Optional] Blend Shapes - Facial Animation [difficulty: easy]
- [Optional] Free Form Deformation - Grid based deformation [difficulty: medium]
-
-
-
16:15 - 18:15 Lab Class
- [Obligatory] Skinning Deformation
- [Obligatory] Character Animation (can be continued next week)
-
-
14:30-16:00: Interactive Session in amphi Curie
-
16:15 - 18:15 Lab Class
- [Obligatory] End of character animation
- [Optional] Laplacian & ARAP Deformation [difficulty: hard]
-
Drop your code corresponding to: Skinning + Character Animation, (optionally Laplacian Deformation)
By February 1st 23:59.
-
-
16:15-16:45 Test in room 33, 34
-
-
-
Upload you code before Monday March the 4th at 1pm.
Make an archive (.tar.gz or .zip) that contains your src/ directory(ies) only. Do not upload your temporary files (build/ directory, etc).
It should contain the code of "Stable Fluids" or "SPH" (or both).
This upload is individual (if you worked in pairs, each of you need to update it).
-
-
14:00-16:00 Start of the Project in room 33/34
-
16h00 - 16h30: Test 2
The test starts at 16h00 in the computer lab class room PC33/PC34
- Bring your material with you (laptop with battery, code, manuscript notes, etc.) -> you can use it during the test.
- Please come in the lab class room 33/34 (and not in amphi Curie, there will be the connected fixed computer in case you have issues with your internet connection).
- Offsite Eurotech (and excused students) can do the test remotely at the same time. In this case, you will need to be connected on the Zoom link with your webcam turned on (and showing you).
-
The program includes all simulation parts
(physically-based simulation, rigid spheres, cloth simulation, ODE, fluids)
-
Principle:
- It is a multiple-choice questions quiz.
- Questions may be related to class and lab class
- Duration: 30min, about 3-4min per question
- One or two questions should be trivial to answer - don't waste too much time on them
- Others may take more time: longer question, intermediate computation/drawings, etc. - prepare a sheet of paper + pen near your computer, it can help. You may also want to be ready to have a tool to do some quick numerical computation.
- "Terribly wrong answers" to trivial questions will be penalized by negative points. Otherwise wrong answers to non trivial questions are not associated to negative points.
- You have access to your computer and material - so to your slides, lab class code, etc.
- Any type of communication between you is forbidden during the test.
-
Projects topics
-
You are free to select your project topics as long as it relates to computer animation and deformation - check with us once you have your idea.
Typical projects can be:
- An extension of one of the lab class.
- An implementation of a standard technique presented in class but not done in the lab class.
- Mixing different lab-class approaches to generate a complex scene, or an interactive demo.
- An implementation of a research article.
-
Examples of possible projects:
Articles (with implementation that seems reasonably tractable in limited time):
- [Vector Field Based Shape Deformations, SIGGRAPH 2006] - The use of vector fields for (volume-preserving) shape deformations.
- [The Line of Action: an Intuitive Interface for Expressive Character Posing, SIGGRAPH Asia 2013] - The us of sketching for posing characters (a simple example of curve-drawer implementation is proposed here).
- [FABRIK: A fast iterative solver for the Inverse Kinematics problem, Graphical Models 2011] - Implementing the inverse kinematics solver applied for instance to the skinned character in order to make it walk on various terrains.
- [Velocity Skinning for Real-Time Stylized Skeletal Animation, EUROGRAPHICS 2021] - simple geometric method to add dynamic effects on skinned meshes.- [A simple model of Ocean Waves, SIGGRAPH 1986] - A simple standard model for procedural waves on oceans. (or model of breaking waves [Real-time Breaking Waves for Shallow Water Simulations, Pacific Graphics 2007])
- [Animating Sand as a Fluid, SIGGRAPH 2005] - Implementing the PIC/FLIP approach that mixes grid and particles.
- [Unified Particle Physics for Real-Time Applications, SIGGRAPH 2014] - Shape matching approach to deform arbitrary shapes using position-based-simulation. (Only if you haven't done already this project in INF574).
- [Realistic Buoyancy Model for Real-Time Applications, EUROGRAPHICS 2020] - lightweight geometric method to simulate buoyant object on water.
(non exhaustive listing)
-
Other "classical" projects subjects:
- Implementing a rigid body simulator.
- Interaction between fluid and rigid-body.
- Cloth simulation with self-collision handling.
- Adding efficient acceleration structure for collision handling
- Boids simulation for crowd
-
Example of previous years projects:
- Simulation of "Marble Machine"
- Animated dancing body with cloth simulation
- Controllable walking character on terrain
- Multi-phase SPH simulation
- Cage based deformation
- Cloth and spheres simulation (trampoline, piñata, etc.)
- Simulation of pool game
- FPS-like game.
- Simulating "crêpes" heating on a pan (SPH for liquid, cloth simulation for solid).
- Hair simulation
- Balloon scene from the movie "up"
-
-
-
This 4h seance will be fully dedicated to your project
No lecture, we can meet directly in the computer room 33, 34.
-
-
-
Drop your final project before Monday 25th of March 2024 at 23:59 (Paris Time)
Your archive should contain:- Your code (remove the build/ directory, but let all the library and asset files such that your program can be compiled and executed directly)
- A short video representing your results (or at least a representative image)
- A report of about 5 pages explaining your project/algorithm, etc.
The project can be done in pairs, or solo.
-