OpenGL_cwiczenia_cwopgl.pdf

(384 KB) Pobierz
IDZ DO
PRZYK£ADOWY ROZDZIA£
SPIS TRE CI
OpenGL. Æwiczenia
Autor: Waldemar Pokuta
ISBN: 83-7361-172-X
Format: B5, stron: 144
KATALOG KSI¥¯EK
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
Biblioteka OpenGL to zestaw procedur graficznych, których mo¿emy u¿ywaæ
w rozmaitych jêzykach programowania dla ró¿nych systemów operacyjnych.
Jest to ogólnie uznany standard — jego znajomo æ to podstawa do zajmowania
siê grafik¹ komputerow¹.
Ksi¹¿ka, któr¹ trzymasz w rêku, przedstawia jedynie fragment mo¿liwo ci OpenGL,
wystarczaj¹cy jednak, by rozpocz¹æ przygodê z programowaniem grafiki
trójwymiarowej. W odró¿nieniu od innych pozycji po wiêconych tej bibliotece, przyk³ady
zosta³y napisane w jêzyku ObjectPascal (Delphi), co umo¿liwi tak¿e programistom
nie pos³uguj¹cym siê jêzykami C/C++ rozpoczêcie przygody z grafik¹ 3D.
W ksi¹¿ce omówiono:
• Podstawy OpenGL: punkty, linie, trójk¹ty, wielok¹ty, kolorowanie
• Rysowanie z³o¿onych obiektów za pomoc¹ kwadryk
• Pos³ugiwanie siê perspektyw¹ i kamer¹
• Materia³y: kolor, po³ysk, emisjê
• Zagadnienia zwi¹zane ze wiat³em
• Tworzenie dynamicznych scen
• Sk³adanie przekszta³ceñ
• Operacje na macierzach
• Tworzenie bry³
• Tekstury i ich w³a ciwo ci
• Napisy w OpenGL
• Tworzenie prostej gry
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWO CIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
Spis treści
Wstęp............................................................................................................................................................... 7
Język programowania ................................................................................................... 7
Struktura modułu .................................................................................................... 8
Wymagania ................................................................................................................... 9
Przykłady ...................................................................................................................... 9
Rozdział 1.
Podstawy...................................................................................................................................................... 11
Na początku ................................................................................................................ 11
Punkty ......................................................................................................................... 12
Rozmiar punktów ....................................................................................................... 16
Linie............................................................................................................................ 17
Typ linii ...................................................................................................................... 17
Trójkąty....................................................................................................................... 18
Głębia.......................................................................................................................... 19
Widoczność................................................................................................................. 19
Czworokąty................................................................................................................. 20
Typ wielokątów .......................................................................................................... 20
Paski trójkątów ........................................................................................................... 21
Kolorowanie płaskie ................................................................................................... 22
Wierzchołki trójkątów ................................................................................................ 22
Kolorowanie płynne ................................................................................................... 23
Rozdział 2. Kwadryki .....................................................................................................................................................25
Kwadryki z punktów .................................................................................................. 25
Linie............................................................................................................................ 26
Cieniowanie kwadryk ................................................................................................. 27
Rozdział 3. Perspektywa i kamera ......................................................................................................................... 31
Perspektywa................................................................................................................ 31
Kamera........................................................................................................................ 32
4
OpenGL. Ćwiczenia
Rozdział 4. Materiał ...................................................................................................................................................... 35
Kolor materiału........................................................................................................... 35
Połysk ......................................................................................................................... 36
Emisja ......................................................................................................................... 37
Przeźroczystość .......................................................................................................... 38
Mgła............................................................................................................................ 38
Rozdział 5. Światło ......................................................................................................................................................... 41
Włączenie oświetlenia ................................................................................................ 41
Światło tła ................................................................................................................... 42
Światło rozproszone ................................................................................................... 43
Rozbłyski .................................................................................................................... 44
Pozycja........................................................................................................................ 45
Reflektor ..................................................................................................................... 45
Rozmycie .................................................................................................................... 47
Rozdział 6. Dynamika sceny......................................................................................................................................49
Przesuw....................................................................................................................... 49
Obrót ........................................................................................................................... 50
Skalowanie.................................................................................................................. 51
Kolor ........................................................................................................................... 52
Światło ........................................................................................................................ 52
Reflektor ..................................................................................................................... 53
Ruch kamery............................................................................................................... 54
Rozmycie .................................................................................................................... 54
Rozdział 7.
Składanie przekształceń .................................................................................................................... 57
Pierwszy obiekt........................................................................................................... 57
Obrót wokół własnej osi ............................................................................................. 59
Orbita .......................................................................................................................... 59
Podorbita..................................................................................................................... 62
Ruch po elipsie ........................................................................................................... 64
Rozdział 8. Macierze..................................................................................................................................................... 69
Pobranie macierzy ...................................................................................................... 69
Załadowanie macierzy................................................................................................ 70
Macierz to samościowa.............................................................................................. 71
Mno enie macierzy..................................................................................................... 72
Rozdział 9. Tworzenie brył...........................................................................................................................................77
Sześcian ...................................................................................................................... 77
Czworościan ............................................................................................................... 79
Ośmiościan ................................................................................................................. 80
Czternastościan ........................................................................................................... 81
Dwunastościan............................................................................................................ 83
Dwudziestościan ......................................................................................................... 86
Cząsteczka metanu ..................................................................................................... 88
Maczuga elegancka..................................................................................................... 91
Maczuga profesjonalna............................................................................................... 92
Maczuga współczesna ................................................................................................ 93
Spis treści
5
Rozdział 10. Tekstury...................................................................................................................................................... 95
Tekstura 1D ................................................................................................................ 95
Teksturowanie kwadryk ............................................................................................. 96
Nakładanie tekstury po kawałku................................................................................. 98
Lustro — przeźroczystość tekstur ............................................................................ 100
Zdjęcie — bitmapa z pliku ....................................................................................... 101
Rozdział 11. Napisy........................................................................................................................................................ 105
Czcionki bitmapowe ................................................................................................. 105
Kontur ....................................................................................................................... 107
Czcionka 3D ............................................................................................................. 108
Czcionka teksturowana............................................................................................. 109
Metalowy połysk ...................................................................................................... 110
Rozdział 12. Prosta gra 3D .......................................................................................................................................... 113
Sześcian .................................................................................................................... 113
Oświetlenie ............................................................................................................... 115
Figura........................................................................................................................ 117
Obrót sceny............................................................................................................... 118
Osiem figur ............................................................................................................... 121
Przesuw..................................................................................................................... 122
Płynny przesuw......................................................................................................... 123
Obrót ......................................................................................................................... 124
Płynny obrót ............................................................................................................. 126
Skrzynka ................................................................................................................... 127
Kolizja....................................................................................................................... 129
Napisy ....................................................................................................................... 131
Dodatek A
Własny komponent GlBox................................................................................................................ 137
4.
Materiał
Rozdział
W tym rozdziale dodamy właściwości materiału rysowanych obiektów. Kolor, połysk, emisja
światła, przeźroczystość i efekt mgły mogą bardzo o ywić rysowaną scenę.
Otwórz w Delphi projekt
…\Cwiczenia\R04_Material\C04_00_Poczatek\Material.dpr.
Scena zawiera dwanaście obracających się sześcianów. Naszym zadaniem będzie nadać im
ró ne właściwości.
Kolor materiału
Nowa procedura:
IN/CVGTKCNHX HCEG RPCOG RCTCOU
— ustawienie materiału obiektów.
Pierwszy argument określa stronę, z której chcemy zmieniać właściwości materiału
(przód, tył czy obydwie). Drugi parametr określa cechę, którą chcemy ustawić
(
).A#/$+'06A#0&A&+((75'
to odbijanie światła tła i światła rozproszonego). Ostatni
parametr to wskaźnik do tablicy składowych koloru (
TGF ITGGP DNWG CNRJC
).
Ćwiczenie 4.1.
Niech pierwsze dwa sześciany mają kolor materiału zbli ony do ółtego, a pozostałe do
niebieskiego.
W procedurze
).4GPFGT
dopisz:
RTQEGFWTG 6(QTO).4GPFGT 5GPFGT 61DLGEV
XCT
K KPVGIGT
Zgłoś jeśli naruszono regulamin