Cyfroteka.pl

klikaj i czytaj online

Cyfro
Czytomierz
00249 009893 11018941 na godz. na dobę w sumie
Perełki programowania gier. Vademecum profesjonalisty. Tom 2 - książka
Perełki programowania gier. Vademecum profesjonalisty. Tom 2 - książka
Autor: Liczba stron: 636
Wydawca: Helion Język publikacji: polski
ISBN: 83-7197-837-5 Data wydania:
Lektor:
Kategoria: ebooki >> komputery i informatyka >> gry >> programowanie gier
Porównaj ceny (książka, ebook, audiobook).
Jeśli zajmujesz się lub zamierzasz się zająć programowaniem gier komputerowych, nie odkładaj tej książki na półkę. Znajdziesz w niej siedemdziesiąt rozwiązań rozmaitych problemów, przed którymi staje programista gier. Są to rozwiązania do natychmiastowego zastosowania lub pomysły, które mogą znacznie zredukować nakład pracy. Ich autorami są najwybitniejsi autorzy gier, współtwórcy wielu prawdziwych hitów. Dość powiedzieć, że redaktorami książki 'Perełki programowania gier' są pracownicy firm takich jak Nintendo czy NVidia Corporation.

Autorzy postarali się, by przedstawiane przez nich perełki ukazywały praktyczne techniki programistyczne, możliwe do osiągnięcia przy użyciu aktualnie stosowanych technologii i pomagające przy pisaniu gier komputerowych. Przykładowe kody źródłowe opierają się na uznanych standardach: językach C i C++, interfejsy OpenGL i DirectX i nieodzownym, gdy chcemy uzyskać maksymalną wydajność asemblerze procesorów x86.

Porady i rozwiązania podzielone są na 6 części:

Dołączony CD-ROM zawiera wszystkie kody źródłowe z książki, dema wielu przedstawionych technik, bibliotekę DirectX 8, instalator glSetup, bibliotekę narzędzi GLUT, obrazy z kolorowej wkładki w wysokiej rozdzielczości.
Znajdź podobne książki Ostatnio czytane w tej kategorii

Darmowy fragment publikacji:

