Projekt Micarpet Projektbericht - artecLab - Universität Bremen
Projekt Micarpet Projektbericht - artecLab - Universität Bremen
Projekt Micarpet Projektbericht - artecLab - Universität Bremen
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