Für eine korrekte Darstellung dieser Seite benötigen Sie einen XHTML-standardkonformen Browser, der die Darstellung von CSS-Dateien zulässt.


  Faculty 12  /  CG  /  Teaching  /  Lectures  /  Summer 07  /  GraPra  / 
Sitemap
 

Practical Training

Computer Graphics Programming

Betreuer: Lindner, Cuntz
Ort: CIP-Pool H-A-7118  

SWS: 3,  LP: 6 
empfohlen für: AINF-ET-6/8, AINF-MW-6/8
Voraussetzungen: CG I + II

Übersicht


Zielsetzung

Das Computergraphik Praktikum (kurz GraPra) bezieht sich auf die Lehrinhalte der Vorlesungen Computergraphik I und Computergraphik II. Die Studentinnen/Studenten lernen in diesem Zusammenhang die Erstellung 3D-interaktiver Anwendungen. Hierzu gehören neben der reinen Graphik-Programmierung unter OpenGL und OpenInventor der praktische Umgang mit Methoden aus den Bereichen der Modellierung, Animation und Spezialeffekten.

Die Teilnahme, ohne die Vorlesung Computergraphik II besucht zu haben, ist möglich, sofern die benötigten Techniken nach­geholt werden.

Praktikumsinhalte

  • OpenGL-Programmierung, insbesondere
    • Modellierung, hierarchische Szenenbeschreibung, Beleuchtung, Texturierung
    • Umsetzung von Inhalten der Vorlesung Computergraphik II zu den Themen komplexe Modellierung, Animation und Spezialeffekte
  • Qt-Programmierung zur plattformübergreifenden Entwicklung von graphischen Benutzeroberflächen
  • Einführung in OpenInventor (siehe CG II)

Struktur der Veranstaltung

Das Graphik-Praktikum besteht aus vier Aufgaben, wobei die ersten drei Aufgaben fest vorgegeben werden und von Arbeitsgruppen zu je zwei Studentinnen/Studenten zu lösen sind. Die vierte Aufgabe ist eine freie Aufgabe, bei der die Aufgabe selbst definiert und gelöst wird. Die selbstdefinierte Aufgabenstellung wird von den Betreuern des Praktikums begutachtet und ggf. in Umfang und Komplexität angepasst.



Vergangene Projekte

Animierte Wellenausbreitung.

Environment-Mapping, Beleuchtung, ...

AirHocky-Spiel für 1-2 Spieler.

Interaktive Environment-Map, Kollisions-
abfrage, Spiegelung...

Billiard-Spiel mit Coin3D.

Kugelrotation, Beleuchtung, Kollisions-
erkennung...

Rekursive Bäume.

Lindenmeyer-System, Windeinwirkung,
Wachstum, ...


