prev up next


Aufgabe 11.2 (50 Punkte)

Ladet das unter /home/cg/Uebung/Blatt11/Aufg/blatt11-uebung.tar.gz   verfügbare JOGL-Projekt in Eclipse ein. Wer die Programmieraufgaben lieber zu Hause bearbeiten möchte, muss auf seinem Rechner JOGL installieren. Dieses ist, ebenso wie eine Installationsanleitung, verfügbar unter: http://jogamp.org/. Abgesehen davon wird JOGL auch in der Übung kurz besprochen. Das Programm rendert eine Kugel, deren Ursprung sich immer im Ursprung des Koordinatensystems befindet. Die beiden Shader projizieren die Geometrie und färben die Oberfläche mit einer Farbtextur ein, wie in der Vorlesung beschrieben. Erweitert den Vertex Shader, welcher im Ordner shaderSource/vertexShader.glsl des Projekts zu finden ist um eine Art Displacement Mapping, wie in der Vorlesung gezeigt. Alle dafür benötigten Informationen befinden sich bereits im Vertex Shader, sodass ausschließlich dieser zu ändern ist. Erläutert Eurem Tutor, welche Vor- und Nachteile die Implementation der besprochenen Technik in der Applikation anstelle des Vertex Shaders für DIESE Szene hätte.

Musterlösung vom 30.07.2010:

Die Lösung findet sich unter /home/cg/Uebung/Blatt11/Lsg/Link1.zip  .

Da hier die Displacement-Information statisch ist, liegt eine einmalige Manipulation der Geometrie vor dem Rendern in der Applikation nahe. Zur Laufzeit entfallen dann die für die Verschiebung ständig neu durchzuführenden Berechnungen. Außerdem kann die Displacement Map, deren Informationen nun in der Vertexposition integriert wäre, aus dem Speicher entfernt werden. Ein (sehr kleiner) Nachteil folgt aus der längeren Dauer der einmaligen Verschiebung, woraus eine größere Applikationsstartdauer resultiert.


prev up next