Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Wydział Informatyki - Informatyka (N2)
specjalność: grafika komputerowa i systemy multimedialne

Sylabus przedmiotu Algorytmy grafiki komputerowej czasu rzeczywistego - Przedmiot obieralny I:

Informacje podstawowe

Kierunek studiów Informatyka
Forma studiów studia niestacjonarne Poziom drugiego stopnia
Tytuł zawodowy absolwenta magister
Obszary studiów nauki techniczne
Profil ogólnoakademicki
Moduł
Przedmiot Algorytmy grafiki komputerowej czasu rzeczywistego - Przedmiot obieralny I
Specjalność grafika komputerowa i systemy multimedialne
Jednostka prowadząca Katedra Systemów Multimedialnych
Nauczyciel odpowiedzialny Radosław Mantiuk <Radoslaw.Mantiuk@zut.edu.pl>
Inni nauczyciele
ECTS (planowane) 4,0 ECTS (formy) 4,0
Forma zaliczenia zaliczenie Język polski
Blok obieralny 10 Grupa obieralna 1

Formy dydaktyczne

Forma dydaktycznaKODSemestrGodzinyECTSWagaZaliczenie
wykładyW3 10 1,90,50zaliczenie
laboratoriaL3 10 2,10,50zaliczenie

Wymagania wstępne

KODWymaganie wstępne
W-1Grafika komputerowa i wizualizacja
W-2Umiejętność programowania w języku C/C++
W-3Podstawowa wiedza z matematyki stosowanej oraz fizyki w zakresie obliczen macierzowo-wektorowych, optyki, kolorymetrii, termodynamiki oraz mechaniki falowej i kwantowej

Cele przedmiotu

KODCel modułu/przedmiotu
C-1Zapoznanie z technikami programowania bibliotek graficznych
C-2Zapoznanie z technikami z programowaniem sprzetowym karty graficznej
C-3Projektowanie i programowanie z wykorzystaniem maszyny stanów
C-4Zdobycie kompetencji społecznej współpracy w grupie, umiejetności wspólnego rozwiązywania problemów, dobierania narzędzi, technik oraz algorytmów, porównywania jakości uzyskanych efektów
C-5Zdobycie kompetencji personalnych w zakresie dobierania oraz analizy literatury dostępnej w internecie dotyczącej programowania gier oraz wykorzystania jej w praktyce w swoich projektach
C-6Umiejętność wykorzystania technik programowania bibliotek graficznych
C-7Umiejętność programowania sprzętowego z wykorzystaniem języka GLSL

Treści programowe z podziałem na formy zajęć

KODTreść programowaGodziny
laboratoria
T-L-1Oprogramowanie prostej gry komputerowej uwzględniającej podstawowe algorytmy wpływające na realizm renderowanej sceny - zapoznanie się ze środowiskiem openGL1
T-L-2Przygotowanie sceny, wykorzystanie przeksztalceń geometrycznych1
T-L-3Oświetlenie sceny - ustawienie i zdefiniowanie parametrów światła oraz materiałów1
T-L-4Teksturowanie - nałożenie tekstur, wykorzystanie algorytmów teksturowania1
T-L-5Efekty specjalne, wykorzystanie algorytmów zwiększających realizm na scenie.1
T-L-6Programowanie sprzetowe - GPU1
T-L-7Zapoznanie się z silnikiem graficznym2
T-L-8Przygotowanie aplikacji z wykorzystaniem OGRE, algorytmów dot. efektów specjalnych oraz języka GLSL1
T-L-9Zaliczenie laboratorium1
10
wykłady
T-W-1Wykład organizacyjny. Zdefiniowanie wymagań oraz zakresu materiału realizowanego na zjęciach.1
T-W-2Wprowadzenie do trójwymiarowej grafiki komputerowej (pojęcie systemu graficznego, definicja sceny 3D,reprezentacja obiektów geometrycznych, pojęcie kamery wirtualnej, definicja źródeł światła, pojęcie materiału, potok graficzny czasu rzeczywistego).1
T-W-3Wygląd sceny i obiektów (rodzaje źródeł światła, równianie oświetlenia, algorytmy cieniowania, zjawisko aliasingu oraz algorytmy antyaliasingu).1
T-W-4Teksturowanie (potok teksturowania, filtrowanie tekstur, algorytm mipmappingu, filtrowanie anizotropowe).2
T-W-5Mapowanie środowiska. Odbicia w powierzchniach płaskich, mapowanie nierówności.2
T-W-6Bufory (koloru, głębokości, maski, stereo, ramki, akumulacji) oraz efekty dodatkowe (efekty flare, bloom, korona oraz halo, pojęcie motion blur, głębia widzenia, efekt mgły).1
T-W-7Obliczenia dowolnego przeznaczenia z wykorzystaniem procesora graficznego GPGPU1
T-W-8Zaliczenie wykładu1
10