Termine und Materialien

  • Übungsgruppen 

    Generell gilt Anwesenheitspflicht in mindestens einer der folgenden Übungen:

    Übung Zeit Betreuer
    Übung 1 Mo 10:00-12:00 Uhr Timo Schmiade
    Übung 2 Mi 14:00-16:00 Uhr Timo Schmiade
    Übung 3 Do 14:00-16:00 Uhr Marvin Lindner

    Darüberhinaus können auch mehrerer Übungen besucht werden. Eine Übersicht der einzelnen Gruppen ist über den obenstehenden Link zugänglich.

    Die Anmeldung zum Graphik-Praktikum gilt gleichzeitig auch als Anmeldung für einen Rechner­zugang im Rechner-Pool (allgemeine Informationen zu den Rechnerzugängen und Kartenschlüsselanträgen).


  • Materialien 

    Aufgabenstellungen, Programmgerüste und aktuelle Informationen zu den einzelnen Programmieraufgaben finden Sie unter dem obenstehenden Link. Die Zugangsdaten werden Ihnen in der ersten Übung mitgeteilt und können davon abge­sehen bei den Betreuern erfragt werden.

    Die Programmgerüste zu den Aufgaben 1 bis 3 sind sowohl in Linux (g++) als auch in Windows (vc++) kompilierbar. Für die Abgabe ist nur die Kompilierbarkeit unter einem der beiden Systeme relevant.

    Die Abgabe erfolgt zu festgelegten Termin bis spätestens Mitternacht über das Version-Control-System SVN. Der Zugriff erfolgt über die Kommandozeile oder eine Benutzeroberfläche, die in das System integriert werden kann (siehe http://subversion.tigris.org und TortoiseSVN). Benutzerkennung und Passwort werden zusammen mit den Rechner­zugängen ausgeteilt. Zusätzlich zur Abgabe der jeweiligen Lösungen, muss jede Gruppe diese in einem kurzen Gespräch erläutert. Zur Bewertung der Aufgaben sei auf die entsprechenden Hinweise auf den Aufgabenblättern hin­gewiesen.

    Eine verspätete Abgabe führt zum Nichtbestehen der Aufgabe und hat ein nicht bestandenes Praktikum zur Folge!


  • Abgabetermine

    Datum Beschreibung
    So 29. April 2007 Aufgabe 1
    So 27. Mai 2007 Aufgabe 2
    So 3. Juni 2007 Projektvorschlag
    So 10 Juni 2007 Aufgabe 3
    So 8. Juli 2007 Aufgabe 4
    Fr. 13. Juli 2007 Abschlussveranstaltung


  • Abnahme (Anmeldung) 

    Die Abnahme der einzelnen Aufgaben erfolgt jeweils am folgende Donnerstag bzw. Freitag nach der Abgabe. Um längere Wartezeiten zu vermeiden, ist es zwingend notwendig, dass sich jede Gruppe für eine der Abnahmetermine über das obenstehende Formular anmeldet. Die Anmeldung ist jeweils für den Montag nach der Abgabe freigeschaltet.

    Sollte eine Gruppe versäumen sich anzumelden, werden wir einen noch freien Abnahmetermin vergeben und diese der jeweiligen Gruppe per eMail bekanntgeben.



Newsgroup

Fragen sollten vorzugsweise in unserer Newsgroup uni-siegen.cg gestellt werden. Die Newsgroup bietet allen Teilnehmern die Möglichkeit, ihre Erfahrungen auszutauschen sowie Fragen direkt an die Betreuer zu stellen. Außerdem werden organisatorische Dinge über die Newsgroup bekanntgegeben. Über den HRZ-Login ist der Zugriff auch von außerhalb der Universität möglich.

Für den Zugriff auf können Sie beispielsweise den praktischen Reader pan unter Linux verwenden. Tragen Sie dazu im Pan Setup Wizard Ihren Namen und Ihre e-Mail-Adresse ein. Die Server-Adresse lautet news.uni-siegen.de. Danach wird automatisch eine Liste aller Newsgroups heruntergeladen, unter denen sich die Newsgroup uni-siegen.cg befindet.

Unter Windows bieten sich die Reader-Funktionen von Outlook Express oder Thunderbird an.

Ansprechpartner und Sprechstunden

Sollten sie Probleme oder Fragen haben, die sich nicht in den Übungsgruppen oder über die Newsgroup (siehe weiter unten) klären lassen, stehen die Betreuer der Veranstaltung als Ansprechpartner zu folgenden Terminen zur Verfügung:

Dipl.-Inf. Marvin Lindner, Dienstag 14:00-15:00 Uhr, Raum H-A 7110
Dipl.-Inf. Nicolas Cuntz, Dienstag 14:00-15:00 Uhr, Raum H-A 7110



Empfohlene Literatur

  • Woo, Neider, Davis, Shreiner, OpenGL Programming Guide: The Official Guide to Learning OpenGL
  • Josie Wernecke, Open Inventor Architecture Group, The Inventor Mentor : Programming Object- Oriented 3D Graphics with Open Inventor
  • Bjarne Stroustrup, The C++ Programming Language
  • Harvey M. Deitel, Paul J. Deitel, C++ How to Program
  • Qt Reference (http://doc.trolltech.com)