triki najlepszych programistów gier 3d. vademecum profesjonalisty helion, ebooki-ksiazki
[ Pobierz całość w formacie PDF ] IDZ DO Triki najlepszych PRZYK£ADOW programistów gier 3D. SPIS TRECI Vademecum profesjonalisty KATALOG KSI¥¯EK Autor: Andre LaMothe T³umaczenie: Adam Bochenek (wstêp, rozdz. 1 –3), Jaros³aw Dobrzañski (rozdz. 6 – 9), S³awomir Dzieniszewski (rozdz. 14 – 16, dod. A – F) ISBN: 83-7361-267-X Tytu³ orygina³ Format: B5, stron: 1312 KATALOG ONLINE ZAMÓW DRUKOWANY KATALOG TWÓJ KOSZYK DODAJ DO KOSZYKA Swoje triki zdradz¹ Ci prawdziwi guru ze wiata twórców gier Tworzenie gier 3D wymaga opanowania nie tylko jêzyka programowania, ale tak¿e wielu innych dziedzin wiedzy -- analizy matematycznej, rachunku macierzowego i wektorowego oraz geometrii. Oczywicie ka¿da z tych nauk zosta³a ju¿ opisana w dziesi¹tkach tomów. Ksi¹¿ka, któr¹ trzymasz w rêce, zawiera wszystkie informacje niezbêdne do stworzenia gry 3D dzia³aj¹cej w rodowisku Windows, zebrane w jednym tomie. Korzystaj¹c z niej, nie bêdziesz ju¿ musia³ przerzucaæ tysiêcy stron w poszukiwaniu potrzebnego Ci wzoru. Autor ksi¹¿ki, wykorzystuj¹c ponad dwudziestopiêcioletnie dowiadczenie w programowaniu, przedstawi Ci: • algorytmy matematyczne wykorzystywane w grafice 3D, • zasady programowania w Windows i DirectX, • algorytmy wywietlania grafiki 2D i 3D, • techniki animacji i renderingu 3D, • mapowanie tekstur, • techniki symulacji owietlenia i wiele innych informacji. Korzystaj¹c z tej ksi¹¿ki, opracujesz doskona³y, oparty wy³¹cznie na warstwie oprogramowania silnik 3D dla gry, wykorzystasz w swoich grach modele i postaci stworzone w programach 3D, stworzysz realistyczn¹ sceneriê gry 3D i zoptymalizujesz kod ród³owy programu pod k¹tem szybkoci jego wykonywania. O autorze: Andre LaMothe to autor uznanych przez rynek ksi¹¿ek o programowaniu gier i grafiki trójwymiarowej. Ci¹g jego sukcesów wydawniczych zapocz¹tkowa³o pierwsze wydanie tej ksi¹¿ki (ustanowi³o ono swego czasu standardy programowania gier dla systemu DOS). Andre LaMothe programuje od ponad 25 lat i oprócz niew¹tpliwej praktyki posiada stosowne wykszta³cenie z zakresu matematyki, informatyki i elektrotechniki. Znany jest równie¿ jako za³o¿yciel firm Xtreme Games LCC, Nurve Networks i XGDC. CENNIK I INFORMACJE ZAMÓW INFORMACJE O NOWOCIACH 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 Wprowadzenie.......................................................................................................................27 Elementy gier 2D/3D.............................................................................................................29 Ogólne wskazówki dotyczce programowania gier..............................................................33 Narz!dzia...............................................................................................................................36 Edytor poziomów 3D.......................................................................................................39 Przygotowanie kompilatora.............................................................................................40 Przykładowa gra 3D: Raiders 3D..........................................................................................43 P!tla obsługi zdarze+.......................................................................................................62 Logika gry 3D..................................................................................................................62 Rzutowanie 3D................................................................................................................64 Gwiezdne tło....................................................................................................................66 Działo laserowe i wykrywanie kolizji.............................................................................66 Eksplozja.........................................................................................................................66 Zasady gry.......................................................................................................................67 Podsumowanie.......................................................................................................................67 !!"#$ Model programowania Win32...............................................................................................69 Programowanie w Windows — absolutne minimum............................................................70 Wszystko zaczyna si! od WinMain()..............................................................................70 Wzorcowa aplikacja Windows..............................................................................................75 Klasa okna.......................................................................................................................76 Rejestracja klasy okna.....................................................................................................80 Tworzenie okna...............................................................................................................80 Obsługa zdarze+..............................................................................................................82 P!tla obsługi komunikatów.............................................................................................87 P!tla obsługi komunikatów pracujca w czasie rzeczywistym.......................................90 DirectX i COM w pigułce......................................................................................................91 HEL i HAL......................................................................................................................93 Komponenty DirectX......................................................................................................94 Wprowadzenie do COM........................................................................................................95 Co to jest obiekt COM?...................................................................................................96 Tworzenie i u>ywanie interfejsów COM biblioteki DirectX..........................................98 Dost!p do interfejsów......................................................................................................98 Podsumowanie.....................................................................................................................100 6 Triki najlepszych programistów gier 3D. Vademecum profesjonalisty %!"&'&!( Zało>enia interfejsu abstrakcyjnego komputera..................................................................101 Budujemy abstrakcyjny komputer.......................................................................................103 System video, bufor ramki.............................................................................................103 Praca z kolorami............................................................................................................106 Kopiowanie bufora........................................................................................................108 Kompletny system graficzny abstrakcyjnego komputera..............................................110 DDwi!k, muzyka, urzdzenia wejEcia............................................................................110 Konsola do gier T3DLIB.....................................................................................................111 Podstawowa konsola do gier.........................................................................................111 Biblioteka T3DLIB..............................................................................................................116 Architektura modułu graficznego..................................................................................117 Podstawowe definicje....................................................................................................117 Makra.............................................................................................................................119 Typy danych, struktury..................................................................................................119 Funkcje..........................................................................................................................122 Globalna dominacja.......................................................................................................125 Interfejs DirectDraw......................................................................................................126 Funkcje operujce na figurach 2D.................................................................................130 Funkcje matematyczne i obsługa bł!dów......................................................................136 Mapy bitowe..................................................................................................................138 Obsługa palety w trybie 8-bitowym..............................................................................142 Funkcje pomocnicze......................................................................................................145 Obiekty BOB.................................................................................................................146 T3DLIB2 — moduł obsługi urzdze+ wejEcia....................................................................154 T3DLIB3 — biblioteka obsługi dDwi!ku i muzyki.............................................................159 Definicje........................................................................................................................160 Typy...............................................................................................................................160 Zmienne globalne..........................................................................................................161 DirectSound API............................................................................................................161 DirectMusic API............................................................................................................166 Ostateczna postaJ konsoli T3D............................................................................................168 Przypisanie funkcji graficznych abstrakcyjnemu modelowi.........................................168 Konsola T3DLIB...........................................................................................................171 Przykładowe aplikacje.........................................................................................................179 Aplikacje okienkowe.....................................................................................................179 Aplikacje pełnoekranowe..............................................................................................180 DDwi!k i muzyka...........................................................................................................181 Klawiatura, myszka, joystick.........................................................................................181 Podsumowanie.....................................................................................................................184 !"! #$ ) *&+!&+"!& ,"&!- Notacje matematyczne.........................................................................................................187 Dwuwymiarowe układy współrz!dnych..............................................................................188 Dwuwymiarowy układ współrz!dnych kartezja+skich.................................................189 Dwuwymiarowy układ współrz!dnych biegunowych...................................................190 Trójwymiarowe układy współrz!dnych...............................................................................193 Trójwymiarowe współrz!dne kartezja+skie..................................................................193 Trójwymiarowe współrz!dne cylindryczne.........................................................................196 Konwersja trójwymiarowych współrz!dnych kartezja+skich do współrz!dnych cylindrycznych..............................................................................196 Spis tre ci 7 Trójwymiarowe współrz!dne sferyczne..............................................................................197 Podstawy trygonometrii.......................................................................................................198 Trójkt prostoktny........................................................................................................199 Odwrotne funkcje trygonometryczne............................................................................200 Zale>noEci trygonometryczne........................................................................................201 Wektory...............................................................................................................................202 DługoEJ wektora............................................................................................................203 Normalizacja..................................................................................................................204 Mno>enie wektora przez wartoEci skalarne...................................................................204 Dodawanie wektorów....................................................................................................205 Odejmowanie wektorów................................................................................................206 Iloczyn skalarny wektorów............................................................................................206 Iloczyn wektorowy........................................................................................................209 Wektor zerowy..............................................................................................................211 Wektory poło>enia i wektory przemieszczenia.............................................................211 Wektory jako kombinacje liniowe składowych.............................................................211 Macierze i algebra liniowa...................................................................................................212 Macierz jednostkowa.....................................................................................................214 Dodawanie macierzy.....................................................................................................214 Transpozycja macierzy..................................................................................................215 Mno>enie macierzy........................................................................................................215 Reguły mno>enia macierzy...........................................................................................217 Wyznaczanie macierzy odwrotnej i rozwizywanie układów równa+................................217 Reguła Cramera.............................................................................................................219 Przekształcenia geometryczne z wykorzystaniem macierzy.........................................221 Współrz!dne jednorodne...............................................................................................222 Przekształcenia macierzowe..........................................................................................223 Podstawowe obiekty geometryczne.....................................................................................230 Punkty............................................................................................................................230 Proste.............................................................................................................................230 Proste w przestrzeni trójwymiarowej............................................................................232 Płaszczyzny...................................................................................................................234 Równania parametryczne.....................................................................................................238 Proste parametryczne na płaszczyDnie i w przestrzeni trójwymiarowej.......................238 Parametryczne definicje odcinków, wykorzystujce zwykły wektor kierunkowy v.....239 Parametryczne definicje odcinków, wykorzystujce jednostkowy wektor kierunkowy |v| = 1...........................................240 Parametryczne proste w przestrzeni trójwymiarowej....................................................241 Kwaterniony — wprowadzenie...........................................................................................246 Teoria liczb zespolonych...............................................................................................247 Rozszerzenie liczb zespolonych....................................................................................252 Zastosowania kwaternionów.........................................................................................257 Wst!p do analizy matematycznej ........................................................................................261 Poj!cie niesko+czonoEci................................................................................................261 Granice...........................................................................................................................263 Sumy i szeregi liczbowe sko+czone..............................................................................264 Szeregi liczbowe niesko+czone.....................................................................................266 Pochodne.......................................................................................................................267 Całki...............................................................................................................................274 Podsumowanie.....................................................................................................................279 . /0"'&" - Moduł matematyczny — przegld.......................................................................................282 Struktura plików modułu matematycznego...................................................................282 Konwencja nazewnicza.................................................................................................282 8 Triki najlepszych programistów gier 3D. Vademecum profesjonalisty Obsługa bł!dów.............................................................................................................283 Słowo na temat j!zyka C++...........................................................................................284 Struktury i typy danych........................................................................................................284 Wektory i punkty...........................................................................................................284 Równania parametryczne prostych................................................................................286 Płaszczyzny w przestrzeni trójwymiarowej..................................................................287 Macierze........................................................................................................................287 Kwaterniony..................................................................................................................290 Obsługa współrz!dnych niekartezja+skich....................................................................291 Dwuwymiarowy układ współrz!dnych biegunowych...................................................292 Trójwymiarowy układ współrz!dnych cylindrycznych................................................293 Trójwymiarowy układ współrz!dnych sferycznych......................................................293 Liczby stałoprzecinkowe...............................................................................................294 Stałe matematyczne.............................................................................................................295 Makrodefinicje i funkcje rozwijane w miejscu wywołania.................................................297 Funkcje u>ytkowe i funkcje konwersji..........................................................................301 Funkcje manipulujce punktami i wektorami...............................................................301 Macierze........................................................................................................................302 Kwaterniony..................................................................................................................304 Obliczenia stałoprzecinkowe.........................................................................................304 Prototypy..............................................................................................................................305 Zmienne globalne ................................................................................................................308 Interfejs programowy modułu matematycznego.................................................................308 Funkcje trygonometryczne............................................................................................309 Funkcje obsługi ró>nych układów współrz!dnych........................................................310 Funkcje obsługi wektorów.............................................................................................313 Funkcje operujce na macierzach..................................................................................321 Funkcje operujce parametryczn reprezentacj prostych na płaszczyDnie i w przestrzeni trójwymiarowej........................................................333 Funkcje obsługi płaszczyzn trójwymiarowych..............................................................337 Funkcje obsługi kwaternionów......................................................................................341 Funkcje oblicze+ stałoprzecinkowych...........................................................................350 Funkcje rozwizujce równania macierzowe................................................................355 Elementarz arytmetyki zmiennoprzecinkowej z wykorzystaniem koprocesora..................357 Architektura jednostki zmiennoprzecinkowej...............................................................358 Stos jednostki zmiennoprzecinkowej............................................................................359 Zestaw instrukcji jednostki FPU....................................................................................361 Klasyczny tryb adresowania operandów.......................................................................364 Tryb adresowania operandów z odwołaniem do pami!ci.............................................364 Tryb adresowania operandów z odwołaniem do rejestru..............................................365 Adresowanie operandów ze zdj!ciem operandu ze stosu..............................................365 Przykłady zastosowania instrukcji jednostki FPU.........................................................366 Instrukcje FLD...............................................................................................................366 Instrukcje FST...............................................................................................................367 Instrukcje FADD...........................................................................................................368 Instrukcje FSUB............................................................................................................371 Instrukcje FMUL...........................................................................................................372 Instrukcje FDIV.............................................................................................................373 Stosowanie modułu matematycznego — uwagi..................................................................374 Nowy szablon aplikacji.................................................................................................375 Słowo o optymalizacji modułu............................................................................................375 Podsumowanie.....................................................................................................................376
[ Pobierz całość w formacie PDF ]
zanotowane.pldoc.pisz.plpdf.pisz.plmement.xlx.pl
|