Computer Graphics
TU Braunschweig

Praktische Aspekte der Informatik SS'22
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

  

Trotz der Corona-Restriktionen bietet das ICG auch im Sommersemester 2022 die Lehrveranstaltung PADI wie geplant an. Die Veranstaltung wird wieder in Präsenz stattfinden.

Zur informellen Registrierung für die Veranstaltung nutzt bitte das Anmeldesystem auf dieser Website (https://graphics.tu-bs.de/teaching/students), auch damit wir euch bei Änderungen am Vorlesungsformats benachrichtigen können.

HINWEIS: Die maximale Teilnehmerzahl ist bereits erreicht und die Anmeldung daher wieder geschlossen!

Anmeldung:

Die Teilnehmerzahl der Veranstaltung ist auf 20 Personen begrenzt!

Die Anmeldung erfolgt über das institutseigene Anmeldesystem (https://graphics.tu-bs.de/teaching/students) ab dem 30.03.2022, 12:00 Uhr nach dem "first come, first serve"-Prinzip. Nur erfolgreiche Anmeldungen in diesem System können berücksichtigt werden.

Aktuelle Informationen:

  • Weitere Informationen und Termine erfolgen nach der Einführungsveranstaltung
  • Die erste Vorlesung findet am 20.04.2022 um 13:15 Uhr (Raum IZ 161) statt.
  • Das Proposal ist spätestens bis einschließlich zum 11.05.22 einzureichen (ins git pushen als README.md).
  • Die Zwischen-Präsentationen finden am 22.06.22 statt.
  • Die finale Version des Projektes ist bis einschließlich zum 10.07.22 einzureichen.
  • Das Teaser-Video zu eurem Projekt ist bis einschließlich zum 12.07.22 einzureichen.
  • Die finalen Kolloquien finden am 13.07.22 und am 20.07.22 in Raum G30 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 Programminhalt, die als Orientierung zur Noteneinordnung dienen. 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 aktuelle Themen gegeben. Danach können individuelle Fragen zum jeweiligen Thema oder den Einzelprojekten geklärt werden. Es werden auch Einzelgespräche zu euren Projekten geführt, bei dem wir euch Denkanstöße und Hilfestellungen geben.

Skript und Materialien

Die Folien und das benötigte Material werden jeweils in der entsprechenden Woche hier hochgeladen.

    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.