14.11.2012 Aufrufe

Projekt Micarpet Projektbericht - artecLab - Universität Bremen

Projekt Micarpet Projektbericht - artecLab - Universität Bremen

Projekt Micarpet Projektbericht - artecLab - Universität Bremen

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

<strong>Projekt</strong> MiCarpet <strong>Projekt</strong>bericht<br />

Aktualisierung Die [PlugIn??]s werden bei jedem Frame aktualisiert. Diese Aktualisierung findet<br />

von updateScene(..) aus statt. Zuerst aktualisiert der Modul-Manager alle Input-[PlugIn??]s und<br />

somit wird für jedes [PlugIn??] die updateInput(..) Methode aufgerufen. Nach der Rückkehr des<br />

Modul-Managers liegt eine mehr oder weniger gefüllte Liste mit Input-Events vor, die nun als Eingabedaten<br />

für die Welt verarbeitet werden müssen.<br />

Dies geschieht in updateWorld(..) welches u.a. auf jedem dynamischen Objekt ein<br />

updateObject(..) mit der Eventliste als Parameter aufruft. Die Events sind (auf die Objekte bezogen)<br />

in der aktuellen Form der Engine im Wesentlichen nur für das Player-Objekt interessant.<br />

Nachdem die Welt mit ihren Objekten in einen neuen Zustand gesetzt wurde, kann ein Update der Output-<br />

[PlugIn??]s auf Basis dieser Weltdaten erfolgen. Dies geschieht analog zu den Input-[PlugIn??]s, indem<br />

der Modul-Manager für jedes Output-[PlugIn??] ein updateOutput(..) aufruft. Als Parameter stehen<br />

somit die erzeugten Output-Events in den Parametern. Jedes [PlugIn??] verarbeitet die anstehenden<br />

Events entsprechend und produziert die angebrachte Ausgabereaktion.<br />

Nach den beiden Updatevorgängen werden die jeweiligen Eventlisten noch komplett entleert und der<br />

Speicher der Events wieder freigegeben, um anschließend im nächsten Update wieder gefüllt zu werden.<br />

6. Januar 2005 Seite 107

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!