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.

Kapitel 12<br />

Engine<br />

In diesem Abschnitt soll der Software-Entwurf und die Struktur der Kern-Engine des Systems beschrieben<br />

werden, insbesondere der Aspekt der Grafikdarstellung mit allen damit zusammenhängenden Themen<br />

sowie die Kopplung mit allen anderen Komponenten. Getrennt in eigenen Teilen beschrieben wird<br />

dabei das Soundsystem (15, S.197) sowie das Low-Level-Interface zu den Hardwarekomponenten (14,<br />

S.129).<br />

12.1 Grafik<br />

12.1.1 Grundüberlegungen<br />

Aus der Anforderungsdefinition (siehe Anhang B auf Seite 221) ergeben sich die erforderlichen Leistungen<br />

der Grafik in der Engine. Insbesondere muss die Grafik in Echtzeit erzeugt werden (und somit unter<br />

Verwendung von 3D-Hardware), die Darstellung von großen Szenen erlauben und auch das verteilte<br />

Rendern auf mehreren Rechnern für die Ansteuerung mehrerer <strong>Projekt</strong>orenunterstützen. In den folgenden<br />

Abschnitten wollen wir nun unsere Lösungen für diese und weitere Anforderungen beschreiben.<br />

12.1.2 OGRE<br />

Wie schon in der Übersicht beschrieben, verwenden wir das OGRE-Framework [?] als Basis für die Grafikdarstellung.<br />

OGRE (Object-Oriented Graphics Rendering Engine) ist eine quelloffene<br />

Rasterisierungs-Engine, die von Grund auf komplett [objekt-orientiert??] in C++ geschrieben ist. Dabei<br />

ist die Engine komplett plattformunabhängig und kann auf verschiedenen 3D-Bibliotheken, insbesondere<br />

OpenGL und Direct3D, aufsetzen, um eine hardwarebeschleunigte Darstellung zu bieten. OGRE ist<br />

allerdings keine vollständige Spiele-Engine, sondern bietet reine Grafikdarstellungsmöglichkeiten in einem<br />

flexiblen Framework.<br />

Einige wichtige weitere Features von OGRE sind:<br />

• Material/Shader-Management<br />

• eigenes [Mesh??]-Format, Unterstützung von Animationen und Level-of-Detail<br />

• Verwendung verschiedener Szenenmanager (z.B. eigener)<br />

• Spezialeffekte (Partikelsysteme, Billboards, ..)<br />

• [PlugIn??]-Architektur zur Erweiterung<br />

89

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!