Integration von nicht photorealistischem Rendering in OpenSG

Studienarbeit von Tobias Berghoff

Motivation

Ein Ziel der Computergrafik ist es, die vom menschlichen Auge wahrgenommene Umwelt und deren Phänomene möglichst realistisch mittels eines Computers nachzubilden. Man spricht dabei vom photorealistischen Rendering. Beim nicht photorealistischen Rendering (non-photorealistic rendering, NPR) löst man sich bewusst von dieser Zielsetzung. Die Beiden Ansätze unterscheiden sich so, wie sich die Ziele der Photographie von denen der Malerei unterscheiden. Im Gegensatz zur Malerei oder Zeichnung, die durch das Verwenden besonderer Darstellungstechniken einen bestimmten Eindruck beim Betrachter hinterlassen wollen und daher die Realität nur eingeschränkt 'nachbilden' möchten, versucht die Photographie ein möglichst genaues Bild der Realität zu erzeugen.

Aufgabenstellung

In dieser Arbeit soll die prinzipielle Realisierbarkeit von NPR-Verfahren im Rahmen der offenen Szenengraphenbibliothek OpenSG untersucht werden. Mehrere NPR-Verfahren sollen dazu in OpenSG auf eine Weise integriert werden, die ihre Benutzung möglichst Einfach gestaltet.

Realisierung

Die üblicherweise von Echtzeit-Grafiksystemen bereitgestellten Renderingverfahren bieten sich nicht für NPR an. Daher werden programmierbare Shader benutzt, die den Renderingprozess an die NPR-Verfahren anpassbar machen. Die Shader werden dabei in der Sprache Cg verfasst, um eine gute Lesbarkeit zu erreichen.

OpenSGs VRML97-Loader wurde um die Fähigkeit erweitert, in VRML97-Dateien gespeicherte Cg-Shader zu lesen und zu benutzen. Desweiteren wurden Materialknoten eingeführt, die ein problemloses Benutzen der beiden realisierten Verfahren in bestehenden und neuen OpenSG-Anwendungen ermöglichen.

Als NPR-Verfahren wurde ein Toon-Shader und ein Hatching-Shader entwickelt. Der Toon-Shader vermittelt den Eindruck einer Zeichentrickszene, während das Hatching Bilder produziert, die einer Strichzeichnung nachempfunden sind. Für das Hatching wurden Werkzeuge entwickelt um bei diesem Verfahren benötigte Texturen erstellen zu können.

Links

OpenSG Homepage

Für weitere Informationen bitte E-Mail an zixx@uni-paderborn.de.