Aleksander Denisiuk. Materiały dydaktyczne PJWSTK

Przekształcenia w OpenGL

  1. .. (Powrót)
  2. Cube.zip Pobierz projekt, wyświetlający animowany sześcian
    1. Strzałki Left, Right spowalniają/przyśpieszają prędkość obrotu wokół osi Y
    2. Strzałki Down, Up spowalniają/przyśpieszają prędkość obrotu wokół osi X
    3. Spacja zatrzymuje/wznawia animację
    4. opcje linkera dla Code::Blocks w systemie Windows: -lglfw3 -lglew32 -lopengl32 jak na rysunku
  3. K-dron.png (6 punktów) Napisz program, wyświetlający animowany k-dron.
    1. Zaprogramuj możliwość ręcznego obrotu zatrzymanego k-drona: niech strałki Left, Right,
      Up, Down obracają k-dron stosownie w lewo, w prawo, w górę, w dół
    2. Zaprogramuj sterowanie kamerą: niech klawisz End zbliża kamerę, klawisz Home niech oddala kamerę
  4. image/svg+xml Czynności:
    1. Narysuj k-dron na kartce, ponumeruj wszystkie wierzchołki, podpisz ich współrzędne i utwórz tablicę wierzchołków.
    2. Narysuj każdą z jedenastu ścian, podziel na trójkąty i utwórz tablicę indeksów.
    3. Dopasuj polecenie renderowania w funkcji Draw().
    4. Uzupenij k-dron w metody Left(), Right(), Up(), Down(). Wykorzystaj te metody w callbacku na zdarzenia klawiatury klasy Window. Opracuj obydwa zdarzenia.
    5. Działania na kamerze zaimplementuj na macierzy view_matrix_ klasy Window. Pamiętaj odpalić procedurę SetViewMatrix(), aby zaktualizować macierz w karcie graficznej. Czemu nie robiliśmy tego z macierzą model_matrix_ w metodach Left(), Right(), etc?
  5. Nvidia.png Uwaga o kartach Nvidia: jeżeli animacja jest spowolniona, można odznaczyć opcję Sync to VBlank. Czy wiesz, co ta opcja znaczy?
  6. Termin oddania zadań:
    • klasowych: na zajęciach. Zadania, oddane po terminie, warte są połowę punktów
    • domowych: do momentu, gdy się pojawi następne zadanie. Zadania, oddane po terminie, warte są 0 (słownie: zero) punktów
    • W każdym mailu z zadaniem podać pseudonim