IDZ DO IDZ DO PRZYK£ADOWY ROZDZIA£ PRZYK£ADOWY ROZDZIA£ SPIS TREĎCI SPIS TREĎCI KATALOG KSI¥¯EK KATALOG KSI¥¯EK KATALOG ONLINE KATALOG ONLINE ZAMÓW DRUKOWANY KATALOG ZAMÓW DRUKOWANY KATALOG TWÓJ KOSZYK TWÓJ KOSZYK DODAJ DO KOSZYKA DODAJ DO KOSZYKA CENNIK I INFORMACJE CENNIK I INFORMACJE ZAMÓW INFORMACJE ZAMÓW INFORMACJE O NOWOĎCIACH O NOWOĎCIACH ZAMÓW CENNIK ZAMÓW CENNIK CZYTELNIA CZYTELNIA FRAGMENTY KSI¥¯EK ONLINE FRAGMENTY KSI¥¯EK ONLINE Wydawnictwo Helion ul. Chopina 6 44-100 Gliwice tel. (32)230-98-63 e-mail: helion@helion.pl Pere³ki programowania gier. Vademecum profesjonalisty. Tom 2 Autor: Mark DeLoura T³umaczenie: Rafa³ Joñca ISBN: 83-7197-837-5 Tytu³ orygina³u: Game Programming Gems 2 Format: B5, stron: 608 Jeġli zajmujesz siê lub zamierzasz siê zaj¹æ programowaniem gier komputerowych, nie odk³adaj tej ksi¹¿ki na pó³kê. Znajdziesz w niej siedemdziesi¹t rozwi¹zañ rozmaitych problemów, przed którymi staje programista gier. S¹ to rozwi¹zania do natychmiastowego zastosowania lub pomys³y, które mog¹ znacznie zredukowaæ nak³ad pracy. Ich autorami s¹ najwybitniejsi autorzy gier, wspó³twórcy wielu prawdziwych hitów. Doġæ powiedzieæ, ¿e redaktorami ksi¹¿ki „Pere³ki programowania gier” s¹ pracownicy firm takich jak Nintendo czy NVidia Corporation. Autorzy postarali siê, by przedstawiane przez nich pere³ki ukazywa³y praktyczne techniki programistyczne, mo¿liwe do osi¹gniêcia przy u¿yciu aktualnie stosowanych technologii i pomagaj¹ce przy pisaniu gier komputerowych. Przyk³adowe kody ĥród³owe opieraj¹ siê na uznanych standardach: jêzykach C i C++, interfejsy OpenGL i DirectX i nieodzownym, gdy chcemy uzyskaæ maksymaln¹ wydajnoġæ asemblerze procesorów x86. Porady i rozwi¹zania podzielone s¹ na 6 czêġci: • Programowanie ogólne • Matematyka • Sztuczna inteligencja • Zarz¹dzanie geometri¹ • Grafika • Programowanie dĥwiêku Do³¹czony CD-ROM zawiera wszystkie kody ĥród³owe z ksi¹¿ki, dema wielu przedstawionych technik, bibliotekê DirectX 8, instalator glSetup, bibliotekê narzêdzi GLUT, obrazy z kolorowej wk³adki w wysokiej rozdzielczoġci. 5RKUVTGħEK 2QF\KúMQYCPKC P  1QDTC\MW\QMđCFMKP  $KQITCHKG#WVQTÎYP  2T\GFOQYC P  \úħè+2TQITCOQYCPKGQIÎNPG Q 9RTQYCF\GPKG P  Rozdział 1.1 1RV[OCNK\CELCMQFWYLú\[MW YITCEJ  Konstrukcja i destrukcja obiektu ...................................................j........................................39 Zarządzanie pamięcią ...................................................j...................................................j......42 Funkcje wirtualne ...................................................j...................................................j............43 Rozmiar kodu...................................................j...................................................j...................45 Biblioteka STL...................................................j...................................................j.................45 Zaawansowane funkcje...................................................j...................................................j....47 Dodatkowa lektura...................................................j...................................................j...........48 Rozdział 1.2 4Q\YKLCPKGHWPMELKYOKGLUEWY[YQđCPKCMQPVTCOCMTC   Zalety funkcji inline...................................................j...................................................j.........49 Kiedy należy używać funkcji inline...................................................j....................................51 Kiedy należy używać makr...................................................j.................................................51 Dodatki w kompilatorze Microsoftu...................................................j...................................52 Bibliografia ...................................................j...................................................j......................52 Rozdział 1.3 2TQITCOQYCPKG\Y[MQT\[UVCPKGOCDUVTCME[LP[EJKPVGTHGLUÎY  Abstrakcyjny interfejs...................................................j...................................................j......53 Dodawanie fabryki...................................................j...................................................j...........55 Abstrakcyjne klasy jako zbiory cech ...................................................j..................................56 Wszystko ma swoją cenę ...................................................j...................................................j.59 Wnioski...................................................j...................................................j............................59 Bibliografia ...................................................j...................................................j......................60 Rozdział 1.4 MURQTVMNCU \DKDNKQVGM ..P  Eksport funkcji...................................................j...................................................j.................61 Eksport klasy...................................................j...................................................j....................61 Eksport funkcji członkowskich klasy ...................................................j.................................63 Eksport funkcji wirtualnych klasy ...................................................j......................................63 Podsumowanie ...................................................j...................................................j.................64 4 2GTG đ MKRTQITCOQYCPKCIKGT8CFGOGEWORTQHGULQPCNKUV[6QO Rozdział 1.5 CDG\RKGE\UKúRT\GFRKGMđGODKDNKQVGM .. KDTCMWLæE[EJHWPMELKU[UVGOWQRGTCE[LPGIQ  Łączenie jawne i niejawne...................................................j..................................................66 Funkcje LoadLibrary i GetProcAddress ...................................................j.............................66 Obrona przed błędnymi bibliotekami DirectX ...................................................j...................67 Funkcje specyficzne dla systemu operacyjnego ...................................................j.................68 Podsumowanie ...................................................j...................................................j.................69 Rozdział 1.6 [PCOKE\PCKPHQTOCELCQV[RKGP  Wprowadzenie do klasy dynamicznej informacji o typie...................................................j...71 Demaskowanie typu i odpytywanie DTI ...................................................j............................72 Dziedziczenie oznacza „jest typu”...................................................j......................................73 Obsługa ogólnych obiektów ...................................................j...............................................74 Implementacja trwałej informacji o typie...................................................j...........................75 Zastosowanie trwałej informacji o typie w bazie danych zapisów stanu gry........................77 Wnioski...................................................j...................................................j............................77 Bibliografia ...................................................j...................................................j......................78 Rozdział 1.7 -NCUCYđCħEKYQħEKWOQľNKYKCLæECQIÎNP[FQUVúR FQE\đQPMÎYMNCU P  Kod...................................................j...................................................j...................................80 Inne możliwe wykorzystania klas...................................................j.......................................82 Bibliografia ...................................................j...................................................j......................83 Rozdział 1.8 (CDT[MCLGFPQUVGMYIT\GP  Komponenty...................................................j...................................................j.....................86 Klasy waga piórkowa, zachowań i eksportowa ...................................................j..................86 Obiekty wagi piórkowej...................................................j...................................................j...86 SAMM-y, gdzie jesteś?...................................................j...................................................j....87 Hierarchia klas zachowań ...................................................j...................................................j88 Wykorzystanie wzorca szablonu metod w przypisywaniu zachowań ...................................89 Klasy eksportowe...................................................j...................................................j.............90 Fabryka jednostek ...................................................j...................................................j............91 Wybór strategii w trakcie działania programu...................................................j....................92 Uwagi końcowe ...................................................j...................................................j...............94 Bibliografia ...................................................j...................................................j......................94 Rozdział 1.9 QFCYCPKGMNCU[KPHQTOWLæEGLQPKG\CNGECP[EJHWPMELCEJY   Możliwe rozwiązania...................................................j...................................................j.......95 Idealne rozwiązanie ...................................................j...................................................j.........96 Używanie i przypisywanie niezalecanych funkcji...................................................j..............96 Implementacja niezalecania funkcji w C++...................................................j........................97 Co można poprawić? ...................................................j...................................................j.......98 Podziękowania ...................................................j...................................................j.................98 Bibliografia ...................................................j...................................................j......................98 Rozdział 1.10 /GPGFľGTRCOKúEKRQOQEP[RT\[VGUVQYCPKWIT[   Zaczynamy...................................................j...................................................j.......................99 Rejestracja informacji w menedżerze ...................................................j...............................100 Raportowanie zebranych informacji...................................................j.................................102 O czym należy pamiętać ...................................................j...................................................j104 Możliwe rozszerzenia ...................................................j...................................................j....105 Bibliografia ...................................................j...................................................j....................105 Rozdział 1.11 /QFWđRTQHKNWLæE[YDWFQYCP[YITú   Podstawy profilowania programów ...................................................j..................................107 Komercyjne narzędzia ...................................................j...................................................j...108 Czemu utworzyć własny system? ...................................................j.....................................109 Wymagania dotyczące modułu profilującego...................................................j...................109 Architektura i implementacja...................................................j............................................110 Szczegóły implementacji ...................................................j..................................................111 Analiza danych ...................................................j...................................................j..............111 Uwagi dotyczące implementacji...................................................j.......................................112 Rozdział 1.12 /QFGNRTQITCOQYCPKCNKPKQYGIQYITCEJYU[UVGOKG9KPFQYU   Aktualizacja świata ...................................................j...................................................j........113 Rozwiązanie — wielowątkowość...................................................j.....................................114 Bibliografia ...................................................j...................................................j....................117 Rozdział 1.13 0CYKLCPKGUVQUW P  Prosty tymczasowy powrót...................................................j...............................................119 Łańcuchy tymczasowych powrotów...................................................j.................................120 Thunking...................................................j...................................................j........................122 Rekurencja ...................................................j...................................................j.....................123 Rozdział 1.14 5COQOQF[HKMWLæE[UKúMQF P  Zasady kodu RAM...................................................j...................................................j.........125 Szybkie przekształcanie i kopiowanie bitów ...................................................j....................126 Rozdział 1.15 CT\æF\CPKGRNKMCOK\Y[MQT\[UVCPKGORNKMÎY\CUQDÎY   Czym jest plik zasobów? ...................................................j..................................................133 Projekt...................................................j...................................................j............................134 Implementacja...................................................j...................................................j................135 Ostatnie słowa na temat implementacji ...................................................j............................137 Wnioski...................................................j...................................................j..........................137 Bibliografia ...................................................j...................................................j....................137 Rozdział 1.16 1FVYCT\CPKGKTGLGUVTQYCPKGYGLħèIT[   Do czego może się przydać rejestracja wejść? ...................................................j.................139 Ile to zajmie?...................................................j...................................................j..................141 Testowanie rejestracji wejścia ...................................................j..........................................145 Wnioski...................................................j...................................................j..........................145 Bibliografia ...................................................j...................................................j....................145 Rozdział 1.17 NCUV[E\P[U[UVGOCPCNK\[UMđCFPKQYGLVGMUVW   System analizy składniowej...................................................j..............................................148 Makra, nagłówki i magia wcześniejszego przetwarzania...................................................j.148 Wyjaśnienie systemu analizy składniowej ...................................................j.......................149 Klasa TokenFile...................................................j...................................................j.............152 Uwagi końcowe ...................................................j...................................................j.............153 Rozdział 1.18 +PVGTHGLUWPKYGTUCNPGIQOQF[HKMCVQTCYCTVQħEK\OKGPP[EJ  Analiza wymagań ...................................................j...................................................j..........155 Implementacja...................................................j...................................................j................156 Użycie ...................................................j...................................................j............................160 Uwagi...................................................j...................................................j.............................162 Podziękowania ...................................................j...................................................j...............162 Rozdział 1.19 )GPGTCELCT\GE\[YKħEKGNQUQY[EJNKE\D   Pseudolosowość ...................................................j...................................................j.............163 Rzeczywista losowość ...................................................j...................................................j...164 6 2GTG đ MKRTQITCOQYCPKCIKGT8CFGOGEWORTQHGULQPCNKUV[6QO Źródła losowych wartości...................................................j.................................................164 Źródła sprzętowe...................................................j...................................................j............165 Funkcja mieszająca ...................................................j...................................................j........165 Ograniczenia ...................................................j...................................................j..................166 Implementacja...................................................j...................................................j................166 Jak losowe wartości uzyskujemy z GenRand? ...................................................j.................167 Bibliografia ...................................................j...................................................j....................168 Rozdział 1.20 9[MQT\[UVCPKGHKNVTÎY$NQQOC FQRQRTCYKGPKCY[FCLPQħEKQDNKE\GPKQYGL   Sposób Blooma ...................................................j...................................................j..............169 Możliwe zastosowania...................................................j...................................................j...170 Jak to działa?...................................................j...................................................j..................170 Definicje...................................................j...................................................j.........................170 Pierwszy przykład...................................................j...................................................j..........171 Drugi przykład ...................................................j...................................................j...............175 Uwagi końcowe ...................................................j...................................................j.............175 Wnioski...................................................j...................................................j..........................176 Bibliografia ...................................................j...................................................j....................176 Rozdział 1.21 /QFWđGMURQTVWLæE[RQUVCEKG\RTQITCOW 5VWFKQ/#: KPCT\úF\KCFQV[E\æEGCPKOCELKP  Eksport ...................................................j...................................................j...........................178 Bibliografia ...................................................j...................................................j....................187 Rozdział 1.22 9[MQT\[UVCPKGMCOGTKPVGTPGVQY[EJYITCEJYKFGQ  Inicjalizacja okna przechwytywania danych z kamery...................................................j.....189 Manipulacja danymi z kamery...................................................j..........................................194 Wnioski...................................................j...................................................j..........................197 Bibliografia ...................................................j...................................................j....................198 \úħè++/CVGOCV[MCQ 9RTQYCF\GPKG P  Rozdział 2.1 5\VWE\MK\NKE\DCOK\OKGPPQRT\GEKPMQY[OK ōRQRTCYCY[FCLPQħEKYUVCPFCTF\KG+   Wprowadzenie ...................................................j...................................................j...............203 Format IEEE liczb zmiennoprzecinkowych ...................................................j.....................204 Sztuczki liczb zmiennoprzecinkowych...................................................j.............................205 Liniowa tablica przeglądowa dla funkcji sinus i kosinus ...................................................j.210 Optymalizacja logarytmiczna pierwiastka kwadratowego ..................................................212 Optymalizacja dowolnych funkcji ...................................................j....................................213 Mierzenie wydajności ...................................................j...................................................j....216 Wnioski...................................................j...................................................j..........................217 Bibliografia ...................................................j...................................................j....................217 Rozdział 2.2 5\VWE\MK\YGMVQTCOKKRđCU\E\[\PCOK  Wysokość względem płaszczyzny kolizji...................................................j.........................219 Szukanie punktu kolizji ...................................................j...................................................j.220 Odległość do punktu zderzenia...................................................j.........................................221 Odbicie od płaszczyzny kolizji ...................................................j.........................................222 Zderzenia z tłumieniem ...................................................j...................................................j.225 Interpolacja w poprzek linii lub płaszczyzny ...................................................j...................225 Rozdział 2.3 5\[DMKGKGNCUV[E\PGRT\GEKPCPKGVTÎLY[OKCTQY[EJNKPKK  Co czyni ten algorytm elastycznym? ...................................................j................................228 Sformułowanie problemu ...................................................j.................................................228 Wyprowadzenie równań zwięzłego rozwiązania...................................................j..............230 Obsługa odcinków ...................................................j...................................................j.........236 Opis implementacji ...................................................j...................................................j........239 Możliwości optymalizacji...................................................j.................................................239 Wnioski...................................................j...................................................j..........................240 Bibliografia ...................................................j...................................................j....................240 Rozdział 2.4 1MTGħNCPKGQFYTQVPGLVTCLGMVQTKK P  Szczególne przypadki ...................................................j...................................................j....243 Optymalizacja implementacji ...................................................j...........................................248 Podsumowanie ...................................................j...................................................j...............249 Rozdział 2.5 4COMCVTCPURQTVWTÎYPQNGIđGIQP  Metoda ...................................................j...................................................j...........................252 Wnioski...................................................j...................................................j..........................255 Bibliografia ...................................................j...................................................j....................255 Rozdział 2.6 )đCFMKGħEKGľMK DC\WLæEGPCMYCVGTPKQPCEJ  Wprowadzenie ...................................................j...................................................j...............257 Interpolacja położenia...................................................j...................................................j....258 Interpolacja obrotu...................................................j...................................................j.........259 Kierunek obrotu i selektywna negacja...................................................j..............................260 Interpolacja krzywymi sklejanymi dla kwaternionów...................................................j......261 Osobliwości w wymiernym przekształceniu ...................................................j....................262 Cięcia kamery ...................................................j...................................................j................262 Kod...................................................j...................................................j.................................263 Bibliografia ...................................................j...................................................j....................263 Rozdział 2.7 4GMWTGPE[LPGITWRQYCPKGY[OKCTCOK ōU\[DMKCNIQT[VOFGVGMELK\FGT\GēP  Inne zastosowania ...................................................j...................................................j..........266 Słaby punkt algorytmu...................................................j...................................................j...270 Znajdowanie par będących w kolizji ...................................................j................................271 Złożoność czasowa ...................................................j...................................................j........273 Wnioski...................................................j...................................................j..........................274 Bibliografia ...................................................j...................................................j....................274 Rozdział 2.8 2TQITCOQYCPKGHTCMVCNK P  Fraktal plazmowy ...................................................j...................................................j..........276 Fraktal błędny ...................................................j...................................................j................276 Fraktal ruchu Browna ...................................................j...................................................j....277 Implementacja...................................................j...................................................j................278 Wykorzystanie FBM...................................................j...................................................j......281 Bibliografia ...................................................j...................................................j....................282 \úħè+++5\VWE\PCKPVGNKIGPELC Q 9RTQYCF\GPKG P  Rozdział 3.1 5VTCVGIKGQRV[OCNK\CELKU\VWE\PGLKPVGNKIGPELK  Strategia 1.: Używaj zachowania sterowanego zdarzeniami, a nie odpytywania................287 Strategia 2.: Redukuj niepotrzebne obliczenia ...................................................j.................288 Strategia 3.: Centralizuj współdziałanie za pomocą zarządców ..........................................289 8 2GTG đ MKRTQITCOQYCPKCIKGT8CFGOGEWORTQHGULQPCNKUV[6QO Strategia 4.: Rzadziej uruchamiaj sztuczną inteligencję...................................................j...289 Strategia 5.: Rozłóż przetwarzanie na kilka klatek...................................................j...........290 Strategia 6.: Wprowadź poziomy szczegółowości sztucznej inteligencji............................290 Strategia 7.: Rozwiązuj tylko część zagadnienia ...................................................j..............291 Strategia 8.: Najcięższą pracę wykonuj poza pętlą czasu rzeczywistego ............................291 Strategia 9.: Używaj pojawiających się zachowań, by unikać skryptów.............................292 Strategia 10.: Amortyzuj koszty odpytywań za pomocą ciągłego księgowania..................292 Strategia 11.: Jeszcze raz przeanalizuj problem ...................................................j...............293 Wnioski...................................................j...................................................j..........................293 Bibliografia ...................................................j...................................................j....................294 Rozdział 3.2 /KMTQYæVMKU\VWE\PGLKPVGNKIGPELKQDKGMVWIT[   Prostszy sposób...................................................j...................................................j..............297 Mikrowątki...................................................j...................................................j.....................297 Zarządzanie stosem...................................................j...................................................j........299 Problemy...................................................j...................................................j........................300 Wniosek ...................................................j...................................................j.........................301 Bibliografia ...................................................j...................................................j....................301 Rozdział 3.3 CT\æF\CPKGU\VWE\PæKPVGNKIGPELæ\CRQOQEæOKMTQYæVMÎY  Kawałek po kawałku...................................................j...................................................j......303 Dobre zachowanie...................................................j...................................................j..........304 Wszystko jest w umyśle...................................................j...................................................j.305 Problemy...................................................j...................................................j........................307 Wnioski...................................................j...................................................j..........................309 Bibliografia ...................................................j...................................................j....................310 Rozdział 3.4 #TEJKVGMVWTCMQNGLMQYCPKCRQNGEGēYITCEJ465   Polecenia gier RTS ...................................................j...................................................j........311 Kolejkowanie poleceń...................................................j...................................................j....312 Polecenia cykliczne...................................................j...................................................j........313 Wnioski...................................................j...................................................j..........................316 Bibliografia ...................................................j...................................................j....................316 Rozdział 3.5 9[UQMQY[FCLP[U[UVGOYKFQE\PQħEK KY[U\WMKYCPKCQRCTV[PCUKCVMCEJ P  Ogólne przedstawienie zagadnienia...................................................j..................................317 Definicje...................................................j...................................................j.........................318 Komponent 1.: Mapy widoczności dla poszczególnych graczy ..........................................319 Komponent 2.: Szablony linii widoczności ...................................................j......................319 Komponent 3.: Połączona mapa widoczności ...................................................j..................321 Usprawnione wyszukiwanie ...................................................j.............................................322 Wnioski...................................................j...................................................j..........................324 Rozdział 3.6 /CR[YRđ[YW P  Mapy wpływu ...................................................j...................................................j................325 Prosta mapa wpływu...................................................j...................................................j......326 Dane komórki mapy wpływu...................................................j............................................327 Obliczanie potrzebnych wartości...................................................j......................................328 Określanie optymalnego rozmiaru komórki ...................................................j.....................330 Rozchodzenie się wpływów...................................................j..............................................330 Branie pod uwagę kształtu terenu...................................................j.....................................331 Szczególne okoliczności ...................................................j...................................................j333 Odświeżanie mapy wpływu ...................................................j..............................................333 Mapy wpływu w trójwymiarowych środowiskach...................................................j...........334 Bibliografia ...................................................j...................................................j....................335 Rozdział 3.7 6GEJPKMKQEGP[UVTCVGIKE\PGL P  Drzewo przydziału zasobów...................................................j.............................................337 Obliczanie pożądanego przydziału ...................................................j...................................339 Określanie aktualnego przydziału...................................................j.....................................339 Podejmowanie strategicznych decyzji ...................................................j..............................340 Miary wartości ...................................................j...................................................j...............341 Graf zależności ...................................................j...................................................j..............341 Węzły grafu zależności...................................................j...................................................j..342 Ekonomiczne planowanie ...................................................j.................................................342 Znajdowanie czułych zależności ...................................................j......................................343 Wnioskowanie strategiczne ...................................................j..............................................343 Osobowość postaci ...................................................j...................................................j........344 Łączymy wszystko razem...................................................j.................................................345 Bibliografia ...................................................j...................................................j....................345 Rozdział 3.8 #PCNK\CVGTGPWYVTÎLY[OKCTQY[EJITCEJCMELK  Reprezentacja terenu, która pozwoli go zrozumieć i przeanalizować .................................348 Punkty kontrolne...................................................j...................................................j............348 Przykładowy teren i potrzeby sztucznej inteligencji ...................................................j........349 Analiza taktyczna...................................................j...................................................j...........349 Od wartości taktycznych do właściwości punktów kontrolnych.........................................350 Obliczanie właściwości punktów kontrolnych ...................................................j.................351 Wiedza płynąca z doświadczenia zdobywanego w trakcie gry ...........................................354 Umieszczanie analizy terenu w grze...................................................j.................................354 Inne zastosowania ...................................................j...................................................j..........355 Wnioski...................................................j...................................................j..........................356 Bibliografia ...................................................j...................................................j....................356 Rozdział 3.9 4Q\U\GT\QPCIGQOGVTKCFNC\PCLFQYCPKCFTQIK OGVQFæRWPMVÎYYKF\KCNPQħEKP  Definiowanie modelu zderzeń ...................................................j..........................................358 Znajdowanie drogi między wielokątami...................................................j...........................358 Rozszerzaj i zwyciężaj...................................................j...................................................j...359 Suma Minkowskiego dla wypukłych wielokątów ...................................................j............359 Rozszerzanie niewypukłej geometrii ...................................................j................................361 Dobór kształtu zderzenia ...................................................j..................................................362 Wnioski...................................................j...................................................j..........................363 Bibliografia ...................................................j...................................................j....................363 Rozdział 3.10 1RV[OCNK\CELC\PCLFQYCPKCFTQIKOGVQFæRWPMVÎYYKFQE\PQħEK   Znajdowanie drogi za pomocą punktów widoczności...................................................j......366 Przechowywanie najkrótszej ścieżki do każdego punktu ...................................................j.366 Łączenie narożników ...................................................j...................................................j.....367 Optymalizacja 2.: Rozważaj tylko ścieżki idące wokół narożników...................................368 Strefy zarysu ...................................................j...................................................j..................368 Używanie stref zarysu z podziałem przestrzeni...................................................j................370 Wnioski...................................................j...................................................j..........................370 Bibliografia ...................................................j...................................................j....................371 Rozdział 3.11 5VCFC\\úDCOKFTCRKGľPKE[KQHKCT[P  Całkowicie nowy świat...................................................j...................................................j..374 Stada z zębami ...................................................j...................................................j...............377 Ograniczenia i możliwe rozszerzenia ...................................................j...............................377 Bibliografia ...................................................j...................................................j....................378 10 2GTG đ MKRTQITCOQYCPKCIKGT8CFGOGEWORTQHGULQPCNKUV[6QO Rozdział 3.12 1IÎNP[CWVQOCVUVCPÎYTQ\O[V[EJYLú\[MW   Dlaczego warto używać FuSM w grach? ...................................................j.........................380 Jak używać FuSM w grze? ...................................................j...............................................381 Krótkie wprowadzenie do ogólnego automatu stanów skończonych z pierwszego tomu ......381 Dostosowywanie oryginalnego automatu do FuSM w C++................................................382 Teraz dodaj logikę rozmytą do własnych gier!...................................................j.................383 Bibliografia ...................................................j...................................................j....................383 Rozdział 3.13 OPKGLU\CPKGGMURNQ\LKMQODKPCELKYU[UVGOCEJTQ\O[V[EJ  Problem...................................................j...................................................j..........................385 Rozwiązanie...................................................j...................................................j...................386 Konkretny przykład ...................................................j...................................................j.......388 Konkretny przykład w metodzie Combsa...................................................j.........................390 Wnioski...................................................j...................................................j..........................392 Bibliografia ...................................................j...................................................j....................392 Rozdział 3.14 7ľ[YCPKGUKGEKPGWTQPQY[EJYITCEJōMQPMTGVP[RT\[MđCF   Gra ...................................................j...................................................j.................................393 Wielowarstwowy perceptron ...................................................j............................................394 Dobór wejść ...................................................j...................................................j...................395 Zbieranie danych...................................................j...................................................j............396 Trenowanie MLP ...................................................j...................................................j...........397 Wyniki ...................................................j...................................................j...........................398 Wnioski...................................................j...................................................j..........................399 Bibliografia ...................................................j...................................................j....................399 \úħè+8 CT\æF\CPKGIGQOGVTKæ Q 9RTQYCF\GPKG P  Rozdział 4.1 2QTÎYPCPKGOGVQF8+/2P  Czynniki...................................................j...................................................j.........................405 „Czysta” metoda VIMP ...................................................j...................................................j.407 Paski pomijane...................................................j...................................................j...............410 Wielopoziomowe paski pomijane...................................................j.....................................411 Tryb mieszany VIMP...................................................j...................................................j.....413 Tryb mieszany pasków pomijanych ...................................................j.................................414 Przesuwane okno ...................................................j...................................................j...........414 Podsumowanie ...................................................j...................................................j...............418 Bibliografia ...................................................j...................................................j....................418 Rozdział 4.2 7RTCU\E\CPKGVGTGPW\CRQOQEæ\C\úDKCPKCMTCVGM   Zabawa z kratkami...................................................j...................................................j.........420 Tworzenie mapy ...................................................j...................................................j............421 Szablony kratek...................................................j...................................................j..............422 Brzydko, brzydko, brzydko ...................................................j..............................................422 Lepiej, szybciej, silniej ...................................................j...................................................j..424 Wnioski...................................................j...................................................j..........................424 Bibliografia ...................................................j...................................................j....................425 Rozdział 4.3 T\GYCMWNFNCU\[DMKGIQQMTGħNCPKCYKFQE\PQħEK TC[VTCEMKPIWKY[U\WMKYCPKC\CMTGUQYGIQ   Kule otaczające ...................................................j...................................................j..............427 Używanie drzew kul ...................................................j...................................................j......428 Przykładowa aplikacja ...................................................j...................................................j...429 Rozdział 4.4 5MQORTGUQYCPGFT\GYCU\GħEKCPÎYQVCE\CLæE[EJ TÎYPQNGIđ[EJFQQUK P  Krótki przegląd sposobów hierarchicznego sortowania ...................................................j...431 Drzewa AABB...................................................j...................................................j...............432 Tworzenie drzew AABB ...................................................j..................................................433 Kompresja drzew AABB ...................................................j..................................................433 Aproksymacja wymiarów ...................................................j.................................................434 Wykorzystywanie rekurencji ...................................................j............................................435 Wydajność w trakcie działania ...................................................j.........................................435 Dalsze rozszerzenia...................................................j...................................................j........436 Bibliografia ...................................................j...................................................j....................436 Rozdział 4.5 2T\GU\WMKYCPKGFT\GYCE\YÎTMQYGIQQDG\RQħTGFPKOFQUVúRKG   Gdzie idzie wydajność ...................................................j...................................................j...438 Usuwanie pośredników...................................................j...................................................j..439 Warunki i wymagania...................................................j...................................................j....439 Określanie poziomu drzewa...................................................j..............................................440 Dostosowywanie do sytuacji ...................................................j............................................442 Określanie położenia...................................................j...................................................j......443 Przemieszczanie się po drzewie czwórkowym...................................................j.................444 Dostosowywanie drzewa czwórkowego...................................................j...........................444 Rozdział 4.6 #RTQMU[OCELC\CđCOCēYCMYCTKCEJ   Obserwacja akwarium...................................................j...................................................j....445 Poprawa realizmu ...................................................j...................................................j..........448 Wniosek ...................................................j...................................................j.........................448 Rozdział 4.7 4GPFGTQYCPKG\T\WVÎYGMTCPQY[EJ QTQ\F\KGNE\QħEKPCFCLæEGLUKúFQFTWMW  Podstawowy algorytm...................................................j...................................................j....450 Uwagi i ewentualne problemy ...................................................j..........................................452 Zakończenie ...................................................j...................................................j...................452 Bibliografia ...................................................j...................................................j....................452 Rozdział 4.8 5VQUQYCPKGħNCFÎYFNCFQYQNP[EJRQYKGT\EJPK   Algorytm...................................................j...................................................j........................453 Przycinanie trójkątów ...................................................j...................................................j....455 Implementacja...................................................j...................................................j................456 Bibliografia ...................................................j...................................................j....................456 Rozdział 4.9 4GPFGTKPIQFNGIđGLUEGPGTKKLCMQVđQ P  Podstawowa metoda ...................................................j...................................................j......459 Rozdzielczość tła ...................................................j...................................................j...........459 Rozmiar sześcianu tła ...................................................j...................................................j....460 Rendering sceny...................................................j...................................................j.............461 Sześcienne mapowanie środowiska ...................................................j..................................461 Tworzenie tekstur tła ...................................................j...................................................j.....462 Wniosek ...................................................j...................................................j.........................462 Kod źródłowy ...................................................j...................................................j................462 Rozdział 4.10 2QUVCEKGT\WECLæEGPCUKGDKGEKGēP  Wcześniejsze metody...................................................j...................................................j.....463 Podział geometrii postaci...................................................j..................................................463 Rendering tekstury...................................................j...................................................j.........464 Rendering postaci ...................................................j...................................................j..........464 Wniosek ...................................................j...................................................j.........................465 Bibliografia ...................................................j...................................................j....................465 12 2GTG đ MKRTQITCOQYCPKCIKGT8CFGOGEWORTQHGULQPCNKUV[6QO Rozdział 4.11 5VGTQYCPKGKCPKOCELC\RQ\[ELKVT\GEKGLQUQD[ YIT\G5WRGT/CTKQ P  Ustawienia ...................................................j...................................................j.....................467 Konwersja wejścia kontrolera...................................................j...........................................468 Obrót postaci...................................................j...................................................j..................469 Przesuwanie postaci...................................................j...................................................j.......470 Animacja postaci...................................................j...................................................j............471 Analiza animacji Super Mario 64 ...................................................j.....................................473 Wniosek ...................................................j...................................................j.........................474 Bibliografia ...................................................j...................................................j....................474 \úħè89[ħYKGVNCPKGITCHKMK Q 9RTQYCF\GPKG P  Rozdział 5.1 4GPFGTKPIMTGUMÎYGMōY[MT[YCPKG KTGPFGTKPIMTCYúF\KU[NYGVMKYE\CUKGT\GE\[YKUV[O  Twórca zarysów...................................................j...................................................j.............479 Ważne krawędzie...................................................j...................................................j...........480 Metody wykrywania krawędzi sylwetki ...................................................j...........................481 Wyciąganie rysunku w tuszu bazujące na krawędziach ...................................................j...481 Wyciąganie rysunku w tuszu za pomocą programowanego shadera wierzchołków ...........483 Wyciąganie rysunku w tuszu za pomocą zaawansowanych funkcji tekstur........................485 Wniosek ...................................................j...................................................j.........................486 Bibliografia ...................................................j...................................................j....................486 Rozdział 5.2 4GPFGTKPIMTGUMÎYGM\CRQOQEæOCRQYCPKCVGMUVWT KRTQITCOQYCP[EJUJCFGTÎYYKGT\EJQđMÎY  Cieniowanie w kreskówkach ...................................................j............................................487 Malowanie ...................................................j...................................................j.....................488 Programowane shadery wierzchołków ...................................................j.............................491 Wniosek ...................................................j...................................................j.........................493 Bibliografia ...................................................j...................................................j....................493 Rozdział 5.3 /GVQF[F[PCOKE\PGIQQħYKGVNGPKCFNCRKMUGNK  Trójwymiarowe tekstury w dynamicznym oświetlaniu...................................................j....495 Mapowanie nierówności dot3...................................................j...........................................498 Normalizacja za pomocą map sześciennych...................................................j.....................501 Światła stożkowe bazujące na pikselach ...................................................j..........................502 Bibliografia ...................................................j...................................................j....................503 Rozdział 5.4 6YQT\GPKGRTQEGFWTCNP[EJEJOWT \CRQOQEæMCTVITCHKE\P[EJ\CMEGNGTCELæ   Właściwości chmur...................................................j...................................................j........505 Generator liczb losowych ...................................................j.................................................506 Animacja oktawy szumu...................................................j...................................................j508 Mapowanie na geometrię nieba ...................................................j........................................511 Dodatkowe funkcje ...................................................j...................................................j........511 Ograniczenia sprzętowe...................................................j...................................................j.512 Uzyskiwanie większej uniwersalności...................................................j..............................513 Wnioski...................................................j...................................................j..........................513 Bibliografia ...................................................j...................................................j....................514 Rozdział 5.5 /CUMQYCPKGVGMUVWTYEGNWRT\[URKGU\GPKCT[UQYCPKC GHGMVWUQE\GYMKP  Zasłanianie efektu soczewki ...................................................j.............................................515 Problemy sprzętowe...................................................j...................................................j.......516 Maskowanie tekstur ...................................................j...................................................j.......518 Uwagi co do wydajności...................................................j...................................................j519 Usprawnienia ...................................................j...................................................j.................520 Przykładowy kod ...................................................j...................................................j...........520 Alternatywne podejścia...................................................j...................................................j..521 Bibliografia ...................................................j...................................................j....................521 Rozdział 5.6 2TCMV[E\PGEKGPKGQRCTVGPCDWHQTCEJRTKQT[VGVQY[EJ  Porównanie buforów priorytetowych z buforami głębi...................................................j....525 Rozwiązywanie problemów z aliasingiem ...................................................j.......................526 Metody hybrydowe ...................................................j...................................................j........528 Podsumowanie ...................................................j...................................................j...............529 Bibliografia ...................................................j...................................................j....................529 Rozdział 5.7 1U\WħEKōFQFCYCPKGħOKGEK P  Cały proces ...................................................j...................................................j....................532 Rendering oszusta ...................................................j...................................................j..........532 Heurystyka aktualizacji...................................................j...................................................j..536 Wydajność ...................................................j...................................................j.....................538 Przewidywanie...................................................j...................................................j...............538 Podsumowanie ...................................................j...................................................j...............539 Rozdział 5.8 \KCđCPKCYURT\úEKGRQ\YCNCLæEG PCRTQEGFWTCNPæCPKOCELúVGMUVWT P  Operacje sprzętowe...................................................j...................................................j........542 Dalsza praca...................................................j...................................................j...................551 Podziękowania ...................................................j...................................................j...............552 Przykładowy kod ...................................................j...................................................j...........552 Bibliografia ...................................................j...................................................j....................552 \úħè8+2TQITCOQYCPKGFļYKúMWQ 9RTQYCF\GPKG P  Rozdział 6.1 9\QTEGRTQLGMVQYGYRTQITCOQYCPKWFļYKúMWYITCEJ  Most ...................................................j...................................................j...............................557 Fasada ...................................................j...................................................j............................558 Złożenie ...................................................j...............................................
Pobierz darmowy fragment (pdf)

Gdzie kupić całą publikację:

Perełki programowania gier. Vademecum profesjonalisty. Tom 2
Autor:

Opinie na temat publikacji:


Inne popularne pozycje z tej kategorii:


Czytaj również:


Prowadzisz stronę lub blog? Wstaw link do fragmentu tej książki i współpracuj z Cyfroteką: