Currently teaching at the University of Limoges

Master 2nd year - 3D printing

  • Introduction to 3D printing

  • Slicing

  • Toolpath generation

  • GPU programming applied to 3D printing

  • GCode generation

  • Practical work (using FDM/FFF printers)

(also a remote course for University of West Attica, Athens)

Master 1st year - Introduction to Photorealistic Rendering

  • Ray tracing

  • Acceleration structures (octrees, BVH)

  • Understanding lighting and shading

  • Shading models, BRDF

  • Microfacet model

  • Introduction to path tracing

(also a remote course for University of West Attica, Athens)

Master 1st year - Computer Vision & A.I. based image generation

  • Convolutional neural networks

  • Adversarial networks

  • Practical work - image classification, image segmentation

  • Project

Master 1st year - Image Processing

  • Discrete morphology

  • Convolution-based filters

  • Image thresholding

  • Segmentation basics - region-growing, watershed, split-merge, naïve Bayes

  • Probabilistic graphical models

Master 1st year - Computer Graphics Foundations (practical work)

  • Line and polygon rasterization

  • Transformations

  • Basics of lighting and shading

  • Bezier curves and surfaces

BS 3rd year - Introduction to Big Data

  • IPython

  • Jupyter

  • Numpy

  • Pandas

  • Matplotlib

  • Common metrics

BS 3rd year - Interoperability

  • Regionalization, internationalization - character sets, character set encodings

  • Interoperability between programming languages (practical work: SQL/Java/Python/C++ interop)

  • Object Request Brokers

  • CMake

  • Advanced, type-safe database programming (JPA, Stream API, LINQ)

  • Application design patterns (Document-View, MVC and the likes)

Previously teaching

BS 2nd year - Databases

  • Structured Query Language

BS 1st year - Algorithmics basics

  • Types, variables, operators

  • Functions

  • Arrays

  • Control flow

Teaching performed in previous institutions


Ecole des Mines de Nancy

2nd year - Software design and engineering

Lecture/Tutorial (TD)

  • Game design and programming

  • End-to-end design and implementation of a video game

  • Design team from ENSA (Ecole Nationale Supérieure d’Art de Nancy)

IUT Saint-Dié-les-Vosges

DUT 2nd year

Lecture/Tutorial (TD)

  • Raytracing basics

  • Reflections

  • Refraction

  • Beer’s law

  • Mesh decimation basics

  • Improving mesh decimation


Ecole des Mines de Nancy

4th year - Software design and engineering

Lecture/Tutorial (TD)

  • Solid modeling for 3D printing

  • End-to-end design and implementation of a tool to ease script-based modeling for the IceSL software


Université Paul Sabatier Toulouse III

Master 1st Year SMI - Image Synthesis

Lecture/Tutorial (Cours/TD)

  • Introduction to geometric modeling

  • Simple geometric primitives

  • CSG trees

  • Differential geometry basics

  • Cubic Hermite curves

  • Bézier and BSpline curves

  • Point interpolation using BSpline curves


Université Paul Sabatier Toulouse III

Licence 2nd Year INFO - Computer Science

Practical work (TP)

  • Introduction to Blender

  • Creation of a basic 3D viewer with GLUT, introduction to OpenGL

  • Shading and lighting, basic animation

  • Moving and orientating the camera

  • Loading up a mesh from a file, into the scene, and rendering it

  • Master 1st Year OIM - Tools For Multimedia Applications

Practical work (TP)

  • GStreamer shell and C programming

  • Implementing a basic 3D raytracer


Université Paul Sabatier Toulouse III

Licence 1st Year SFA - Applied Fundamental Science

Practical Work (TP)

  • History of computer science

  • Turing Machine, introduction and programming

  • ENIGMA Machine

  • Analysis of the design of computers

  • Unmounting a PC, identifying and understanding the different motherboard components

  • Operating Systems

  • Shell commands

  • Bash scripts

  • Introduction to networking

  • Introduction to telnet, ssh, mail, traceroute, http, ping

  • Writing a small web page in HTML