Obciążenie pracą studenta - formy aktywności

KODForma aktywnościGodziny
laboratoria
A-L-1Praca w domu przy programowaniu gry.47
A-L-2Uczestnictwo w zajęciach laboratoryjnych.10
57
wykłady
A-W-1Uczestnictwo w wykładach.10
A-W-2Przygotowanie sie do zaliczenia.40
50

Metody nauczania / narzędzia dydaktyczne

KODMetoda nauczania / narzędzie dydaktyczne
M-1Wykłady wspomagane prezentacją multimedialną.
M-2Na projekcie zespołowa realizacja zadań wspomagających pracę na ćwiczeniach laboratoryjnych w zakresie zapoznania sie z procesem tworzenia gry komputerowej, wykorzystywanymi technikami programistycznymi oraz tworzenia dokumentacji.

Sposoby oceny

KODSposób oceny
S-1Ocena formująca: Kontrola postepów tworzonego projektu oraz współpracy pomiędzy poszczególnymi członkami zespołu
S-2Ocena podsumowująca: Ocena jakości oraz kompletności stworzonej aplikacji czasu rzeczywistego
S-3Ocena podsumowująca: Egzamin z wiedzy teoretycznej
S-4Ocena formująca: Kontrola postepów oraz poprawności tworzonej dokumentacji

Zamierzone efekty kształcenia - wiedza

Zamierzone efekty kształceniaOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
I_2A_D17/O/1-4_W01
W wyniku przeprowadzonych zajęć student powinien być w stanie opisać potok graficzny czasu rzeczywistego, scharakteryzować podstawowe algorytmy trójwymiarowej oraz interaktywnej grafiki komputerowej.
I_2A_W04, I_2A_W05, I_2A_W06C-2, C-1T-W-6, T-L-7, T-L-2, T-L-4, T-L-5, T-L-3M-1S-3

Zamierzone efekty kształcenia - umiejętności

Zamierzone efekty kształceniaOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
I_2A_D17/O/1-4_U01
W wyniku przeprowadzonych zajęć student powinien umieć zaprojektować i zaimplementować aplikację czasu rzeczywistego, zastosować techniki tworzenia aplikacji czasu rzeczywistego, uwzględniając elementy podnoszące realizm tworzonego oprogramowania oraz wykorzystać techniki programowania procesora graficznego za pomocą języka GLSL.
I_2A_U02, I_2A_U03, I_2A_U07, I_2A_U08, I_2A_U12C-3, C-7, C-6T-L-8, T-L-1, T-L-6M-2S-2, S-4, S-1

Zamierzone efekty kształcenia - inne kompetencje społeczne i personalne

Zamierzone efekty kształceniaOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
I_2A_D17/O/1-4_K01
W wyniku przeprowadzonych zajęć student nabędzie następujące postawy: aktywność w określaniu priorytetów służących do realizacji określonego zadania oraz otwartość na pracę w zespole zadaniowo, postrzeganie relacji oraz hiererchii pracy grupowej.
I_2A_K05, I_2A_K06C-4, C-5T-L-8M-2S-1

Kryterium oceny - wiedza

