Computer Graphics
TU Braunschweig

Praktische Aspekte der Informatik SS'21
Praktikum mit Kolloquium

Prof. Dr.-Ing. Marcus Magnor

Hörerkreis: Bachelor & Master
Kontakt: padi@cg.cs.tu-bs.de

Modul: INF-CG-22, INF-CG-26
Vst.Nr.: 4216022, 4216023

Project SnackmixQt AbalonePicShaAlchemists!

Trotz der Corona-Restriktionen bietet das ICG auch im Sommersemester 2021 die Lehrveranstaltung PADI wie geplant an. Bis auf weiteres muss unsere Vorlesung jedoch online stattfinden. Jede Woche werden die Folien und das entsprechende Material auf diese Webseite hochgeladen.

Zur informellen Registrierung für die Veranstaltung schickt bitte eine kurze Email (padi@cg.cs.tu-bs.de), sodass wir euch bei Änderungen am Vorlesungsformat benachrichtigen können.

Bleiben Sie gesund!

Anmeldung:

Die Teilnehmerzahl der Veranstaltung ist auf 20 Personen begrenzt!

Die Anmeldung erfolgt per E-Mail an das Sekretariat (sekretariat@cg.cs.tu-bs.de) ab dem 29.03.2021, 12:00 Uhr nach dem "first come, first serve"-Prinzip. Folgende Informationen sollen enthalten sein:

  • Vollständiger Name
  • Matrikelnummer
  • Studiengang (mit Angabe Bachelor/Master)
  • abweichende E-Mail-Adresse (falls notwenig)

E-Mails vor dem angegebenen Zeitpunkt oder mit fehlenden Informationen können leider nicht berücksichtigt werden.

Aktuelle Informationen:

  • Die erste Vorlesung findet am 14.04.2021 um 13:15 Uhr statt.
  • Das Proposal ist spätestens bis zum 05.05.21 einzureichen (ins git pushen als README.md).
  • Die Zwischen-Präsentationen finden am 16.06.21 statt.
  • Die finale Version des Projektes ist bis einschließlich zum 16.07.21 einzureichen.
  • Das Teaser-Video zu eurem Projekt ist bis einschließlich zum 20.07.21 einzureichen.
  • Die finalen Kolloquien finden am 21.07.21 und am 23.07.21 statt.
  • Für die Teilnahme muss das Modul auch bei dem Prüfungsamt angemeldet werden.

Beschreibung:

Interessierte Studierende lernen in dieser Lehrveranstaltung den Umgang mit den in der Berufswelt verbreiteten Software-Tools. Hierzu zählen:

  • Programmierung mit C++ (inkl. Umgang mit externen Softwarebibliotheken)
  • (Meta-)Buildsysteme make, cmake
  • Versionierungssoftware
  • Code Debugger
  • Code Profiler
  • Dokumentation

Die Themenauswahl beinhaltet somit die elementarsten Werkzeuge aus der praktischen Informatik. Innerhalb des Praktikums werden die einzelnen Softwaretools vorgestellt. Das Kolloquium erfolgt zeitlich nach dem Praktikumsteil. In Vorbereitung zum Kolloquium erstellt und dokumentiert jeder Studierende ein kleines Computerspiel in C++. Dabei ist es empfohlen, die während des Praktikums erlernten Fähigkeiten einzusetzen. Während des Kolloquiums stellen die Studierenden ihre Projekte in einer mündlichen Präsentation den anderen Kursteilnehmern vor.

Die Teilnahme an dem Modul qualifiziert zur täglichen Arbeit mit in der Berufswelt gängigen Softwaretools. Die dazu notwenigen Fähigkeiten werden im Laufe des Semesters erarbeitet. Neben diesem naheliegenden berufsqualifizierenden Vorteil werden die Studierenden auch auf weitere praktische Arbeiten während des Studiums vorbereitet.

Dieses Modul kann im Masterstudiengang Informatik nur dann belegt werden, wenn es nicht bereits im Rahmen des Bachelorstudiums Informatik absolviert wurde!

Softwareprojekt:

Das Thema für dieses Semester: 2D Spiel mit SFML

Mögliche Programminhalte - ihr solltet zum Bestehen mindestens 5 umsetzen. Je nach Umfang der Umsetzung in eurem Projekt, kann der Schwierigkeitsgrad etwas anders gewertet werden.

Schwierigkeitsgrad CSchwierigkeitsgrad BSchwierigkeitsgrad ASchwierigkeitsgrad S
Singleplayer / Hot SeatLokaler MultiplayerNetzwerk MultiplayerEigene Shader
MenüControllerunterstützungCharakter EntwicklungSkelettbasierte Animationen
SoundIngame Chat (Netzwerk)Quest / Inventar - ManagementEvolutionäre Algorithmen für AI
3+ LevelLevelgeneration aus einer TextdateiLevelgeneration im Spielprozedual generierte/r Welt/Kontent
Speichern / Laden des FortschrittsEinfache AnimationenKomplexe Animationen
SchwierigkeitsgradeBetriebssystemunabhängigPhysiksimulation
Ingame Voicechat (Netzwerk)

Solltet ihr eine andere konkrete Idee haben, kann das mit dem Betreuer abgestimmt werden. Davor sollte ein umfangreiches Proposal mit eigener Einschätzung der Schwierigkeitsgrade des umzusetzenden Funktionsumfangs (im Vergleich zu den oben genannten) erstellt werden.

Ort und Zeit:

Vorlesung und Übung: 

In jeder Woche wird es eine ca. 20 - 30 minütige Einführung in das aktuelle Thema gegeben. Danach können individuelle Fragen zum jeweiligen Thema oder den Einzelprojekten geklärt werden.

Skript und Materialien

    Prüfungsleistung:

    Durchführung eines eigenständigen C++ Softwareprojekts mit kurzem Teaser-Video sowie anschließende kurze Präsentation im Kolloquium. Funktionsumfang, Qualität und Präsentation des eigenen Projekts bestimmen über die Notenvergabe.

    Die Studierenden können die Inhalte frei gestalten, dazu wird eigenständig ein Proposal formuliert, in dem das Projekt beschrieben wird. Dabei ist folgendes zu beachten:

    • Das Proposal muss mit dem Betreuer abgestimmt werden!
    • Projekte müssen alleine bearbeitet werden (keine Gruppenarbeiten).
    • Ein kurzes Teaser-Video von ca. ~20-40 Sekunden muss ebenfalls zum Kolloquium eingereicht werden.
    • Die entstandene Software wird exklusiv für diesen Kurs geschrieben. Insbesondere ist damit gemeint, dass ihr denselben Code nicht bei mehreren Lehrveranstaltungen einreicht.

      Für die erfolgreiche Teilnahme am Modul wird die regelmäßige Teilnahme an den Übungen empfohlen.