TDDD57 Fysisk interaktion och spelprogrammering
VT1
 
### Nyheter
### [Introduktionsföreläsning 24/1 10-12, i R27 C-huset](TDDD57_Intro_2025.pdf)
---
### 🔶 Förändring till 2025 🔶
* Kurs uppdaterad för 2025. Inga stora förändringar i kursen.
---
Deadlines:
* 31/1. Anmäl deltagande i kursen på webreg [https://www.ida.liu.se/webreg-beta/TDDD57-2025-1/Kursmoment](https://www.ida.liu.se/webreg-beta/TDDD57-2025-1/Kursmoment)
* 31/1. Eget **gitlab.liu.se** repo genom att forka [godot_starter_TDDD57 gitlabrepot](https://gitlab.liu.se/eribe22/godot_starter_tddd57). Bjud in **eribe22 och helor34 som Reporter** till repot med slutdatum 20261231.
* 31/1. [Anmäl URL till repot i detta fomulär](https://forms.office.com/e/8cmcfbBt9S).
* Vecka 7 - Labbar redovisas på plats under seminarie. Tid slumpas. [Se labbsidan](labb.sv.shtml)
* 14/2 - Projektide mailad till examinatorn för återkoppling (ej krav).
* Vecka 11 - Projekt demonstreras på plats. Tid slumpas. Screencast av projektet ska även spelas in som underlag. [Se projektsidan](proj.sv.shtml)
* 21/3 - Slutlig inlämning med screencast-länk med URL från det repo ni lämnat in via formuläret
Sen student:
* **Omdemonstrationstillfälle för labbar och projekt annordnas i samråd med examinatorn i samband med normala omtentaperioder. Maila.**
---
### Kursmål
Kursen fokuserar på interaktion mellan människa och dator genom kroppsrörelser och externa skärmar.
Centrala moment i kursen är:
* Hantering av instabil sensordata: Hur man hanterar brus, felaktigheter, dåliga zoner och vinklar samt skapar applikationer som kan fungera trots dessa utmaningar.
* Ergonomisk design: Att skapa interaktioner som är bekväma och naturliga, med hänsyn till kroppsrörelser, vilopositioner och ergonomi.
* Visuell feedback: Utveckling av visuell återkoppling som kan ersätta eller komplettera fysisk (haptisk) respons.
* Stödjande feedback: Design av återkoppling som vägleder och understödjer användarens kroppsrörelser.
* Förutseende feedback: Skapa system som ger förklarande återkoppling om vad som kommer att hända om den nuvarande rörelsen fortsätter. Detta är särskilt viktigt eftersom kroppen rör sig kontinuerligt, ofta omedvetet.
* Zonguidning: Design som hjälper användaren att stanna kvar i den optimala interaktionszonen.
* Interaktionsregler: Konstruktion av regelset (ofta genom tillståndsmaskin) som möjliggör en smidig och effektiv interaktion.
Målet är att förstå sensorns kapacitet, eliminera felaktigheter och skapa säker och snabb interaktion.
Datorspel är en utmärkt tillämpning för denna typ av interaktionsdesign. Små fel kan få stora konsekvenser, interaktionen sker mot rörliga mål och förloppen är snabba. Kursen använder spel som exempel, men fokus ligger egentligen på kroppsbaserad interaktion genom maskininlärningsbaserad spårning och interaktion med publika skärmar. Projekten kan vara icke-spel, förutsatt att de uppfyller samma interaktionskrav.
Robotinteraktion blir allt vanligare och använder ofta maskininlärning för kroppsspårning och ansiktsigenkänning vid interaktion med människor.
Gester är intressanta, men komplexa för datorn att tolka. Därför föredrar kursen mer direkt interaktion, liknande mus- eller touchinteraktion, vilket passar kursens lärandemål.
Naturlig interaktion (som att "flyga" genom att flaxa) är fascinerande, men det är viktigt att förstå att människor även är bekväma med abstrakt interaktion. Nyckeln ligger i feedbacken, inte i interaktionsformen. Ett bra exempel är en grävmaskinförare som lätt lär sig styra tre axlar med raka spakar tack vare tydlig visuell återkoppling.
Rik och naturlig interaktion är viktigt, men stabil interaktion och vilolägen kan vara ännu viktigare. Fokus bör ligga på helhetsupplevelsen.
En vanlig utmaning är att sensorns prestanda varierar i olika områden. Vissa zoner ger sämre eller långsammare data. En del av designuppgiften är att guida användaren bort från dessa problematiska områden. Vid handspårning kan händerna ibland försvinna eller bli osynliga i kamerans ytterområden.
Hjärnan har en förmåga att "dölja" våra faktiska rörelser för oss. Därför är det avgörande att skapa feedback som visar användarens rörelser i realtid, innan oönskade resultat inträffar.
### Praktiskt genomföraden
Kursen genomförs som en serie labbar för grundläggande interaktion och sedan sker utveckling av ett eget projekt. Man förväntas klara grundläggande utveckling och kodning, köra igån gpythonkod och sätta sig in i Godot-motorns komponenter och system. Kursen ges på A-nivå för studenter som har god programmeringsförmåga.
[Läs mer på sidan om teknik](tech.sv.shtml)
Labbarna handlar om 3 saker:
* Få igång utvecklingmiljö och programmera
* Undersöka styrkor och svagheter med interaktionsteknik
* Utveckla basinteraktioner
Projektet handlar om att bygga:
* En applikation med välfungerande kroppslig interaktion
* Designa stabil interaktion med ibland svaga sensorer (eliminera relevanta svagheter)
* Designa feedback som gör att användaren kan interagera säkert och förstår hur man ska röra på kroppen för att genomföra interaktionen
* Designa feedback så att användaren förstår vart de är på väg innan det händer så att de kan avbryta.
Betygsgrundande kriterier:
Se [Examinations-sidan](exam/index.sv.shtml)
Seminarierna handlar om :
* Redovisa era resultat
* Ta del av andras erfarenheter
* Få återkoppling på resultat
För den som inte är klar med alla moment till ett seminarium gäller redovisning av kvarvarande delar via screencasts.
### Jobba i par i kursen
I kursen kan man jobba 1, 2 och i undantagsfall 3. På webbreg kan man signa upp sig men bara 2. Om någon behöver vara 3 hör av er så lägger jag upp 3:e person.
Man kan inte dela upp arbetet utan alla gör allt för att få full kunskap. Men man kan ju jobba ihop och lära varandra olika delar.
### Redovisningar
Muntlig demonstration sker på plats i seminarium. För projektet ska slutprodukten redovisas på plats, men även en inspelad screencast på länk (Youtube, OneDrive) var URL läggs på gitrepot ni anmält i krusen.
Missa inte att kunskapskraven handlar om interaktion, design, feedback utöver den tekniska dimensionen. Mycket tid får gärna gå till att bygga om, ta bort, minska ... se då även till att beskriva allt detta i screencast och redovisningar.
### Pedagogik
Eget lärande kring att genomföra labbar och projekt. Redovisningar och gruppdiskussion är centrala. Följer aktivt lärande och reflektion/återkoppling som viktigaste moment för lärande.

---
### Evaliuate-utvärdering av kursen
* 2025: helhetsbetyg 4.50
* 2024: helhetsbetyg 5.00 (1 person)
* 2023: helhetsbetyg 4.40
* 2022: helhetsbetyg 1.00 (1 person)
* 2021: helhetsbetyg 4.50 (1 person)
Sidansvarig: Erik Berglund
Senast uppdaterad: 2025-04-14