Efekt kształceniaOcenaKryterium oceny
I_2A_D17/O/1-4_W01
W wyniku przeprowadzonych zajęć student powinien być w stanie opisać potok graficzny czasu rzeczywistego, scharakteryzować podstawowe algorytmy trójwymiarowej oraz interaktywnej grafiki komputerowej.
2,0
3,0dostateczne opanowanie wiedzy przekazywanej na wykładzie
3,5
4,0
4,5
5,0

Kryterium oceny - umiejętności

Efekt kształceniaOcenaKryterium oceny
I_2A_D17/O/1-4_U01
W wyniku przeprowadzonych zajęć student powinien umieć zaprojektować i zaimplementować aplikację czasu rzeczywistego, zastosować techniki tworzenia aplikacji czasu rzeczywistego, uwzględniając elementy podnoszące realizm tworzonego oprogramowania oraz wykorzystać techniki programowania procesora graficznego za pomocą języka GLSL.
2,0
3,0nabycie umożliwości umożliwiających dostateczne wykonanie projektu na ćwiczenia lab.
3,5
4,0
4,5
5,0

Kryterium oceny - inne kompetencje społeczne i personalne

Efekt kształceniaOcenaKryterium oceny
I_2A_D17/O/1-4_K01
W wyniku przeprowadzonych zajęć student nabędzie następujące postawy: aktywność w określaniu priorytetów służących do realizacji określonego zadania oraz otwartość na pracę w zespole zadaniowo, postrzeganie relacji oraz hiererchii pracy grupowej.
2,0
3,0nabycie kompetencji w zakresie studiowania literatury umożliwiających dostateczną realizację projektu wykonywanego w czasie ćwiczeń lab.,
3,5
4,0
4,5
5,0

Literatura podstawowa

  1. Tomas Akenine-Möller, Eric Haines, Naty Hoffman, Real-Time rendering, A.K. Peters Ltd., 2008, trzecie
  2. Randima Fernando, GPU Gems: Programming Techniques, Tips and Tricks for Real-Time Graphics, Addison-Wesley Professional, 2005
  3. Engel, Shaderx7, Cengage Learning, 2009

Literatura dodatkowa

  1. Matt Pharr, Randima Fernando, GPU Gems 2: Programming Techniques for High-Performance Graphics and General-Purpose Computation, Addison-Wesley Professional, 2005, 2011

Treści programowe - laboratoria

KODTreść programowaGodziny
T-L-1Oprogramowanie prostej gry komputerowej uwzględniającej podstawowe algorytmy wpływające na realizm renderowanej sceny - zapoznanie się ze środowiskiem openGL1
T-L-2Przygotowanie sceny, wykorzystanie przeksztalceń geometrycznych1
T-L-3Oświetlenie sceny - ustawienie i zdefiniowanie parametrów światła oraz materiałów1
T-L-4Teksturowanie - nałożenie tekstur, wykorzystanie algorytmów teksturowania1
T-L-5Efekty specjalne, wykorzystanie algorytmów zwiększających realizm na scenie.1
T-L-6Programowanie sprzetowe - GPU1
T-L-7Zapoznanie się z silnikiem graficznym2
T-L-8Przygotowanie aplikacji z wykorzystaniem OGRE, algorytmów dot. efektów specjalnych oraz języka GLSL1
T-L-9Zaliczenie laboratorium1
10

Treści programowe - wykłady

