Przykłady teksturowania w OpenGL

zrzut ekranu z programu

Trzy proste programiki przedstawiające proste figury w przestrzeni trójwymiarowej. Każda ścianka figury rysowana jest za pomocą polygonów GL_TRIANGLE, na które nakładana jest tekstura wczytana z pliku. Teksturą jest plik graficzny w formacie BMP. Dwa pierwsze przykłady mają na celu pokazanie w jaki sposób wczytać dane tekstury i nałożyć na każdą ścianę bryły. Trzeci przykład demonstruje działanie funkcji obliczania normalnych dla każdej ścianki bryły, dzięki czemu nie obciażamy tym procesora - standardowo w OpenGL odpowiada za to funkcja glEnable(GL_AUTO_NORMAL);.

zrzut ekranu z programu

W pliku conf.txt mozemy zmienić trzy parametry, kolejno obrót dla osi X,Y i Z. Wartość 1 oznacza, że obiekt będzie obracany wokół danej osi, 0 oznacza brak obrotu. Dodatkowo każdy programik jest napisany w dwóch wersjach, jedna wersja wykorzystuje bibliotekę GLUT, natomiast druga wersja wykorzystuje bibliotekę systemową Windows API. Dodatkowo programy zawierają funkcję obliczającą normalne dla każdego wierzchołka bryły. Obiekty możemy obracać i powiekszać za pomocą klawiatury (instrukcja w plku readme).

Usage:
Wersja pod WIN - parametry zapisane są w pliku conf.txt, kolejno RotX, RotY, RotZ,
Wersja pod GLUT - bez parametrów program uruchamia się z defaultowymi ustawieniami,
C:>prog.exe