Computer Graphics : Rendering and Modeling 3D Scenes (CG)


The objective of this course is to know how to model 3D scenes and to realistically render them with methods based either on the OpenGL API, or on the ray tracing method using statistical methods. The rendering methods based on OpenGL are faster and fully exploit the performances of the graphics cards (use of hundreds of processors within the GPU, Graphics Processing Unit) using Shaders. As for the rendering methods based on ray tracing, they are more elegant, make use of a Monte Carlo approach and allow to provide high realism results, but are time consuming. Before rendering a 3D scene we have to create it. This is the aim of geometric modeling. We will see how to create 3D scenes: simple objects, more detailed objects (CSG, mesh, etc.), parametric surfaces (Bézier, Splines, NURBS, etc.).





  • Geometric modeling: facets, mesh, CSG, parametric curves and surfaces (Bézier, B-Splines, NURBS, etc.)
  • Introduction to the OpenGL graphics pipeline
  • OpenGL : Shaders (Vertex, Fragment), Textures, FBO (Frame Buffer Object)
  • Ray tracing: principle, fast data structures (3D grid, BVH, Kd-Tree)
  • Monte Carlo method to evaluate an integral
  • Application of Monte Carlo to rendering : principle, Path Tracing, Radiance Cache, Photons Tracing

Learning outcomes


Rémi Cozot (responsible), Rémi Cozot