Programmablauf-Modelle multithreadfähiger Game Engines

Der Gamasutra-Artikel Multithreaded Game Engine Architectures von Ville Mönkkönen geht auf die unterschiedlichen Ansätze ein, wie sich die Aufgaben einer Game Engine parallelisieren lassen. In diesem Zusammenhang werden die folgenden Programmablauf-Modelle vorgestellt:

Synchronous function parallel model: Game Loop mit parallel verlaufenden, unabhängigen Tasks

Asynchronous function parallel model: unabhängig voneinander ablaufende Tasks, die nicht durch eine Game Loop synchronisiert werden

Data parallel model: der Status der Spieleobjekte wird in separaten Threads geupdated (Bewegung, KI, Animation), im Anschluss daran erfolgt das Rendering


Hier nun der Link zum Artikel: