Laborationer

Alla labbar är skrivna för OpenGL 3.2. Det betyder modern OpenGL, 3.2 och upp, till skillnad från det föråldrade 2.1 och ner. Tillägg för OpenGL 4 kan användas, och ni är mer än välkomna att använda dem, speciellt i projekten. Dock är det troligt att en del av er har egna maskiner som inte klarar OpenGL 4, medan 3.2 fungerar även på lite blygsammare hårdvara.

Allt labbmaterial är för Linux, men är ganska enkelt att anpassa för andra OS. Den skall också fungera direkt i MacOSX. (Exempelkod för Windows finns på demosidan.)

Laborationerna är obligatoriska (förutom labb 0)! Labb 1-4 inleds med duggor!

Observera att duggorna är del av den betygsgrundande examinationen!

Det är inte säkert att ni kan fullfölja en labb på de schemalagda 4 timmarna. Ni ägnar då labben en del tid utanför schemalagd tid, och redovisar på en senare labb. Reservlabben är labbkursens officiella slut, så se till att du är så nära färdig att du blir klar på den.

Alla laborationer går i labbsalarna Olympen och Asgård. Båda är i korridor 25, övre planet. Nollstället, ett seminarierum som jag ibland använder som reservutrymme, är mitt emellan dem, innanför Olympen. Vi har gott om plats, utnyttja det för att hålla distans med hänsyn till rådande smittorisk.

Olympen har nya maskiner med NVidia 1080-kort. Asgård har helt nya RTX-kort! (Om detta fungerar bra så kan jag rekommendera projekt som utnyttjar dessa!) Övriga labbsalar har enkla GPUer som är direkt olämpliga för alla GPU-tunga övningar.

För användargränssnittet använder vi MicroGlut, en miniversion av OpenGL Utility Toolkit med fokus på modern OpenGL. Den finns för Mac, Linux och MS Windows. Filerna ingår i common-mappen för alla labbar, som är en uppsättning hjälpfiler (modelladdare, texturladdare, vektor- och matrisoperationer med mera) med ambitionen att vara ganska komplett samtidigt som de är tillräckligt överskådliga för att de skall vara begripliga och därmed transparenta.

Obligatorisk COVID-19-anpassning: Vi har ganska gott om plats i labben, så meningen är att ni skall sprida ut er så mycket som möjligt. På grund av COVID-19-hänsyn har schemaläggning blivit knepig. Jag har dock (mot alla odds) lyckats få labbpass på dagtid så att Norrköpingstudenterna kan komma hem med bussen! Ett labbpass, labb 4, blir lite trixigt, för ena labbet har vi bara två timmar. Detta innebär att Norrköpingsstudenterna har förtur till 4-timmars-labbet med hänsyn till deras restid! Det finns också ett 2-timmarspass på kvällstid avsett för att ge Linköpingsstudenterna lite kompensationtid, om än lite väl tidigt.

Laboration 0: Introduktion till shaderprogrammering med GLSL

Olympen, torsdag 3/9 13-17

Detta är en frivillig laboration för er som inte känner er så säkra på OpenGL 3.2+ och GLSL.

Labbhandledning, se menyn

Laborationen har ingen egentlig examination, men det finns möjlighet för er att få viss assistans och diskutera problem.

Laboration 1, Datorgrafik: Avancerad Shaderprogrammering

Olympen+Asgård torsdag 10/9 13-17

Laborationen inleds med en dugga, som täcker kapitel 3-5, förutom 3.7-3.8, till och med 5.5. (5.6-5.8 på omduggan.) 

Labbhandledning, se menyn

Förberedelser: Läs på kapitel 3 till 5 innan labben. Kapitel 5 är viktigast för själva labben, övriga för duggan.

Laboration 2, Animation, skinning

Olympen+Asgård torsdag 17/9 8-12

Laborationen inleds med en dugga, som täcker kapitel 6, 7.5, 9, 11.

Labbhandledning, se menyn

Laboration 3, Fysik: Biljardbordet

Olympen+Asgård torsdag 24/9 13-17

Laborationen inleds med en dugga, som täcker kapitel 8 (Rigid body animation) fram till 8.5. Sergyis föreläsningsanteckningar ingår också (förra årets duger bra).

Förberedelser: Läs igenom kapitel 8 samt Sergyis föreläsningsanteckningar. Använd gärna Baraff, Physically Based Modelling som stöd och komplettering, kapitel 1-3 samt 8, samt de delar av föreläsningsmaterialet som gäller partikeldynamik och stela kroppens dynamik.

Labbhandledning, se menyn

Laboration, extratillfälle

Asgård måndag 29/9 8-10

Detta är lite extratid som är inlagt för att kompensera Linköpingsstudenterna för förlorad tid på labb 4.

Laboration 4: AI: flocking

Olympen+Asgård, torsdag 1/10 13-17 resp 13-15

OBS! Vi har bara ena labbet i 4 timmar! Det andra har vi bara i 2. Därför är det viktigt att Norrköpingsstudenterna har förtur till Olympen för detta pass. De lägger mer tid på att komma hit så de skall ges möjlighet att utnyttja det. (Detta beror på schemaläggningsproblem.)

Laborationen inleds med en dugga, som täcker kapitel 10, 12-14 (förutom 12.9-12.10) samt 5.7-5.8. (Omduggan täcker även kapitel 7 förutom 7.5 som är i dugga 2, samt 12.9-12.10.)

Labbhandledning, se menyn.

Reservlaboration 1:

Olympen+Asgård, torsdag 8/10 13-17

Reservtid för tidigare laborationer.

Laborationen inleds med möjlighet att göra om samtliga duggor från tidigare laborationer.

Observera att omduggorna täcker något mer material, inklusive det som var på sista föreläsningen.

Reservlaboration 2:

Olympen, torsdag 15/10 13-17

FÖRANMÄLAN: Vi ryms i ett labbpass (med antagandet att en del är klara innan reservpassen, annars kan det bli lite trångt då men det kan jag nog lösa), så ingen föranmälan behövs. Det är meningen att labbarna skall göras i grupper om två med på grund av Covid-19 så rekommenderas ni att jobba en och en.

Denna sida underhålls av Ingemar Ragnemalm.