prev up next


Aufgabe 10.2 (10 Punkte)

In dieser und der folgenden Aufgabe sollen Sie die in den Übungen entwickelte Applikation zur Viewing-Pipeline um ein Flat-Shading ergänzen. Dazu wurde die Klasse Renderer um zwei Methoden - shade und putScanline - ergänzt, die Sie benutzen können. Sie können die aktualisierte Klasse Renderer unter /home/cg/Uebung/Blatt10/Aufg/Renderer.java   herunterladen und mit Ihrer Lösung von Blatt 9 nutzen oder Sie warten bis Mittwoch gegen 16 Uhr und nutzen die dann unter /home/cg/Uebung/Blatt10/Aufg/draw3d-uebung.jar   abgelegte Musterlösung von Blatt 9 mit erweitertem Renderer.

In dieser Aufgabe sollen Sie sich zunächst mit dem Einfärben von Dreiecken (ohne Berücksichtigung von Beleuchtung) beschäftigen. Dazu müssen Sie sich mit der Methode shade vertraut machen und den Algorithmus Ihrer Viewing-Pipeline so verändern, dass nun nicht mehr die Kanten zwischen den Vertices gezeichnet werden, sondern im Inneren der beiden Schleifen eine Triangulation des Faces vornehmen, damit Sie dieses schließlich mit der shade-Methode einfärben können. shade erwartet die drei Eckpunkte eines Dreiecks und eine Intensität (Grauwert zwischen 0 und 1) in der das jeweilige Dreieck eingefärbt werden soll.

Achten Sie darauf, dass Sie weiterhin ein Backface-Culling durchführen bevor Sie die Faces verarbeiten. Wenn Sie Ihre Lösung von Blatt 9 als Grundlage verwenden, können Sie das Möbius-Band aus der Szene löschen und die Kugel sowie die Box jeweils um -2 und +2 in X-Richtung anordnen, um die Performance zu verbessern und die Beleuchtung in der folgenden Aufgabe besser sehen zu können.

Musterlösung vom 23.06.2010:
Die Lösung findet sich unter /home/cg/Uebung/Blatt10/Lsg/draw3d-mlg.jar  .


prev up next