Welcome!

Welcome to TSBK07 and TSBK11

This is the home page of two similar courses, TSBK07 Computer Graphics and TSBK11 Fundamental Computer Graphics (and previously ETE378 Fundamental Computer Graphics). The courses are mostly one and the same, with the latter being scaled down to be more suitable for the G2 level.

Note that this page was only recently updated for the two new variants. The G2 courses have been modified (somewhat simplified) labs and a number of parts non-mandatory, but I may need to clarify the differences even more.

This is a computer graphics course focused on real-time animations, parallel programming using graphics shaders, visualization and games.

The course starts from the basics, the mathematical foundations, and covers a wide diversity of topics, including vitals like shader programming, light and shading, texturing and visible surface detection, but also covers deeper topics like large world management, collision detection, fractals and ray-tracing.

We use modern OpenGL with GLSL in all laborations, with Vulkan as alternative since 2025.

The course follows this model:

1) Lectures. Relatively passive learning, introducing theory and practice.

2) Laborations. Get active, learn how to do it yourself.

3) Project. Get creative! Make a project defined by yourself in communication with the course leader, go deeper into the topics that interest you the most.

The course book is primarily sold by Bokakademin, but the number available there is limited. It can also be ordered from Amazon but that takes time and it is currently an outdated version. It is also available on-line (see the “Literature” page). You are welcome to follow the course with the electronic version only but the book is fairly cheap so you don’t have to choose the on-line version for economic reasons.


Latest news:

2026-05-04: Everybody should have their booking times confirmed over E-mail by now!

2026-04-16: Please book your preferences in the booking system!

2026-04-10: Yesterday I finally managed to replicate the error and could work around it. This time it really seems to work!

2026-04-07: It did work but… Hopefully something simple.

2026-03-28: The booking systems seems to work just fine now!

2026-03-16: Project presentation sessions are booked but I am having some trouble with the booking system. I will announce when it works.

2026-02-20: Updated information on what dugga 5 covers.

2026-02-08: Some adjustments to lab 3.

2026-02-06: The lecture material is corrected to only include the material that I could fit. Therefore, picking is in the next lecture and not part of dugga #3. I also corrected the arccos method to make sense.

2026-02-03: I am revising the later lectures to fit the new guest lecture on image generation with diffusion. Some parts will be reduced but I don’t want to change the earlier ones.

2026-01-30: I think I have a solution for the irritating flashing on the Mac. I made it today so consider it preliminary, but I have tested it on three different Macs and it looks promising. So this is the new version of MicroGlut for Mac 2026-01-30: MicroGlut.m

2026-01-22: Even more changes and corrections for lab 1 for TSBK11. Since this lab is significantly rewritten, there can still be unclear parts. We will sort that out as we go if needed.

2026-01-21: Made some corrections to lab 1 for TSBK11. Thanks to David who found the errors. I will test more tomorrow and make sure that the description is good.

2026-01-20: Corrected the date for the omdugga. It will be after the last lecture, so the last lectures can be part of the omdugga questions. I have asked the admins to book a second room for this.

2026-01-19: Updates to lab 1 and some common files. 

2026-01-15: Welcome to TSBK07/TSBK11 of 2026! These pages are being updated.

2026-01-13: Some corrections on the new TSBK11 labs.

2025-08-21: The new versions of lab 1 and 2 for TSBK11 are now official. They focus on fewer things (more on GLSL and geometry, less on low-level buffers) to make them more suited for G2 level. Some students tested them in the spring and they liked it. This means that all labs for TSBK11 are now properly on G2 level! (The drawback is that the menu is getting too long.)

2025-06-18: The course has now ended in every way except for occasional unfinished projects. I have a list of delayed projects so let me know if you want to be on it and demonstrate after the summer.



This page is maintained by Ingemar Ragnemalm