01.02.2013 Aufrufe

MiCaDo Projektbericht - artecLab - Universität Bremen

MiCaDo Projektbericht - artecLab - Universität Bremen

MiCaDo Projektbericht - artecLab - Universität Bremen

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

An dieser Stelle sollte über die Verwendung eines Preprocessing-Tools nachgedacht werden, d.h. ob<br />

nicht Teile oder sogar ganze Algorithmen vor der eigentlichen Cave-Anwendung ausgeführt werden<br />

können. Runtime-Werkzeuge müssen bei jeder Anfrage nach einem Pfad quasi wieder bei Null<br />

beginnen. Sie legen Speicherplatz für nahezu jeden der Knoten an, die zur Pfadberechnung verarbeitet<br />

werden müssen. Jede Anfrage – diese können natürlich auch parallel auftreten – löst dabei ein<br />

solches Verfahren aus, was den großen Nachteil dieser Methode ausmacht. Eine Möglichkeit eines<br />

Preprocessing-Tools ist es deswegen, eine Tabelle mit allen möglichen Pfaden anzulegen. Die Komplexität<br />

sinkt dadurch bei einer Pfadanfrage, da die Pfade direkt aus der Tabelle entnehmbar sind. Die<br />

vorverarbeitende Berechnung kann Informationen über das jeweilige Gelände sowie Verbindungsinformationen<br />

und Anwendungsdaten der partitionierten Welt mit einbeziehen. Allerdings muss sich<br />

hierbei auf rein statische Informationen der virtuellen Welt beschränkt werden. Die Navigation betreffende<br />

Änderungen zur Laufzeit, wie zum Beispiel eine plötzlich im Weg stehende andere Kreatur,<br />

können nicht berücksichtigt werden.<br />

7.2 Möglichkeiten der Navigationsdatenerzeugung<br />

Wie im vorigen Artikel bereits angesprochen, muss in der ersten Ebene eines Wegfindealgorithmus<br />

die virtuelle Welt abstrahiert und partitioniert werden. Es müssen Navigationsdaten erzeugt werden.<br />

Rasterung, Wegpunktesystem und Navigationsgitter sind Beispiele hierfür, die wir nun im folgenden<br />

näher erläutern möchten.<br />

7.2.1 Rasterung<br />

Ein erster Ansatz, den wir für Erhebung von Navigationsdaten in Betracht gezogen haben, ist die Einteilung<br />

der gesamten Fläche des virtuellen Raumes in ein schachbrettartiges Raster [Rab02, S. 264–<br />

265]. Für jedes einzelne Quadrat, das sich dadurch ergibt, wird nun jeweils festgelegt, ob es im einfachsten<br />

Fall für die Kreaturen begehbar ist oder nicht. Liegt es beispielsweise im Wasser oder handelt<br />

es sich dabei um eine Mauer, wird es dementsprechend markiert. In komplexeren Ansätzen ließe<br />

sich zusätzlich definieren, welche Eigenschaften einer Kreatur zum Betreten der jeweiligen Fläche<br />

nötig sind. Eine Kreatur, die schwimmen kann, könnte dann natürlich eine Wasserfläche betreten; eine<br />

ohne diese Fähigkeit bliebe wiederum davor stehen. Für die Berechung der Wege, welche Kreaturen<br />

auf diesem Raster zu ihrem angestrebten Ziel bringen, müssen geeignete Wegewahlalgorithmen<br />

eingesetzt werden, wie zum Beispiel der A*-Algorithmus.<br />

47

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!