DV2551 3D-programmering III

Programkurs, 7,5 Högskolepoäng, Avancerad nivå, vårterminen 2020

Denna kurs är del av program och går inte att söka till.

Kursen syftar till att ge en bredare och fördjupad förståelse för programmeringsgränssnitt för modern realtidsrendering. Studenten kommer att kritiskt identifiera, designa, implementera, prestandamäta och dokumentera en realtidsapplikation där renderingar och/eller beräkningar kräver att interaktionen mellan centralprocessor (CPU) och grafikprocessor (GPU) är central.

Fakta

  • Undervisningsform: Campus, Dagtid, deltid 50%
  • Period: 2020 vecka 04 till 2020 vecka 13
  • Nivå: A1N
  • Anmälan: Denna kurs är del av program och går inte att söka till.
  • Språk: Undervisningen ges på engelska.
  • Ort: Karlskrona
  • Huvudområde: Datavetenskap
  • Kursplan: Ladda ner
  • Välkomstbrev: Denna kurs är en del av ett program och saknar välkomstbrev.
  • Förkunskapskrav: För tillträde i kursen krävs att studenten har avklarat 15 högskolepoäng C eller C++-programmering, 15 högskolepoäng 3D-programmering, 6 högskolepoäng objektorienterad design, 6 högskolepoäng algoritmer och datastrukturer, 6 högskolepoäng realtids- eller operativsystem, 6 högskolepoäng linjär algebra samt 4 högskolepoäng teknisk kommunikation.

Innehåll

Kursen omfattar följande moment:
  • Analys och utvärdering av styrkor och svagheter i moderna 3d-programmeringsgränssnitt.
  • Val av lämpligt programmeringsgränssnitt för CPU-/GPU-interaktioner baserat på krav och begränsningar.
  • Utvärderingsmetodik kring renderingsprestanda.
  • Angränsande ämnen relaterade till design, utveckling och dokumentering av realtidsrenderingstekniker.

Lärandemål

Kunskap och förståelse
Efter genomförd kurs ska studenten:
  • kunna dokumentera, beskriva och analysera olika renderingstekniker
  • kunna analysera kravställning och underbygga rekommendationer för implementation
  • kunna identifiera sitt behov av ytterligare kunskap


Färdighet och förmåga
Efter genomförd kurs ska studenten:
  • kunna implementera föreslagna renderingstekniker
  • kunna följa en uppsättning krav och göra överväganden och antaganden för att kunna föreslå praktiska lösningar
  • kunna genomföra relevanta mätningar kopplat till analys, prestanda och kravställning
  • kunna abstrahera en befintlig systemdesign baserat på en uppsättning rekommendationer
  • kunna dokumentera och presentera en slutlig systemimplementation


Värderingsförmåga och förhållningssätt
Efter genomförd kurs ska studenten:
  • självständigt och i samarbete med andra kunna diskutera, föreslå och utvärdera olika lösningar inom realtidsrendering
  • kritiskt kunna bedöma utökningsbarhet och återanvändning av en systemdesign för realtidsrendering
  • kunna utvärdera och kritiskt granska olika lösningsförslag till givna problem

Generella förmågor

Kurslitteratur och övriga läromedel

Kurslitteratur
Vulkan Programming Guide: The Official Guide to Learning Vulkan (OpenGL) Författare: Graham Sellers, John Kessenich Förlag: Addison-Wesley Professional Utgiven: 2016, Antal sidor: 480 ISBN-13: 978-0134464541.
Introduction to 3D Game Programming with DirectX 12 Författare: Frank Luna Förlag: Mercury Learning & Information Utgiven: 2016, Antal sidor: 900 ISBN-13: 978-1942270065.
Referenslitteratur
Practical Rendering and Computation with Direct3D 11 Författare: Jason Zink, Matt Pettineo, Jack Hoxley Förlag: A K Peters/CRC Press Utgiven: 2011, Antal sidor: 648 ISBN-13: 978-1568817200.
OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 4.5 with SPIR-V (9th ed) Författare: John Kessenich, Graham Sellers, Dave Shreiner Förlag: Addison-Wesley Professional Utgiven: 2016, Antal sidor: 976 ISBN-13: 978-0134495491.
Övriga lärresurser
Ett urval av 3d-programmeringstekniskt orienterade artiklar som i varje kurstillfälle tas fram. Till detta tillkommer de individuella artiklar som studenten använder som underlag för projektuppgiften.

Kurslitteratur och övriga läromedel

Kurslitteratur
Vulkan Programming Guide: The Official Guide to Learning Vulkan (OpenGL) Författare: Graham Sellers, John Kessenich Förlag: Addison-Wesley Professional Utgiven: 2016, Antal sidor: 480 ISBN-13: 978-0134464541.
Introduction to 3D Game Programming with DirectX 12 Författare: Frank Luna Förlag: Mercury Learning & Information Utgiven: 2016, Antal sidor: 900 ISBN-13: 978-1942270065.
Referenslitteratur
Practical Rendering and Computation with Direct3D 11 Författare: Jason Zink, Matt Pettineo, Jack Hoxley Förlag: A K Peters/CRC Press Utgiven: 2011, Antal sidor: 648 ISBN-13: 978-1568817200.
OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 4.5 with SPIR-V (9th ed) Författare: John Kessenich, Graham Sellers, Dave Shreiner Förlag: Addison-Wesley Professional Utgiven: 2016, Antal sidor: 976 ISBN-13: 978-0134495491.
Övriga lärresurser
Ett urval av 3d-programmeringstekniskt orienterade artiklar som i varje kurstillfälle tas fram. Till detta tillkommer de individuella artiklar som studenten använder som underlag för projektuppgiften.

Lärande och undervisning

Kursen är upplagd efter tekniker från projektbaserad inlärning. Studenterna introduceras till teorin under föreläsningar och en del av materialet som presenteras på dessa används efteråt för att lösa konkreta problem i inlämnings- och projektuppgiften. Uppgifterna följs av seminarier (i grupper om 2-3 studenter) där inlärningsprocessen sker genom diskussioner och återkoppling från seminariedeltagarna. Under föreläsningarna uppmuntras också studenterna att diskutera och argumentera för och emot olika metoder eller designlösningar. Dessutom ges studenterna, uppdelade i grupper, i uppdrag att utarbeta en presentation på ett utvalt ämne. Genom detta tränar och visar studenten sin förmåga att utforska, analysera och presentera konkreta ämnen eller idéer.

Arbetslivsanknytning

Ingen praktik ingår i planerade lärtillfällen. BTH strävar efter tät kontakt med näringslivet vid utveckling av kurser och program.

Lärare

Examinator
  1. Prashant Goswami
Kursansvarig
  1. Francisco Lopez Luro

Tidsåtgång

I genomsnitt bör en student räkna med att studera 200 timmar för att nå lärandemålen.
I denna tid ingår alla olika förekommande lärandeaktiviteter (föreläsningar, självstudier, examination m. m.).
Tidsuppskattningen baseras på att ett akademiskt år omfattar 60 högskolepoäng (motsvarar 60 ECTS credits),
som svarar mot en total studietid på ca 1 600 timmar. Den faktiska studietiden varierar individuellt.

Bedömning

Examinationsmoment för kursen
Kod Benämning Högskolepoäng Betyg
1705 Inlämningsuppgift 2.5 G-U
1715 Projekt 5 A-F

Betyg

Kursen bedöms med betygen A Utmärkt, B Mycket bra, C Bra, D Tillfredsställande, E Tillräckligt, FX Otillräckligt, komplettering krävs, F Underkänd.

Kommande tentamenstillfällen

Inga kommande centralt samordnade tentamenstillfällen hittades för denna kurs.

För att få delta vid ett centralt samordnat tentamenstillfälle måste du ha anmält dig i Studentportalen senast 15 dagar innan tentamensdagen.


Lokal och tidpunkt publiceras ca 5 dagar innan tentamensdagen.


Det kan finnas andra planerade examinationstillfällen. Information om de finns i It's Learning eller på annan plats som kursansvarig hänvisar till.

Kursutvärdering

Kursansvarig ansvarar för att studenternas synpunkter på kursen systematiskt och regelbundet inhämtas och att resultaten av utvärderingar i olika former påverkar kursens utformning och utveckling.