Aleksander Denisiuk. Materiały dydaktyczne PJWSTK

Podstawy OpenGL

  1. .. (Powrót)
  2. Triangle.zip Pobierz projekt, wyświetlający trójkąt.
    1. skompiluj (poleceniem make) i uruchom
    2. przeanalizuj kod: gdzie się tworzy VBO, gdzie VAO i co to w ogóle jest?
    3. w jaki sposób zostało zaprogramowano, że Esc kończy pracę?
    4. Jako rozwiązanie w tym i kolejnych zadaniach trzeba przysłać archiwum wygenerowane poleceniem make zip.
    5. opcje linkera dla Code::Blocks w systemie Windows: -lglfw3 -lglew32 -lopengl32 jak na rysunku
    6. opcje linkera dla Code::Blocks w systemie Linux: -lX11 -lglfw -lGL -lGLU -lGLEW
    7. zmienna DEBUG w  ustawianiach Code::Blocks na rysunku
  3. (6 punktów) Napisz program, wyświetlający kolejno (po naciśnięciu spacji) wypełnioną gwiazdę oraz okrąg. Kolor wybierz z poniższej tabeli, gdzie n=(suma cyfr indeksu)mod10. Utwórz w programie dwa VAO.
    nkolor
    0czerwony
    1zielony
    2niebieski
    3żółty
    4czarny
    5fuchsia
    6cyan
    7brązowy
    8oliwkowy
    9pomarańczowy

  4. Dla wypełnionej gwiazdy użyj jednego wachlarza trójkątów o środku w centrum gwiazdy (GL_TRIANGLE_FAN). Tego obrazka po lewej nie trzeba implementować. Czy wiesz, jak działa GL_TRIANGLE_STRIP?
  5. Okrąg zrób za pomocą linii (GL_LINES, GL_LINE_STRIP lub GL_LINE_LOOP — do wyboru).
  6. image/svg+xml Dodanie nowego obiektu:
    1. Tablice wierzchołków i kolorów w funkcji Initialize() obiektu.
    2. Polecenie renderowania w funkcji Draw() obiektu.
    3. Rejestracja obiektu w window.h.
    4. Uzupełnienie funkcji InitModels() klasy Window.
    5. Uzupełnienie funkcji Run() klasy Window.
  7. 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