DM842: Programmering af computerspil (10 ECTS)

STADS: 15019701

Niveau
Kandidatkursus

Undervisningsperiode
Kurset er placeret i efterårssemesteret.

Ansvarlige undervisere
Email: rolf@imada.sdu.dk

Yderligere undervisere
marco@imada.sdu.dk

Skemaoplysninger
Hold Type Dag Tidsrum Lokale Uger Kommentar
H1 TE Mandag 16-18 IMADA semi 36-41,43-51
H1 TE Onsdag 08-10 IMADA semi 36-41,46-47,50-51
H1 TE Onsdag 08-10 U168 43-45,48-49
Vis hele skemaet
Vis personligt skema for dette kursus.

Kommentar:
Ubegrænset deltagerantal.

Indgangskrav:
Ingen

Faglige forudsætninger:
Studerende, der følger kurset, forventes at:
  • Have kendskab til metoder til design, korrekthedsanalyse og tidsanalyse af algoritmer, svarende til kurset DM507 Algoritmer og Datastrukturer, samt kendskab til matricer svarende til kurset DM535 Diskrete metoder til datalogi.
  • Kunne anvende disse metoder med præcision, abstraktionsniveau og matematisk modenhed svarende til en bachelorgrad i datalogi.


Formål
  • At give deltagerne indsigt i de matematiske og datalogiske principper som ligger bag 3D grafikken i computerspil.
  • At give deltagerne indsigt i metoderne fra AI som ligger bag bevægelse og handlinger udført af computerstyrede objekter og karakterer i computerspil.
  • At give deltagerne indsigt i de matematiske, fysiske og datalogiske principper som ligger bag fysiksimulering og collision detection i computerspil.
Kurset bygger oven på den viden, der er erhvervet i kurserne DM550 Introduktion til Programmering og DM507 Algoritmer og Datastrukturer, og giver et fagligt grundlag for yderligere specialiserede studieaktiviteter inden for emnet.
 
I forhold til uddannelsens kompetenceprofil har kurset eksplicit fokus på at:
  • Give viden om et udvalg af specialiserede modeller og metoder udviklet inden for datalogi baseret på højeste internationale forskning, samt viden om datalogiske modeller og metoder beregnet til anvendelser i andre faglige områder.
  • Give færdigheder i at beskrive, analysere og løse datalogiske problemstillinger ved hjælp af de lærte modeller, analysere fordele og ulemper ved forskellige datalogiske metoder, samt udvikle nye varianter af de lærte metoder, hvor det konkrete problem kræver det.
  • Give kompetence til planlægge og udføre videnskabelige projekter på højt fagligt niveau.


Målbeskrivelse
For at opnå kursets formål er det læringsmålet for kurset, at den studerende demonstrerer evnen til at:
  • Forklare de i kurset gennemgåede teknikker i et klart og præcist sprog.
  • Implementere de i kurset gennemgåede teknikker i eksempelprogrammer.
  • Beskrive implementationsarbejdet i et præcist sprog og på en struktureret facon.
Indhold
Kurset indeholder følgende faglige hovedområder:
  • Den grafiske pipeline, rendering, matematikken bag 3D-grafik (herunder homogene koordinater, transformationer, projektion, kvaternioner), clipping, culling, lighting, shading, texturing, polygonale teknikker, level-of-detail.
  • Steering, path-finding, koordinerede bevægelser, 
  • rulebased AI, finite state machines, fuzzy logic, goal-driven behaviour, strategiske beslutninger, board games AI.
  • Lineær og angulær kraft og momentum, rigide legemers bevægelse, collision detection (herunder intersection tests, bounding volumes, hierarkier af bounding volumes, spatial opdeling og collision culling) og collision response.
 
 


Litteratur
    Meddeles ved kursets start.


Kursets hjemmeside
Dette kursus benytter e-learn (blackboard).

Forudsætningsprøver
  1. Projekt. Bestået/ikke-bestået, intern censur ved underviser. Forudsætningsprøven skal være bestået for at man kan deltage i eksamenselement a). (15019712).
Eksamen- og censurform:
  1. Mundtlig eksamen. Bedømmes ved ekstern censur efter 7-trinsskalaen. Ingen hjælpemidler tilladt. Nærmere beskrivelse af eksamensreglerne vil blive offentliggjort under 'Course Information' på kursets side i Blackboard. (10 ECTS). (15019702).
Vejledende timetal
På naturvidenskab er undervisningen tilrettelagt efter trefasemodellen dvs. intro, trænings- og studiefasen.
Introfase: 60 timer

Aktiviteter i studiefasen
ProgrammeringsprojekterUndervisningsform
I introfasen får de studerende en gennemarbejdet gennemgang af det nogle gange komplekse stofområde. I studiefasen får de studerende faglige, personlige og sociale erfaringer, der sætter dem i stand til at befæste og videreudvikle deres videnskabelige kompetencer. Der er fokus på fordybelse, forståelse og udvikling af samarbejdskompetencer.

Sprog
Dette kursus undervises på dansk eller engelsk, afhængigt af underviseren. Dog altid på Engelsk ved deltagelse af internationale studerende.

Kursustilmelding
Se tilmeldingsfrister.

Pris for åben uddannelse
Se priser for enkeltkurser.

Dette er den nyeste version af en kursusbeskrivelse, som trådte i kraft den 1. sep 2017.