The development of a game engine is considered a non-trivial problem. [3] The architecture of such simulation software must be able to manage large amounts of simulation objects in real-time while dealing with “crosscutting concerns” [3,p. 36] between subsystems. The use of object oriented paradigms to model simulation objects in class hierarchies has been reported as incompatible with constantly changing demands during game development [2, p. 9], resulting in anti-patterns and eventual, messy refactoring.[13]
Alternative architectures using data oriented paradigms revolving around object composition and aggregation have been proposed as a result. [13, 9, 1, 11]
This thesis describes the development of such an architecture with the explicit goals to be simple, inherently compatible with data oriented design, and to make reasoning about performance characteristics possible. Concepts are formally defined to help analyze the problem and evaluate results. A functional implementation of the architecture is presented together with use cases common to simulation software.
Eine genaue Schneesimulation ist der Schlüssel zur Erfassung der charakteristischen Visualisierung von Schnee. Aufwendige Methoden existieren, die versuchen Schneeverhalten ganzheitlich zu ergreifen. Die Rechenkomplexität dieser Ansätze hindert sie daran, Echtzeitfähigkeit zu erreichen. Diese Arbeit stellt drei Methoden vor, die unter Verwendung der GPU eine echtzeitfähige Deformation einer Schneeoberoberfläche darstellen. Die Ansätze werden hinsichtlich ihrer wahrheitsgetreuen Schneedarstellung untersucht und nach ihrer Fähigkeit, mit einer zunehmenden Anzahl von schneeverformenden Objekten zu skalieren. Die Ergebnisse zeigen, dass die Methoden bei mehreren hunderten schneeverformenden Objekten ihre Echtzeitfähigkeit beibehalten. Jedoch benachteiligen die charakteristischen Einschränkungen jener Methoden die visuellen Resultate. Ein experimenteller Ansatz ist es, die Anzahl der schneeverformenden Objekte zu reduzieren und durch Zusammenfügen der Methoden ein genaueres, kombiniertes Verformungsmuster zu erzeugen.