Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
6
10Wstęp
Wostatnichlatachprężnierozwijasięprzemysłgierkomputerowych.
Powstająliczneprogramypozwalającenałatweiszybkienapisanie
własnejgry.Twórcygiermogąskupićsięnaprogramowaniurozgrywki,
bezkoniecznościzajmowaniasięzagadnieniamiwyświetlaniagrafiki,
symulacjifizykilubkomunikacjizsystememoperacyjnym.W
szczególnościsilnikfizycznyjestprogramem,lubjegoczęścią,
odpowiedzialnązasymulacjęfizykiwgrachkomputerowych.Obejmuje
tosymulacjęruchuobiektów,wykrywanieiobsługęzderzeń,oraz
symulacjępozostałychzjawiskfizycznychpotrzebnych,abywirtualny
światzachowywałsięjakrzeczywisty.Silnikiużywanedogier
komputerowychpowinnyradzićsobiezesporąliczbąobiektóww
wirtualnymświecie,jednocześnieniewymagającdużoczasuna
obliczenia.Większośćgierwyświetla60klateknasekundę(wprzypadku
konsolistandardemjest30),codajeokoło16milisekunddopodziałuna
obliczeniafizyki,logikigry,orazwyświetlenieobiektów.
Istniejewielesilnikówfizycznych,częśćznichobsługujetylkodwa
wymiaryprzestrzenne,częśćwspierateżtrzeciwymiar.
1010Otejpracy
W
niniejszej
pracy
omówione
będą
tematy
potrzebne
do
zaprogramowaniawłasnego,prostegosilnikafizycznegodlapotrzeb
symulacjidynamikiwieluciał(bryłsztywnych).Pracaprzeznaczonajest
zatemdlaosób,którezżnychpowodówniechcąużywaćgotowych
silnikówgierkomputerowych,azamiasttegowolądowiedziećsięjak
zostałyonezbudowane.Wszystkiewzoryiprzykładybędąpisane
zakładającdwawymiaryprzestrzenne,zuwzględnieniemjednak
możliwienajłatwiejszegowykorzystaniaichwtrzechwymiarach.
Głównymźródłem,naktóregopodstawiepowstałatapracajestkod
silnikaBox2Dorazliczneprezentacjewygłaszaneprzezautoratego
silnikanaGameDevelopmersConference(GDC),udostępnianenajego
stronieinternetowej[1].
Napoczątekomówionezostanąbryłysztywne,opisująceobiekty
znajdującesięwsymulowanymświecie.Następnieopisanebędątechniki
wykrywaniakolizjiwfazachszerokiej(bryłybrzegowe)iwąskiej
(algorytmSAT).Nakoniecomówionezostanąwięzy,pozwalającełączyć
zesobąobiekty.