Piotr Besta tworzenie-gier-2d-i-3d-w-jezyku-turbo-pascal full scan.pdf
(
8594 KB
)
Pobierz
4
Tworzenie gier 2D i 3D w jzyku Turbo Pascal
Liczby ze znakiem.............................................................................................................94
Kopiowanie fragmentów pami*ci .....................................................................................95
Wypełnianie fragmentów pami*ci ....................................................................................99
Przerwania sprz*towe i programowe ..............................................................................100
Porty ................................................................................................................................105
Podsumowanie ................................................................................................................106
Rozdział 4. Nowe -wiaty..................................................................................107
Jak działaj; gry? ..............................................................................................................107
Jak powstaje obraz?.........................................................................................................111
Tryb 13h ..........................................................................................................................114
Kolory..............................................................................................................................115
Ustawianie trybu graficznego 13h...................................................................................119
Piksele .............................................................................................................................121
Linie poziome..................................................................................................................128
Linie pionowe..................................................................................................................132
Wypełnianie ekranu jednym kolorem .............................................................................136
Programowanie palety kolorów ......................................................................................138
Rotacja kolorów ..............................................................................................................144
Obcinanie palety kolorów ...............................................................................................147
Kraw*d> ekranu...............................................................................................................148
Magazynowanie procedur i funkcji.................................................................................150
Podsumowanie ................................................................................................................159
Rozdział 5. Obrazy...........................................................................................161
Przetwarzanie plików ......................................................................................................161
Format BMP....................................................................................................................165
Odczytywanie obrazu z pliku BMP ................................................................................168
Dynamiczne przydzielanie pami*ci ................................................................................173
Zorganizowane odczytywanie obrazów ..........................................................................177
Uaktualnienie modułu GRAF_FX ..................................................................................181
Szybkie ładowanie palety kolorów .................................................................................186
Zorganizowane wywietlanie obrazów ...........................................................................187
Przezroczyste kolory .......................................................................................................193
Bitmapy o jednakowej palecie kolorów ..........................................................................198
Skalowanie bitmap ..........................................................................................................200
Ostatnia tajemnica stosu..................................................................................................204
Podsumowanie ................................................................................................................205
Rozdział 6. Komunikacja z graczem i wy)wietlanie tekstu.................................207
Klawiatura .......................................................................................................................207
Mysz ................................................................................................................................214
Wywietlanie tekstu ........................................................................................................217
Podsumowanie ................................................................................................................223
Rozdział 7. Animacja .......................................................................................225
Prosta animacja ...............................................................................................................225
Drugi bufor wideo i likwidacja mrugania ekranu ...........................................................229
Animacja wielu obiektów................................................................................................237
Animacja mapy ...............................................................................................................243
Podsumowanie ................................................................................................................250
Spis treci
5
Rozdział 8. Efekty specjalne i d3wik ...............................................................251
Wygaszanie ekranu .........................................................................................................251
Rozjanianie ekranu ........................................................................................................254
Topnienie ekranu.............................................................................................................256
Zalewanie ekranu ciecz; .................................................................................................257
D>wi*k ............................................................................................................................259
DMA — cichy transfer danych .......................................................................................262
Port 008h — port stanu .............................................................................................264
Port 00Ah — port maski kanału ...............................................................................265
Port 00Bh — port trybu ............................................................................................265
Port 00Ch — port przerzutnika.................................................................................266
Format WAV...................................................................................................................267
Karta Sound Blaster ........................................................................................................269
Podsumowanie ................................................................................................................279
Rozdział 9. Grafika 3D.....................................................................................281
Trójwymiarowy układ współrz*dnych............................................................................281
Wektory...........................................................................................................................282
Punkt .........................................................................................................................282
Oznaczanie i rozmiar wektorów ...............................................................................283
Wzajemne poło8enie dwóch wektorów ....................................................................284
Długo5 wektora .......................................................................................................284
Dodawanie wektorów ...............................................................................................285
Odejmowanie wektorów ...........................................................................................285
Mno8enie wektora przez liczb* rzeczywist;.............................................................286
Iloczyn skalarny wektorów .......................................................................................287
Wektorowe mno8enie wektorów ..............................................................................288
Funkcje trygonometryczne sinus i cosinus......................................................................289
Nowe typy danych...........................................................................................................291
Transformacje 3D............................................................................................................294
Obrót wokół osi Y.....................................................................................................294
Obrót wokół osi Z .....................................................................................................296
Obrót wokół osi X.....................................................................................................298
Przesuni*cie ..............................................................................................................299
Skalowanie................................................................................................................301
Problemy z transformacjami .....................................................................................302
Tworzenie obrazu............................................................................................................302
Kamera......................................................................................................................304
Płaszczyzna obcinania ..............................................................................................304
Skrót perspektywiczny..............................................................................................306
Rzutowanie punktu na płaszczyzn* rzutowania .......................................................307
Usuwanie niewidocznych powierzchni.....................................................................311
Metody wywietlania obiektów 3D.................................................................................315
Metoda punktowa............................................................................................................315
Metoda siatkowa (druciana) ............................................................................................326
Metoda jednokolorowych wypełnionych trójk;tów i trójk;tów cieniowanych płasko......345
Trójk;ty z tekstur;...........................................................................................................368
Korekcja perspektywy.....................................................................................................390
Podsumowanie ................................................................................................................409
Dodatek A ........................................................................................................411
Rozdział 6.
W tym rozdziale omówimy dwa sposoby komunikowania si gier z graczem. Pierwszy
sposób dotyczy bdzie klawiatury; poznamy jej działanie, nauczymy si odczytywa
informacj mówi!c! o tym, który klawisz jest wciskany, a który zwalniany, w ko"cu
napiszemy przykładowy program obsługuj!cy klawiatur.
Drugi rodzaj komunikacji zwi!zany bdzie z mysz!; nauczymy si wy$wietla kursor
myszy, odczytywa jego poło%enie i pobiera informacje o stanie przycisków myszy.
Paragraf po$wicony myszy równie% zako"czymy demonstracyjnym programem, w któ-
rym wykorzystamy zdobyt! wiedz w praktyczny sposób.
Osobn! cz$ rozdziału stanowi podrozdział po$wicony technikom wy$wietlania
tekstu w trybie 13h. Stworzymy własn! czcionk i nauczymy si j! stosowa. Na koniec
napiszemy wygodn! procedur wypisuj!c! tekst, podobn! troch do procedury
.
Bierzmy si do pracy!
Klawiatura
Klawiatura jest zaraz obok myszy jednym z najintensywniej wykorzystywanych urz!-
dze" doł!czonych do komputera. Korzystamy z niej podczas tworzenia programów,
prac domowych, $ci!g i wielu innych tekstów. Nas jednak interesuje wył!cznie jej zasto-
sowanie w grach komputerowych. Rysunek. 6.1 przedstawia standardow! klawiatur.
Rysunek 6.1.
Standardowa
klawiatura
208
Tworzenie gier 2D i 3D w jzyku Turbo Pascal
Jako programi$ci gier chcemy mie mo%liwo$ sprawdzenia, czy dany klawisz jest
naci$nity, nie naci$nity czy mo%e przytrzymany.
Zacznijmy od zrozumienia sposobu działania klawiatury. Z klawiatur! poł!czony jest tzw.
kontroler klawiatury (dokładniej jeden z układów scalonych: 8042, 8741 lub 8742).
Mo%emy odnosi si do niego za pomoc! dwóch portów: portu wyj$ciowego — 60h
i portu steruj!cego — 64h. S! to porty dwukierunkowe, co oznacza, %e mo%emy zarówno
odczytywa z nich dane, jak i je do nich zapisywa. Odczytuj!c warto$ z portu 64h,
otrzymujemy troch informacji o stanie klawiatury.
Oto opis bajtu pobranego z portu 64h.
bit 7
bit 6
bit 5
bit 4
bit 3
bit 2
bit 1
bit 0
bit 7 — bł!d parzysto$ci (wył!cznie w modelach PS/2):
1 = ostatni kod przesłano z błdem,
0 = ostatni kod przesłano bez błdu;
bit 6 — czas oczekiwania na nadesłanie danych:
1 = przekroczony,
0 = w normie;
bit 5 — stan portu wyj$ciowego klawiatury:
1 = port zawiera dane od jednostki dodatkowej (wył!cznie w PS/2),
0 = port zawiera dane od klawiatury;
bit 4 — stan blokady klawiatury:
1 = klawiatura odblokowana,
0 = klawiatura zablokowana;
bit 3 — zawarto$ przesyłanego bajtu:
1 = bajt rozkazowy wysłany przez port 64h,
0 = bajt danych wysłany przez port 60h;
bit 2 — wynik przeprowadzenia autotestu klawiatury:
1 = test przebiegł bezbłdnie,
0 = bł!d;
bit 1 — stan portu 60h (zapis):
1 = dane przesyłane przez procesor znajduj! si jeszcze w porcie,
0 = port 60h jest pusty;
Plik z chomika:
liona55
Inne pliki z tego folderu:
macromedia-flash-8-professional.-ksiega-eksperta pełna wersja.pdf
(13011 KB)
magnetyzm osobowości. poznaj sekrety wpływania na innych cała książka.pdf
(6983 KB)
zarządzanie szefem full scan.pdf
(3052 KB)
sześć myślowych kapeluszy full version.pdf
(7964 KB)
Jeffrey Zeldman projektowanie-serwisow-www.-standardy-sieciowe.-wydanie-ii full version.pdf
(33857 KB)
Inne foldery tego chomika:
Angielski
emisja głosu
Filmiki o foto
Filmy (haslo 123)
Fotografia
Zgłoś jeśli
naruszono regulamin