KODTreść programowaGodziny
T-W-1Wykład organizacyjny. Zdefiniowanie wymagań oraz zakresu materiału realizowanego na zjęciach.1
T-W-2Wprowadzenie do trójwymiarowej grafiki komputerowej (pojęcie systemu graficznego, definicja sceny 3D,reprezentacja obiektów geometrycznych, pojęcie kamery wirtualnej, definicja źródeł światła, pojęcie materiału, potok graficzny czasu rzeczywistego).1
T-W-3Wygląd sceny i obiektów (rodzaje źródeł światła, równianie oświetlenia, algorytmy cieniowania, zjawisko aliasingu oraz algorytmy antyaliasingu).1
T-W-4Teksturowanie (potok teksturowania, filtrowanie tekstur, algorytm mipmappingu, filtrowanie anizotropowe).2
T-W-5Mapowanie środowiska. Odbicia w powierzchniach płaskich, mapowanie nierówności.2
T-W-6Bufory (koloru, głębokości, maski, stereo, ramki, akumulacji) oraz efekty dodatkowe (efekty flare, bloom, korona oraz halo, pojęcie motion blur, głębia widzenia, efekt mgły).1
T-W-7Obliczenia dowolnego przeznaczenia z wykorzystaniem procesora graficznego GPGPU1
T-W-8Zaliczenie wykładu1
10

Formy aktywności - laboratoria

KODForma aktywnościGodziny
A-L-1Praca w domu przy programowaniu gry.47
A-L-2Uczestnictwo w zajęciach laboratoryjnych.10
57
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta

Formy aktywności - wykłady

