Cvičenie 06
Na tomto cvičení sa budeme hrať s textúrami a pohybom v skoro 3D svete (niekde to volajú aj 2.5D). Textúry si môžete stiahnuť tu.
Domáce úlohy je možné odovzdať do konca semestra, teda do polnoci pred začiatkom skúškového obdobia.
Zadania
CV06_01 (1 bod) |
Zadanie |
Vytvorte rotujúcu pyramídu, ktorej steny budu otexturované textúrou stena.jpg a podstava textúrou podstava.jpg. |
EXE |
http://mirror.bwpow.eu/pub/upjs/ugr1/cv06/cv06_01.exe |
Vzor |
|
Komentár |
Budete potrebovať využiť funkcie UGLI ugli_texture_filters a ugli_texture a funkcie OpenGL glBindTexture, glTexCoord2f a glEnable(GL_TEXTURE_2D). Inšpiráciu môžete získať na podstránke Informácie ku cvičeniam 5 a 6. |
CV06_E01 |
Zadanie |
Zadanie je podobné, ako v CV06_02, len bez hmly. Navyše treba celý svet uzavrieť do kocky, ktorej steny budú potiahnuté textúrami back.jpg, bottom.jpg, front.jpg, left.jpg, right.jpg, top.jpg. Pre tieto textúry treba nastaviť GL_TEXTURE_WRAP_S a GL_TEXTURE_WRAP_T na GL_CLAMP_TO_EDGE, aby nevznikali artefakty na okrajoch. |
EXE |
http://mirror.bwpow.eu/pub/upjs/ugr1/cv06/cv06_e01.exe |
Vzor |
|
Komentár |
Skúste príklad urobiť bez toho, aby ste zavolali ugli_perspective, resp. aby ste menili near a far hodnoty perspektívy. |
CV06_E02 |
Zadanie |
Vytvorte jednoduchý klon Wolfenstein3D. Chodby majú byť len pravouhlé a každé políčko má byť bud plná stena, alebo chodba. Implementujte aj kolíziu so stenami, aby sa cez ne nedalo prechádzať.
Mapu buď načítajte zo súboru mapa.txt, alebo ju vložte priamo do programu. |
EXE |
http://mirror.bwpow.eu/pub/upjs/ugr1/cv06/cv06_e02.exe |
Vzor |
|
Komentár |
Môžete spraviť aj mapu, ktorá má byť zobrazená len pri stlačení tlačidla m. Skúste pogoogliť gluOrtho2D. |