P1 Wednesday 18/09-13/11 13:30-16:45 and Thursday 12/09 13:30-16:45 — Calendar
PrerequisiteC/C++ programming skills
Overlap with X-INF584
Introduction to computer graphics for 3D application development: basics of rendering pipeline, transformations, camera models, shading models, and graphics programming using OpenGL and C/C++
P2 Monday 25/11-10/02 08:30-11:45 and Wednesday 27/11-05/02 13:30-16:45 — Calendar
PrerequisiteTP-IGR200 (or equivalent)
Theoretical and practical concepts of 3D computer graphics and its applications in virtual reality: shape modeling, image synthesis, geometric processing and analysis, computational geometry, computer animation and simulation, interactive 3D applications
Advanced areas of 3D computer graphics with particular emphasis on geometric modeling with 3D surface meshes, realistic image synthesis, real-time rendering for video games, and simulations for special effects (e.g., deformable objects and fluids).
X-INF585Computer Animation
5,0 ECTS (36h) - MScT IA&VC
Mathieu Desbrun and Marie-Paule Cani
P1 Wednesday 25/09-18/12 14:15-18:30
PrerequisiteC++ programming, basis of computer graphics (surface encoding and modeling).
Overlap with TP-IG3DA
Course presenting 3D computer Animation and Simulation methods for real-time and interactive Graphics applications. Topics: Virtual character animation, Physically-based simulation to interact with solid and deformable objects: Collision and interaction between elastic and plastic shapes, cloth simulation, fluid simulation.
Introduction to image processing and computer vision: image representation, edge detection, segmentation, retargeting, filtering, etc. This course presents classical approaches of computer vision and object detection: feature extractions, classification; as well as an introduction to recent classification methods based on deep convolutional networks. Programming language: Python.
X-INF574Digital representation and analysis of shapes
PrerequisiteGeneral programming skills (Lab class will take place in C++)
Overlap with TP-IG3DA
This course will introduce the fundamental concepts for creating and analyzing shapes on the computer. We will start with generating and representing smooth curves in 2d using splines and Bézier curves. We will then move to various techniques for shape representation in 3d with special emphasis on triangle meshes and associated methods. At the same time, we will introduce methods for shape *analysis* and in particular defining and computing similarity between shapes, and shape matching (establishing correspondences between points on shapes). Programming language: C++.
This course presents the principles, algorithms and techniques of image synthesis. It deals in particular with digital models of shape, appearance, lighting and sensors present in a 3D scene. The rendering equation, as well as standard illumination, shading and reflectance models are presented. Various rendering algorithms based on these models are detailed, including rasterization (projective rendering) and ray tracing. Real-time rendering, GPU programming and hierarchical spatial data structures are also covered. Finally, an opening towards global illumination concludes the course. Programming language: C++.
PrerequisiteGeneral programming and geometric background.
This course is a walk through computational geometry problems: a young discipline of computer science that studies from a combinatorial and algorithmic point of view the properties of geometric objects such as point clouds, arrangements, geometric graphs, or even triangulation. Examples of such problems are convex envelopes, Delaunay triangulation, point cloud reconstruction, approximation of NP-complete geometric, or the efficient location of points in large dimensions. Programming language: C++.
X-INF633Smart models for 3D creation and animation
P1 Wednesday 06/11-20/11 9:30-16:30 and 26/11 09:30-16:30 and 11/12 09:30-12:30
PrerequisiteC++ programming, basis of computer graphics and computer animation, basis of machine learning
This course presents recent advances in 3D computer graphics, and more particularly in the subfields on modeling and animation, which rely on artificial intelligence. We'll cover first user-centered creative AI (also called "Expressive modeling and animation"), i.e. intelligent 3D models helping users in their creative tasks ; and second, the use of AI for training characters able to navigate and locomote autonomously in 3D environments. Lab programming language: C# with Unity. Labs based on project mixing machine learning with graphics in Unity.