KODForma aktywnościGodziny
A-W-1Uczestnictwo w wykładach.10
A-W-2Przygotowanie sie do zaliczenia.40
50
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaI_2A_D17/O/1-4_W01W wyniku przeprowadzonych zajęć student powinien być w stanie opisać potok graficzny czasu rzeczywistego, scharakteryzować podstawowe algorytmy trójwymiarowej oraz interaktywnej grafiki komputerowej.
Odniesienie do efektów kształcenia dla kierunku studiówI_2A_W04Ma wiedzę z zakresu zaawansowanych technik programowania systemów informatycznych w wybranym obszarze zastosowań
I_2A_W05Ma rozszerzoną i podbudowaną teoretycznie wiedzę z zakresu metod informatyki wykorzystywanych do rozwiązywania problemów w wybranych obszarach nauki i techniki
I_2A_W06Posiada wiedzę o narzędziach sprzętowo-programowych wspomagających rozwiązywanie wybranych i złożonych problemów w różnych obszarach nauki i techniki
Cel przedmiotuC-2Zapoznanie z technikami z programowaniem sprzetowym karty graficznej
C-1Zapoznanie z technikami programowania bibliotek graficznych
Treści programoweT-W-6Bufory (koloru, głębokości, maski, stereo, ramki, akumulacji) oraz efekty dodatkowe (efekty flare, bloom, korona oraz halo, pojęcie motion blur, głębia widzenia, efekt mgły).
T-L-7Zapoznanie się z silnikiem graficznym
T-L-2Przygotowanie sceny, wykorzystanie przeksztalceń geometrycznych
T-L-4Teksturowanie - nałożenie tekstur, wykorzystanie algorytmów teksturowania
T-L-5Efekty specjalne, wykorzystanie algorytmów zwiększających realizm na scenie.
T-L-3Oświetlenie sceny - ustawienie i zdefiniowanie parametrów światła oraz materiałów
Metody nauczaniaM-1Wykłady wspomagane prezentacją multimedialną.
Sposób ocenyS-3Ocena podsumowująca: Egzamin z wiedzy teoretycznej
Kryteria ocenyOcenaKryterium oceny
2,0
3,0dostateczne opanowanie wiedzy przekazywanej na wykładzie
3,5
4,0
4,5
5,0
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaI_2A_D17/O/1-4_U01W wyniku przeprowadzonych zajęć student powinien umieć zaprojektować i zaimplementować aplikację czasu rzeczywistego, zastosować techniki tworzenia aplikacji czasu rzeczywistego, uwzględniając elementy podnoszące realizm tworzonego oprogramowania oraz wykorzystać techniki programowania procesora graficznego za pomocą języka GLSL.
Odniesienie do efektów kształcenia dla kierunku studiówI_2A_U02Potrafi pozyskiwać informacje z różnych źródeł (literatura, Internet, bazy danych, dokumentacja techniczna), dokonywać ich interpretacji i oceny
I_2A_U03Potrafi aktywnie uczestniczyć w pracach projektowych indywidualnych i zespołowych przyjmując w nich różne role
I_2A_U07Potrafi wykorzystywać poznane metody, techniki i modele do rozwiązywania złożonych problemów
I_2A_U08Potrafi wykorzystywać narzędzia sprzętowo-programowe wspomagające rozwiązywanie wybranych problemów w różnych obszarach nauki i techniki
I_2A_U12Ma umiejętność stosowania zaawansowanych technik programowania i metodyki projektowania systemów informatycznych w wybranym obszarze zastosowań
Cel przedmiotuC-3Projektowanie i programowanie z wykorzystaniem maszyny stanów
C-7Umiejętność programowania sprzętowego z wykorzystaniem języka GLSL
C-6Umiejętność wykorzystania technik programowania bibliotek graficznych
Treści programoweT-L-8Przygotowanie aplikacji z wykorzystaniem OGRE, algorytmów dot. efektów specjalnych oraz języka GLSL
T-L-1Oprogramowanie prostej gry komputerowej uwzględniającej podstawowe algorytmy wpływające na realizm renderowanej sceny - zapoznanie się ze środowiskiem openGL
T-L-6Programowanie sprzetowe - GPU
Metody nauczaniaM-2Na projekcie zespołowa realizacja zadań wspomagających pracę na ćwiczeniach laboratoryjnych w zakresie zapoznania sie z procesem tworzenia gry komputerowej, wykorzystywanymi technikami programistycznymi oraz tworzenia dokumentacji.
Sposób ocenyS-2Ocena podsumowująca: Ocena jakości oraz kompletności stworzonej aplikacji czasu rzeczywistego
S-4Ocena formująca: Kontrola postepów oraz poprawności tworzonej dokumentacji
S-1Ocena formująca: Kontrola postepów tworzonego projektu oraz współpracy pomiędzy poszczególnymi członkami zespołu
Kryteria ocenyOcenaKryterium oceny
2,0
3,0nabycie umożliwości umożliwiających dostateczne wykonanie projektu na ćwiczenia lab.
3,5
4,0
4,5
5,0
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaI_2A_D17/O/1-4_K01W wyniku przeprowadzonych zajęć student nabędzie następujące postawy: aktywność w określaniu priorytetów służących do realizacji określonego zadania oraz otwartość na pracę w zespole zadaniowo, postrzeganie relacji oraz hiererchii pracy grupowej.
Odniesienie do efektów kształcenia dla kierunku studiówI_2A_K05Ma świadomość odpowiedzialności za kierowany zespół ludzi i za zadania realizowane wspólnie z tym zespołem
I_2A_K06Potrafi myśleć i działać w sposób kreatywny i przedsiębiorczy
Cel przedmiotuC-4Zdobycie kompetencji społecznej współpracy w grupie, umiejetności wspólnego rozwiązywania problemów, dobierania narzędzi, technik oraz algorytmów, porównywania jakości uzyskanych efektów
C-5Zdobycie kompetencji personalnych w zakresie dobierania oraz analizy literatury dostępnej w internecie dotyczącej programowania gier oraz wykorzystania jej w praktyce w swoich projektach
Treści programoweT-L-8Przygotowanie aplikacji z wykorzystaniem OGRE, algorytmów dot. efektów specjalnych oraz języka GLSL
Metody nauczaniaM-2Na projekcie zespołowa realizacja zadań wspomagających pracę na ćwiczeniach laboratoryjnych w zakresie zapoznania sie z procesem tworzenia gry komputerowej, wykorzystywanymi technikami programistycznymi oraz tworzenia dokumentacji.
Sposób ocenyS-1Ocena formująca: Kontrola postepów tworzonego projektu oraz współpracy pomiędzy poszczególnymi członkami zespołu
Kryteria ocenyOcenaKryterium oceny
2,0
3,0nabycie kompetencji w zakresie studiowania literatury umożliwiających dostateczną realizację projektu wykonywanego w czasie ćwiczeń lab.,
3,5
4,0
4,5
5,0