Wydział Informatyki - Informatyka (S2)
specjalność: inżynieria oprogramowania
Sylabus przedmiotu Algorytmy grafiki komputerowej czasu rzeczywistego - Przedmiot obieralny I:
Informacje podstawowe
Kierunek studiów | Informatyka | ||
---|---|---|---|
Forma studiów | studia stacjonarne | 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 | Anna Lewandowska <Anna.Tomaszewska@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
Wymagania wstępne
KOD | Wymaganie wstępne |
---|---|
W-1 | Grafika komputerowa i wizualizacja |
W-2 | Umiejętność programowania w języku C/C++ |
W-3 | Podstawowa wiedza z matematyki stosowanej oraz fizyki w zakresie obliczen macierzowo-wektorowych, optyki, kolorymetrii, termodynamiki oraz mechaniki falowej i kwantowej |
Cele przedmiotu
KOD | Cel modułu/przedmiotu |
---|---|
C-1 | Zapoznanie z technikami programowania bibliotek graficznych |
C-2 | Zapoznanie z technikami z programowaniem sprzetowym karty graficznej |
C-3 | Projektowanie i programowanie z wykorzystaniem maszyny stanów |
C-4 | Zdobycie 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-5 | Zdobycie 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-6 | Umiejętność wykorzystania technik programowania bibliotek graficznych |
C-7 | Umiejętność programowania sprzętowego z wykorzystaniem języka GLSL |
Treści programowe z podziałem na formy zajęć
KOD | Treść programowa | Godziny |
---|---|---|
laboratoria | ||
T-L-1 | Oprogramowanie prostej gry komputerowej uwzględniającej podstawowe algorytmy wpływające na realizm renderowanej sceny - zapoznanie się ze środowiskiem openGL | 2 |
T-L-2 | Przygotowanie sceny, wykorzystanie przeksztalceń geometrycznych | 3 |
T-L-3 | Oświetlenie sceny - ustawienie i zdefiniowanie parametrów światła oraz materiałów | 2 |
T-L-4 | Teksturowanie - nałożenie tekstur, wykorzystanie algorytmów teksturowania | 4 |
T-L-5 | Efekty specjalne, wykorzystanie algorytmów zwiększających realizm na scenie. | 6 |
T-L-6 | Programowanie sprzetowe - GPU | 6 |
T-L-7 | Zapoznanie się z silnikiem graficznym OGRE | 2 |
T-L-8 | Przygotowanie aplikacji z wykorzystaniem OGRE, algorytmów dot. efektów specjalnych oraz języka GLSL | 4 |
T-L-9 | Zaliczenie laboratorium | 1 |
30 | ||
wykłady | ||
T-W-1 | Wykład organizacyjny. Zdefiniowanie wymagań oraz zakresu materiału realizowanego na zjęciach. | 1 |
T-W-2 | Wprowadzenie 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). | 2 |
T-W-3 | Wygląd sceny i obiektów (rodzaje źródeł światła, równianie oświetlenia, algorytmy cieniowania, zjawisko aliasingu oraz algorytmy antyaliasingu). | 2 |
T-W-4 | Teksturowanie (potok teksturowania, filtrowanie tekstur, algorytm mipmappingu, filtrowanie anizotropowe). | 2 |
T-W-5 | Mapowanie środowiska. Odbicia w powierzchniach płaskich, mapowanie nierówności. | 2 |
T-W-6 | Bufory (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). | 2 |
T-W-7 | Obliczenia dowolnego przeznaczenia z wykorzystaniem procesora graficznego GPGPU | 2 |
T-W-8 | Zaliczenie wykładu | 2 |
15 |
Obciążenie pracą studenta - formy aktywności
KOD | Forma aktywności | Godziny |
---|---|---|
laboratoria | ||
A-L-1 | Praca w domu przy programowaniu algorytmów grafiki komputerowej. | 10 |
A-L-2 | Uczestnictwo w zajęciach laboratoryjnych. | 30 |
A-L-3 | Utworzenie dokumentacji | 5 |
A-L-4 | Udział w konsultacjach i zaliczeniu | 2 |
47 | ||
wykłady | ||
A-W-1 | Uczestnictwo w wykładach. | 15 |
A-W-2 | Samodzielne studiowanie literatury w domu | 27 |
A-W-3 | Przygotowanie sie do zaliczenia. | 14 |
A-W-4 | Udział w konsultacjach i zaliczeniu | 5 |
61 |
Metody nauczania / narzędzia dydaktyczne
KOD | Metoda nauczania / narzędzie dydaktyczne |
---|---|
M-1 | Wykłady wspomagane prezentacją multimedialną. |
M-2 | Na 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
KOD | Sposób oceny |
---|---|
S-1 | Ocena formująca: Kontrola postepów tworzonego projektu oraz współpracy pomiędzy poszczególnymi członkami zespołu |
S-2 | Ocena podsumowująca: Ocena jakości oraz kompletności stworzonej aplikacji czasu rzeczywistego |
S-3 | Ocena podsumowująca: Egzamin z wiedzy teoretycznej |
S-4 | Ocena formująca: Kontrola postepów oraz poprawności tworzonej dokumentacji |
Zamierzone efekty kształcenia - wiedza
Zamierzone efekty kształcenia | Odniesienie do efektów kształcenia dla kierunku studiów | Odniesienie do efektów zdefiniowanych dla obszaru kształcenia | Cel przedmiotu | Treści programowe | Metody nauczania | Sposób oceny |
---|---|---|---|---|---|---|
I_2A_D17/O4/1-2_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_W06 | — | C-1, C-2 | T-W-6, T-L-3, T-L-4, T-L-5, T-L-7, T-L-2 | M-1 | S-3 |
Zamierzone efekty kształcenia - umiejętności
Zamierzone efekty kształcenia | Odniesienie do efektów kształcenia dla kierunku studiów | Odniesienie do efektów zdefiniowanych dla obszaru kształcenia | Cel przedmiotu | Treści programowe | Metody nauczania | Sposób oceny |
---|---|---|---|---|---|---|
I_2A_D17/O4/1-2_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_U12 | — | C-3, C-6, C-7 | T-L-1, T-L-6, T-L-8 | M-2 | S-4, S-2, S-1 |
Zamierzone efekty kształcenia - inne kompetencje społeczne i personalne
Zamierzone efekty kształcenia | Odniesienie do efektów kształcenia dla kierunku studiów | Odniesienie do efektów zdefiniowanych dla obszaru kształcenia | Cel przedmiotu | Treści programowe | Metody nauczania | Sposób oceny |
---|---|---|---|---|---|---|
I_2A_D17/O4/1-2_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_K06, I_2A_K05 | — | C-4, C-5 | T-L-8 | M-2 | S-1 |
Kryterium oceny - wiedza
Efekt kształcenia | Ocena | Kryterium oceny |
---|---|---|
I_2A_D17/O4/1-2_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 | Na ocenę 2: student nie potrafi przedstawić zasady działania programowalnego potoku graficznego czasu rzeczywistego. |
3,0 | Na ocenę 3: student potrafi przedstawić zasady działania programowalnego potoku graficznego czasu rzeczywistego, jednak bez znajomości podstawowych algorytmów grafiki komputerowej | |
3,5 | Na ocenę 3.5: student potrafi przedstawić zasady działania programowalnego potoku graficznego czasu rzeczywistego oraz w sposób bardzo podstawowy scharakteryzować przynajmniej dwa z podstawowych algorytmów wykorzystywanych w grafice komputerowej | |
4,0 | Na ocenę 4.0: student potrafi przedstawić zasady działania potoku graficznego czasu rzeczywistego oraz zdefiniować najprostrze algorytmy grafiki czasu czeczywistego. | |
4,5 | Na ocenę 4.5: student potrafi przedstawić zasady działania potoku graficznego czasu rzeczywistego z pełnym zrozumieniem oraz zdefiniować pobieżnie działanie wszystkich prezentowanych na wykładzie algorytmów grafiki czasu czeczywistego. | |
5,0 | Na ocenę 5.0: student potrafi przedstawić zasady działania potoku graficznego czasu rzeczywistego z pełnym zrozumieniem oraz zdefiniować i dokładnie wyjasnić działanie wszystkich prezentowanych na wykładzie algorytmów grafiki czasu czeczywistego. |
Kryterium oceny - umiejętności
Efekt kształcenia | Ocena | Kryterium oceny |
---|---|---|
I_2A_D17/O4/1-2_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 | Na ocenę 2: student nie jest w stanie zaprogramować wybranych algorytmów grafiki komputerowej czasu rzeczywistego. |
3,0 | Na ocenę 3: student jest w stanie zaprogramować wybrane algorytmów grafiki komputerowej czasu rzeczywistego, bez wykorzystania w podstawowym zakresie wspomagania sprzętowego. | |
3,5 | Na ocenę 3,5: student jest w stanie zaprogramować wybrane algorytmów grafiki komputerowej czasu rzeczywistego, z wykorzystaniem w podstawowym zakresie wspomagania sprzętowego. | |
4,0 | Na ocenę 4: student jest w stanie zaprogramować wybrane algorytmy grafiki komputerowej czasu rzeczywistego z wykorzystaniem wspomagania sprzętowego. | |
4,5 | Na ocenę 4,5: student jest w stanie zaprogramować dowolne algorytmy grafiki komputerowej czasu rzeczywistego z wykorzystaniem wspomagania sprzętowego. | |
5,0 | Na ocenę 5: student jest w stanie zaprogramować dowolne algorytmy grafiki komputerowej czasu rzeczywistego oraz algorytmy dowolnego typu (np. rozwiązywanie równań różniczkowych) z wykorzystaniem wspomagania sprzętowego. |
Kryterium oceny - inne kompetencje społeczne i personalne
Efekt kształcenia | Ocena | Kryterium oceny |
---|---|---|
I_2A_D17/O4/1-2_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 | Na ocenę 2: Student nie potrafi współpracować w zespole ani określić priorytetów służących do realizacji postawionego na zajęciach zadania. |
3,0 | Na ocenę 3: Student nie potrafi współpracować w zespole ale potrafi określić priorytety służące do realizacji postawionego na zajęciach zadania. | |
3,5 | Na ocenę 3.5: Student posiada niewielką umiejętność pracy w zespole. Pełni rolę biernego obserwatora. Potrafi określić priorytety służące do realizacji postawionego na zajęciach zadania. | |
4,0 | Na ocenę 4.0: Student posiada umijętność współpracy w zespole, potrafi w niej pełnić różne role, nie wykazuje jednak zbytniej aktywności. Potrafi określić priorytety służące do realizacji postawionego na zajęciach zadania. | |
4,5 | Na ocenę 4.5: Student posiada umiejętność współpracy w zespole, potrafi w niej pełnić różne role, z próbą zgłaszania własnych pomysłów. Potrafi określić priorytety służące do realizacji postawionego na zajęciach zadania. | |
5,0 | Na ocenę 5: Student potrafi odgrywać różne role w projekcie. Posiada umiejętność kierowania zespołem, rozdzielania zadań pomiędzy innych członków zespołu i ich koordynowania, jak również wykonywania zadań zlecanych przez innych uczestników projektu. Potrafi określić priorytety służące do realizacji postawionego na zajęciach zadania. |
Literatura podstawowa
- Tomas Akenine-Möller, Eric Haines, Naty Hoffman, Real-Time rendering, A.K. Peters Ltd., 2008, trzecie
- Randima Fernando, GPU Gems: Programming Techniques, Tips and Tricks for Real-Time Graphics, Addison-Wesley Professional, 2005
- Engel, Shaderx7, Cengage Learning, 2009
Literatura dodatkowa
- Matt Pharr, Randima Fernando, GPU Gems 2: Programming Techniques for High-Performance Graphics and General-Purpose Computation, Addison-Wesley Professional, 2005, 2011