PL EN


Preferencje help
Widoczny [Schowaj] Abstrakt
Liczba wyników
Tytuł artykułu

Wykorzystanie wielowątkowości w projektowaniu i implementacji wydajnego silnika gier

Autorzy
Identyfikatory
Warianty tytułu
EN
Using multithreading in designing and implementation of efficient game engine
Języki publikacji
PL
Abstrakty
PL
Artykuł ma celu przedstawienie zagadnienia projektowania i implementacji wydajnych silnikow gier wykorzystujących wieloprocesorowe architektury sprzętowe. Praca analizuje przykładowe wykorzystanie programowania wielowątkowego w kontekście gier komputerowych i silników gier. Autor prezentuje przykładowe modele równoległego przetwarzania oraz wzorcowe architektury silników gier wykorzystujących natywne systemowe interfejsy wątkowe oraz technologię OpenMP. Szczegolna uwaga została poświęcona metodom komunikacji oraz synchronizacji w grach komputerowych. Druga część publikacji przedstawia bibliotekę Intel Thread Building Blocks, jej cechy oraz rożnice w architekturze w stosunku do innych dostępnych technologii. Artykuł kończy się przedstawieniem praktycznego zastosowania Intel Thread Building Blocks na przykładzie autorskiego silnika gier AyumiEngine.
EN
The paper aims to present the problem of designing and implementation of efficient game engines by using multiprocessor hardware architectures. The article analyzes example usage of multithreading in the computer games and game engines. The author presents parallel processing architecture models and examples of game engines that use native system thread interfaces and OpenMP technology. Particular attention was devoted to methods of communication and synchronization in computer games. The second part of publication presents Intel Thread Building Blocks library features and differences compared to other technologies. The article concludes with an example of practical implementaion in author's game engine - AyumiEngine.
Słowa kluczowe
Twórcy
  • Politechnika Warszawska, Instytut Informatyki
Bibliografia
  • [1] Steam. Portal dystrybucji cyfrowej gier komputerowych Steam. http://store.steampowered.com/hwsurvey, 2001.
  • [2] Reinders James: Intel Therad Building Blocks Outfitting C++ for Multi-Core Processor Parallelism, O'Reilly, 2007.
  • [3] Gasiński Karol: Rendering przy użyciu biblioteki OpenGL w wielowątkowym środowisku opartym o zarządzanie zadaniami, Zeszyty naukowe Wydziału Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej. Wytwarzanie gier komputerowych 1:s.17-s.24, 2011.
  • [4] Dąbrowski Włodzimierz, Subieta Kazimierz: Podstawy inżynierii oprogramowania, Wydawnictwo PJWSTK, 2005.
  • [5] Dąbrowski Tomasz, Sawicki Adam: Tworzenie wydajnego kodu C++ w podejściu zorientowanym na dane, VIII Konferencja Inżynierii Gier Komputerowych, 2011.
  • [6] Gregory Jason: Game Engine Architecture, A.K. Peters, 2009.
  • [7] Monkkonen Ville: Multithreaded Game Engine Architectures , Gamastura, 2006.
  • [8] Herlihy Maurice, Shavit Nir: Sztuka programowania wieloprocesorowego, Wydawnictwo Naukowe PWN, 2010.
  • [9] Tenenbaum Andrew S: Systemy operacyjne , Wydawnictwo Helion, 2006.
  • [10] Silberschatz Abraham: Podstawy systemow operacyjnych , Wydawnictwo Naukowo-Techniczne, 2005.
  • [11] Jabłoński Szymon: Inżynieria oprogramowania w projektowaniu i implementacji gier komputerowych, Zeszyty naukowe Wydziału Elektroniki, Telekomunikacji i Infrormatyki Politechniki Gdańskiej. Wytwarzanie gier komputerowych1: s.111-s.124, 2011.
  • [12] Zechner Mario : Beginning Android Games , Apress, 2011.
  • [13] Gamma Erich, Helm Richard, Johnson Ralph, Vlisside John: Design Patterns: Elements of Reusable Object-Oriented Software, 1995
  • [14] Jabłoński Szymon, Silnik gry trojwymiarowej umożliwiający destrukcję sceny w czasie rzeczywistym, Praca inżynierska, Politechnika Warszawska, Wydziale Elektroniki i Technik Informacyjnych, 2012.
  • [15] Chapman Barbara, Jost Gabriele, Ruud van van der Pas: Using OpenMP: Portable Shared Memory Parallel Programming, The MIT Press, 2007.
  • [16] Dickheiser Mike: Perełki programowania gier. Vademecum profesjonalisty. Tom 6, Wydawnictwo Helion, 2007.
  • [17] Harbour Jonathan S.: Multi-threaded game engine desing , Course Technology PTR, 2011.
  • [18] Andrews Jeff: Designing the Framework of a Parallel Game Engine, Intel, 2009.
Typ dokumentu
Bibliografia
Identyfikator YADDA
bwmeta1.element.baztech-aa211549-8ad9-47a9-8cf1-2a45ce9c4baa
JavaScript jest wyłączony w Twojej przeglądarce internetowej. Włącz go, a następnie odśwież stronę, aby móc w pełni z niej korzystać.