Stwórz nowy projekt. Zastąp zawartość głównego pliku cpp zawartością cw1.cpp. Nie zapomnij dodać do projektu odpowiednich bibliotek .lib oraz umieścić w odpowiednich miejscach pliki .h i .dll. Skompiluj program. Na ekranie powinny pojawić się dwa okna: pierwsze tekstowe, a drugie puste - jego wnętrze nie będzie odświeżane. Odszukaj w dokumentacji opis funkcji użytych w cw1.cpp. Odkomentuj komentarze i uruchom ponownie program. Na ekranie powinien pojawić się sześcian. Przeanalizuj odkomentowane instrukcje.
Uruchom program cw1.cpp i za pomocą myszki zmień rozmiar okna. Gdy zmieniają się proporcje okna (początkowo było ono kwadratem), zmieniają się także proporcje wyświetlanego sześcianu - wyświetlany sześcian zostaje zwężony lub rozciągnięty w jednej z osi. Celem ćwiczenia 2 jest takie zmodyfikowanie programu cw1.cpp, aby niezależnie od kształtu okna proporcja osi x do y pozostała stała tj. wyświetlana bryła zachowała swoje pierwotne proporcje. Sześcian powinien też zmieniać swoją wielkość proporcjonalnie do zmiany rozmiaru okna.
Proponuje zastosować funkcje:
Porównaj swoje rozwiązanie z moim cw2.cpp.
Należy dodać obsługę klawiatury tak, aby klawisze a i z obracały sześcian wokół osi x. Sugestia: zadeklaruj zmienną globalną przechowują aktualny kąt obrotu.
Proponuje zastosować funkcje:
Zaimplementuj także możliwość obrotu figury w pozostałych osiach. Porównaj swoje rozwiązanie z moim cw3.cpp.
Aby można było odróżnić ściany od siebie, na jednej z nich umieść mały sześcian odmiennego kolorze.
Proponuje zastosować funkcje:
Porównaj swoje rozwiązanie z moim cw4.cpp.
Oznakuj wszystkie ściany w podobny sposób jak w ćwiczeniu 4. Możesz zastosować tutaj inne bryły niż sześcian.
Użyj funkcje:
Porównaj swoje rozwiązanie z moim cw5.cpp.
Zmodyfikuj tak poprzedni program, aby bryła obracała się samodzielnie wokoło jednej z osi bez naciskania jakiegokolwiek klawisza.
Zastosuj funkcję:
Porównaj swoje rozwiązanie z moim cw6.cpp.
Za pomocą glViewport(int x, int y, int w, int h) podziel okno na dwie części. W jednej z nich wyświetlaj bryły tak samo jak w poprzednim ćwiczeniu, a w drugiej wyświetlaj te same bryły, lecz widziane od tyłu - gluLookAt(-5,-5,-5,0,0,0,0,1,0).
Porównaj swoje rozwiązanie z moim cw7.cpp.
Zoptymalizuj swój program używając:
Porównaj swoje rozwiązanie z moim cw8.cpp.
Dodaj drugie źródło światła o kolorze innym niż biały.
Zastosuj:
Porównaj swoje rozwiązanie z moim cw9.cpp.