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 />

gravity="" /><br />

phybody Gibt an, ob der Körper selbst dynamisch ist und mit der Welt interagieren kann und<br />

selbst agiert. Das bedeutet, dass der Körper bei Kollisionen mitbewegt wird. Zum Beispiel<br />

sollte die Landschaft phybody = 0 haben, da sie nicht bewegt werden soll.<br />

gen_proxy sagt ob die Engine selbst einen Kollisions-Proxy für das Objekt erzeugen soll. Dieser<br />

wird aus dem [Mesh??] des Objekt-Typen erstellt, wobei das type Attribut einen der folgenden<br />

Werte annehmen kann :<br />

• sphere erzeugt eine kleinste umschließende Kugel um den Objekt-Typ<br />

• box erzeugt eine kleinste umschließende AABB um den Objekt-Typ<br />

• trimesh erzeugt einen Körper aus Dreiecken, der als Kollisions-Proxy fungiert<br />

gen_proxy_mass gibt die Masse des generierten Proxies an. Um sich eine vernünftige Beschleunigung<br />

des Körpers zu erhalten, sollte dieser eine Masse haben, ansonsten bekommt die<br />

Simulation Fehler durch Singularitäten.<br />

gravity gibt an, ob sich das Objekt von der Gravitation beeinflussen läßt. Als Standard wird angenommen,<br />

dass der Körper nicht auf die Gravitation reagiert.<br />

Die ODE Anbindung kann mit Hilfe der Daten im physim Node entweder durch die Angabe eines<br />

Typs in gen_proxy den Proxy selbst erzeugen oder über den im physim Node enthaltenen<br />

collision_proxy Node die Daten der Proxies auslesen.<br />

Die Definition fuer eine Liste von collision_proxy Elementen steht innerhalb des physim Nodes<br />

und sieht wie folgt aus:<br />

<br />

<br />

<br />

<br />

<br />

Der collision_proxy Node kann beliebig viele der folgenden Kollisions-Proxy Typen enthlaten, die<br />

dann zusammengefasst werden als Kollisions-Volumen um den Objekt-Typ herum.<br />

trimesh Ein trimesh ist ein Kollisions-Proxy, der aus den Dreiecks-Daten des angegebenen<br />

[Mesh??]es generiert wird.<br />

box Eine Box die als Kollisions-Proxy den Objekt-Typen umschließen sollte. Die Attribute x,<br />

y, z geben die Länge der Box entlang der X/Y/Z-Achse an, wobei die Box selber dann als<br />

Mittelpunkt (0/0/0) bekommt.<br />

sphere Eine Kugel die als Kollisions-Proxy den Objekt-Typen umschließen sollte. Das Attribut r<br />

gibt dabei den Radius der Kugel an.<br />

Ein Proxy kann Positions und Rotations Daten haben, die definieren wie dieser Proxy relativ zum<br />

Objekt-Typ orientiert/positioniert ist. Diese Daten sind immer relativ zum Ursprung des Objekt-<br />

Typs (0/0/0). Hier ein Beispiel :<br />

6. Januar 2005 Seite 95

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!