Lecture plan

Since we have international students in the course, all lectures will be held in english.

1. Introduction, graphics systems, API's (Chapter 3)

2. 2D graphics (Chapter 5), OpenGL introduction

3. 3D transforms, 3D engines, Viewing, Projection (Chapter 6)

4. Introduction to visible surface detection (Chapter 12), polyhedra models (Chapter 8.1-8.4), light models, shading (Chapter 7)

5. Surface detail, texture mapping (Chapter 10)

6. More surface detail, texture mapping, multitexture, light mapping, bump mapping, environment mapping, skybox (Chapter 10)

7. More bump mapping, skybox (Chapter 10), Normal matrix (Chapter 7), A bit more about shaders including multitexturing (Chapter 10 and 18), painter’s algorithm and transparency (Chapter 12), ray-casting intro (Chapter 17).

8. Picking and trackball controls, Rotation around arbitrary axis (Chapter 6), Large worlds, high-level VSD.

9. Level of detail, Billboards (Chapter 13)

10. Curves and surfaces (Chapter 8.5-)

11. Spline continuity (Chapter 8.5-), Animation, Particle systems (Chapter 14)

12. Collision detection (Chapter 14)

13. Fractals and noise (Chapter 9), Anti-aliasing (Ch 16)

14. Ray-tracing and radiosity (Chapter 17) Line-drawing algorithms, polygon rendering (Chapter 15)

15. Loose ends. Advanced topics. OpenGL ES.

Lecture notes

Lecture slides will appear here, generally shortly before or after the lectures. If you want to check out the slides before the lecture, you can find old versions by the link below.

Note that some lecture notes are very few pages. That is simply when I have worked a lot on the whiteboard.

There may be overlap between the PDF's, when material has been included in the presentation for one lecture but delayed to the next.

PDFs from 2018 are here: pdf18

PDFs from 2017 are here: pdf17

For code examples demonstrated at the lectures, look here:

The PFNP demo archive

Older lecture notes are at the old course page.

This page is maintained by Ingemar Ragnemalm