Radosław Mantiuk

West Pomeranian University of Technology, Szczecin, Poland

Przedmiot: Zaawansowane programowanie gier komputerowych (S2)

Tematyka wykładów:

  1. Wyświetlanie obrazów rastrowych (pdf)(pdf)
    • Budowa i charakterystyka wyświetlaczy rastrowych.
    • Budowa karty graficznej, procesor GPU.
    • Próbkowanie, integracja i kwantyzacja sygnału dwuwymiarowego.
    • Rekonstrukcja i wyświetlanie obrazu.
    • Aliasing i antyaliasing.
    • Korekcja gamma.
    • Kalibracja kolorów (profile kolorów i CMS, SPD, metameryzm, kolorymetria, przestrzenie barw CIE RGB, CIE XYZ, wykresy dopasowania barw, wykres chromatyczności, gama barw, punkt bieli)
  2. System graficzny czasu rzeczywistego (pdfpdfpdf):
    • Reprezentacja sceny.
    • Operacje wektorowo-macierzowe.
    • Transformacje geometrii (macierze modelu, widoku i rzutowania, clipping).
    • Rasteryzacja.
    • Równanie oświetlenia.
    • Teksturowanie.
  3. Model oświetlenia (pdf)
    • Źródła światła, materiały i sensory
    • Funkcja BRDF
    • Równanie oświetlenia
    • Funkcja odbicia Fresnela
    • Pojęcia radiancjii i irradiancji
    • Model oświetlenia lokalnego i globalnego
  4. Techniki syntezy wybranych efektów graficznych
    • Przesłanianie środowiska (ang. Ambient Occlusion, Screen Space Ambient Occlusion (pdf)
    • Głębia ostrości (pdf)

 Litaratura:

  • Tomas Akenine-Moller, Eric Haines, Naty Hoffman, Real-Time Rendering (3rd edition), A K Peters, 2008.

Laboriatoria:

  1. Omówienie struktury programu wzorcowego, środowisko IDE, repozytorium SVN.
  2. Obliczenia wektorowo/macierzowe (biblioteka GLM).
  3. Reprezentacja obiektów geometrycznych (biblioteka ASSIMP)(teaPot.ASE).
  4. Cieniowanie Phonga – programowanie shaderów.
  5. Interfejs użytkownika, sterowanie grą.
  6. Mechanika gry.
  7. Tworzenie planszy.
  8. Kolizje.

Programy wzorcowe: glgame4_tmoglgame4

Zaliczenie lab. odbywa się na podstawie prototypowej gry z funkcjonalnościmi opisanymi w zakresie laboratoriów.