Original title:
Fyzikální simulace pro hru pinball
Translated title:
Physics Simulation for Pinball Game
Authors:
Čermák, Jakub ; Polok, Lukáš (referee) ; Zachariáš, Michal (advisor) Document type: Bachelor's theses
Year:
2014
Language:
cze Publisher:
Vysoké učení technické v Brně. Fakulta informačních technologií Abstract:
[cze][eng]
Cílem této práce je vytvořit knihovnu pro fyzikální simulaci a pomocí ní vytvořit hru Pinball, na které bude vidět její funkčnost. Ve zprávě jsou popsány problémy a jejich řešení, které se v průběhu návrhu a programování objevily. Mezi těmito problémy lze vyzdvihnout tunelování, detekce a výsledek kolize. Jsou popsány i optimalizace řešení těchto problémů, které bylo možné použít pro naší specifickou knihovnu. Neméně důležité jsou principy, které snižují zátěž výsledné simulace - mezi hlavní lze zařadit správnou volbu mezí, detekce kutálení a uspání pomalu se pohybujících dynamických objektů.
The objective of this work is to create a library for physical simulation and using the library to create a game of pinball, on which you can test functionality of the library. Problems that appeared during the creation of the library, are described in this paper along with their solutions. In particular, tunneling, detection and results of collisions. Subsequent optimization solutions to these problems for our specific library. Of no smaller importance are principles which reduce the requirements of the final simulation. Among the most important ones are the correct choice of limits, detection of rolling and sleep of slowly moving dynamic objects.
Keywords:
C++; collision detection; collision response; intersection; OpenGL; physical simulation; pinball; rolling; timer; tunneling; C++; detekce kolizí; fyzikální simulace; kutálení; OpenGL; pinball; průnik; tunelování; výsledek kolize; časovač
Institution: Brno University of Technology
(web)
Document availability information: Fulltext is available in the Brno University of Technology Digital Library. Original record: http://hdl.handle.net/11012/56568