Przedmiot: Grafika komputerowa
Transkrypt
Przedmiot: Grafika komputerowa
Strona 1 Przedmiot: Grafika komputerowa Rodzaj Semestr Wymiar zajęć Punkty ECTS Sposób zaliczania Przedmiot specjalnościowy 30 godzin wykładu, 30 godzin ćwiczeń 6 egzamin Treści programowe: 1. Wstęp, krótka historia grafiki komputerowej 2. Część teoretyczna: a) Podstawy algorytmiczne i teoria grafiki komputerowej b) Podstawy geometrii w grafice 2D i 3D ▪ transformacje postawowe ▪ krzywe B-spline, siatki, powierzchnie c) Przykładowe algorytmy: ▪ kreślenia prostych na ekranie rastrowym ▪ algorytmy wypełniania obszarów ▪ rzutowanie ukośne i perespektywiczne d) Podstawy renderingu ▪ Modele oświetlenia lokalnego i globalnego ▪ Metody śledzenia promieni ▪ Metody energetyczne ▪ Podstawy teorii barw e) Tekstury, rendering Gorouda, Phonga, Wardiso, itp. f) Na życzenie: elementy programowania 3D w OpenGL lub DirectX 3. Część praktyczna a) Oprogramowanie stosowane do tworzenia grafiki 2D i 3D: przegląd i analiza możliwości b) Podstawy praktycznego modelowania 3D, podstawowe pojęcia c) Interfejs programów 3D - szczególnie Blender3D d) Renderery (Povray, Mentalray, Maxwell, Blender, Yafray) e) Modelowanie ▪ operacje 3D – intersect, union, weld, extrude, smooth, itp) ▪ zaawansowane modelowanie i narzędzia obróbki 3D ▪ własne rozszerzenia w Pythonie, system pluginów, import/export f) Oświetlenie sceny ▪ światła typu PointLight ▪ światła typu AreaLight ▪ światła typu Hemi, SunLight ▪ lampy fotonowe i efekty kaustyki (PhotonLamp) ▪ promieniowanie hemisfery i światła typu AmbientLight ▪ modelowanie parametryczne świata 3D ▪ oświetlenie w modelu Ambient Occlusion g) Teksturowanie ▪ Materiały, tekstury i shadery ▪ Filtry tekstur ▪ Mapowanie tekstur oraz transformacje tekstur ▪ Teksturowanie brył i metody unwrappingu ▪ Tekstury parametryczne ▪ Miksery i transformacje tekstur w Node Editor h) Renderowanie ▪ Metody przyspieszania renderingu, backing tekstur i) Animacja ▪ Podstawy animacji: chronometraż, krzywe IPO, klatkowanie ▪ Animacja parametryczna i symulacje fizyki ▪ Tworzenie gier i wykorzystanie silnika fizycznego Blendera Literatura: Strona 2 1. Foley J.D., van Dam A., i inni , Wprowadzenie do grafiki komputerowej, WNT, 2. Grafika komputerowa metody i narzędzia, praca zbiorowa pod red. J. Zabrodzkiego, WNT, 3. S. Wright, B Lipchak: OpenGL księga eksperta, Helion, 4. Angel E., Interactive Computer Graphics: A top-down approach using OpenGL. Addison-Wesley. 5. Foley et al, Introduction to Computer Graphics. Addison-Wesley. 6. Angel E., OpenGL Primer. Addison-Wesley. 7. Woo et al, OpenGL Programming Guide (Fourth Edition). Addison-Wesley. 8. Computer Graphics and Applications – czasopismo 9. Materiały z Blender Foundation, http://blender.org 10. Blender: Beginners Tutorial Guide: http://download.blender.org/documentation/BlenderTutorialGuide1.tar.gz 11. Blender: Dokumentacja użytkownika: http://wiki.blender.org/index.php/Main_Page.pl Skrócony opis przemiotu: Grafika komputerowa jest od lat uznanym i wdzięcznym tematem, przyciągającym zarówno artystów, jak i matematyków. Celem przedmiotu jest prezentacja podstaw wiedzy związanej z technikami obliczeniowymi stosowanymi w grafice 2D i 3D, jak również umożliwienie samodzielnego wejścia w świat modelowania i renderingu. Cały przedmiot jest podzielony na część teoretyczną i praktyczną. W części teoretycznej jest mowa o matematyce, fizyce światła i programowaniu, natomiast w części praktycznej wykład dotyczy samodzielnego modelowania scen 3D, oświetlania ich, oteksturowywania oraz renderowania. W efekcie student może zdobyć podstawy pozwalające na samodzielne pisanie aplikacji rysujących w 2D/3D oraz umiejętność generowania trójwymiarowych scen i animacji za pomocą Blendera3D. Wymagane oprogramowanie: 1. System operacyjny: Linux + X lub Windows XP/Vista 2. Język programowania: C/C++ z bibliotekami Xlib, OpenGL, GLUT, itp. 3. Modeler 3D: Blender3D z Blender Foundation 4. Renderer 3D: Yafray, ewentualnie Blender 5. Ewentualnie: Python 2.5, Powray, Perl, i inne typowe narzędzia