Hasso-Plattner-Institut
Hasso-Plattner-Institut
  
Login
  • de
 

Game Programming (Wintersemester 2014/2015)

Dozent: Prof. Dr. Jürgen Döllner (Computergrafische Systeme) , Daniel Limberger (Computergrafische Systeme) , Stefan Buschmann (Computergrafische Systeme)

Beschreibung

Das Projektseminar befasst sich mit der Analyse, Planung und Konstruktion komplexer computergrafischer 3D-Anwendungen. Die Teilnehmer entwickeln hierzu kollaborativ in Teams von 2 bis 4 Personen ein Spiel als interaktive computergrafische 3D-Anwendung.

Ergbenisse der Vorjahre: http://gameprogramming.hpi3d.de/.

Im Mittelpunkt stehen neben der technischen Umsetzung, das selbstorganisierte Arbeiten im Team, das kreative Umsetzen einer Spielidee und die verständliche Weitergabe des erlernten Wissens. Als Implementierungsplattform dient das objektorientierte Anwendungs- und Benutzerinteraktions-Framework Qt (http://www.qt-project.org), das u. A. eine Sammlung von Komponenten für interaktive Grafikprogrammierung bereitstellt, sowie in der objektorientierten Softwarebibliothekskonstruktion häufig auftretende Idiome und Muster verwendet. Zur Grafikprogrammierung wird dabei auf OpenGL oder OpenGL ES (http://www.opengl.org) als hardwarebeschleunigte Grafikschnittstelle zurückgegriffen. Die Plattformunabhängigkeit von Qt ermöglicht auch eine Implementierung auf mobilen Geräten (z. B. Tablets, Smartphones).

Ziel des Seminares ist es, Einblicke und Erkenntnisse über die Konstruktion komplexer, objektorientierter Softwaresysteme für mobile Plattformen am Beispiel eines interaktiven 2D/3D-Spiels zu erwerben.

Zur Interaktion mit den Anwendungen ist die Verarbeitung von Touch-Eingaben und -Gesten mobiler Geräte, sowie weiterer Eingabequellen (z. B. Front-/Back-Kamera, Geräte-Sensoren, Oculus Rift)  grundlegender Bestandteil.

Das Projektseminar wird insbesondere für die Studierenden empfohlen, die beabsichtigen zukünftig an (Bachelor-, Studien-, Masterarbeits-) Projekten des Fachgebiets CGS teilzunehmen.

Materialien zum Seminar finden Sie im Lehrstuhl-Moodle unter  http://moodle.hpi3d.de.

Das Seminar ist Teilnehmerbeschränkt.

Voraussetzungen

Eine Voraussetzung zur Teilnahme ist die erfolgreich abgeschlossene Vorlesung "3D-Computergrafik".

Weitere Voraussetzungen sind Kenntnisse der objektorientierten Software-Entwicklung und der Programmiersprache C++ sowie Grundlagen der Computergrafik und/oder User-Interfaces.

Literatur

Den Teilnehmern werden in der Einführungsveranstaltung die Ergebnisse vorheriger Jahrgänge vorgestellt. Des Weiteren werden alle, durch die Seminarbetreuer zuvor gesammelten Spielideen, beworben. Ziel ist dabei, dass die Teilnehmer mehr als nur eine weitere Instanziierung eines bereits bekannten Spielkonzepts anstreben. Um die Vielfalt an Spielkonzepten zu erhöhen, werden in einem zeitnahen, freiwilligen Zusammentreffen aktuelle Trends und Titel vor allem aus dem Indie-Spielesegment vorgestellt. Einige Quellen zur Inspiration sind: http://www.steamcommunity.com/greenlight, https://www.humblebundle.com und http://www.indiegames.com. Der Fokus jedes Spiels soll dabei eher auf grafische Effekte, Dynamik und Interaktion, und weniger auf komplexe Spiellogik und Content gerichtet sein.

Die Veranstaltung wird durch regelmäßige Teilnahme an den Treffen, die Einarbeitung in Qt und weitere Bibliotheken, der systematischen, transparenten Entwicklung einer 3D-Anwendung sowie durch eine Ergebnispräsentation erfolgreich abgeschlossen.

Lern- und Lehrformen

Die Bearbeitung besteht darin, sich den Gegenstand des gewählten Themas theoretisch und praktisch zu er-schließen. Hierzu sollen Konzepte theoretisch zusammengefasst und eine Beispielanwendung implementiert werden. Jedes Team stellt seine Ergebnisse und Erkenntnisse im Rahmen der regelmäßigen Treffen vor.

Die Themenvergabe im Seminar erfolgt für jedes Projektteam individuell in Abstimmung mit dem jeweiligen Betreuer. Eigene Vorschläge für Seminarthemen sind möglich.

Leistungserfassung

Die Leistungserfassung gliedert sich in folgende Bestandteile auf 

  • Entwicklung einer 3D Spielanwendung (platformunabhängig)
  • Dokumentierter Quellcode
  • Webseite mit Screenshots, Videos, Downloads und Kurzbeschreibung
  • Ausarbeitung mit Dokumentationscharakter (max. 10 Seiten, ca. 2500-3500 Wörter)
  • 3x Präsentationen

    • Konzeptpräsentation (10 min)
    • Zwischenstandspräsentation (vor Jahresende, 15 min)
    • Abschlusspräsentation (März, 25 min)

  • Early Access Event

Die Endnote setzt sich wie folgt zusammen (Abweichungen möglich): 50% Anwendungsentwicklung, 20% Ausarbeitung, und 30% Präsentationen. Die Leistungserfassung geschieht einheitlich pro Team.

Zusätzlich zu den Präsentationsterminen werden Feedbackrunden im 2 bis 3-wöchentlichen Rhythmus angeboten, zu denen gruppenübergreifend über aktuelle Fragestellungen, Herausforderungen sowie gefundene Lösungsstrategien diskutiert werden kann. Dadurch soll ein wechselseitiger Erfahrungsaustausch und Lerneffekt zwischen den Gruppen erzielt werden.

Die Teilnehmer sollen Methoden und Verfahren des Projektmanagements anwenden, v.a. selbstständig Arbeitspakete und Zeitpläne erstellen und umsetzen sowie Ressourcen verteilen.

Termine

Seminar in Raum H-2.57, dienstags, 9:15-10:45 Uhr und mittwochs, 11:00-12:30 Uhr.

Vorläufige Terminplanung (Änderungen in Absprache mit den Teilnehmern vorbehalten):

  • 14.10.2014 Di - Kick-Off, Organisatorisches, erste Themenideen
  • 15.10.2014 Mi - Ideen Inspirationen - Schwerpunkte trainieren
  • 21.10.2014 Di - Themenwünsche (evtl. kein Treffen)
  • 22.10.2014 Mi - Themenvergabe
  • 29.10.2014 Mi - Konzeptpräsentationen
  • 17.12.2014 Mi - Zwischenstandspräsentation (je nach Gruppenanzahl evtl. zweiter Termin)
  • 13.01.2015 Di - EARLY ACCESS CONVENTION – für HPIler und Gäste (Dauer ca. 2 Stunden)
  • 10.03.2015 Di - Endpräsentationen Teil I
  • 11.03.2015 Mi - Endpräsentationen Teil II
  • 15.03.2015 So - Abgabe

Beim ersten Treffen werden das Vorgehen im Seminar sowie mögliche Themen kurz vorgestellt und besprochen. Weiterhin stehen die Betreuer an diesem Termin auch für weitere Fragen zur Verfügung.

Allgemeine Information

  • Semesterwochenstunden : 4
  • ECTS : 6
  • Benotet : Ja
  • Einschreibefrist : 24.10.2014
  • Programm : IT-Systems Engineering BA
  • Lehrform : SP
  • Belegungsart : Wahlpflicht

Module

  • Human Computer Interaction & Computer Graphics Technology
  • Operating Systems & Information Systems Technology
  • Software Architecture & Modeling Technology

Zurück