Hausaufgabe

Aus Das Sopra Wiki
Zur Navigation springen Zur Suche springen
Das fertige XNA-Programm könnte so aussehen.

Zu Beginn des Softwarepraktikums soll sich jeder Teilnehmer mit C# und XNA ein wenig vertraut machen. Ein guter Startpunkt dafür ist die Tutorial-Seite. Außerdem soll der erste Anstoß zum selbständigen Recherchieren der benötigten Quellen für das Softwarepraktikum gegeben werden. Aus diesem Grund müssen von jedem Teilnehmer in der ersten Woche verbindliche Hausaufgaben abgegeben werden.

Es soll ein XNA-Programm erstellt werden, welches die folgenden Eigenschaften erfüllt:

  • Darstellung einer Hintergrundgrafik in einem XNA-Fenster.
  • Ein um den Bildschirmmittelpunkt rotierendes Uni-Logo für das gilt:
    • Das Logo muss transparent sein, d.h. es dürfen keine weißen Ränder der verwendeten Grafik sichtbar sein.
    • Das Logo muss korrekt skaliert sein, damit es vollständig in den sichtbaren Bereich hinein passt.
    • Das Logo darf während der Bewegung nicht über die Ränder des sichtbaren Bereiches hinausragen. (Größenveränderung des Fensters ist zu vernachlässigen. Es gilt als Richtwert die Größe des Fensters bei Programmaufruf.)
  • Das Logo muss teilweise durchsichtig sein.
Das Uni-Logo
Hintergrundgrafik
  • Darstellung der Maus innerhalb des XNA-Fensters.
  • Abfangen von Mausklicks innerhalb des Fensters.
  • Feststellen der Logo-Position während der Bewegung.
  • Ausgabe von Sounds:
    • Wird das Logo angeklickt, soll ein Ton erklingen.
    • Wird das Logo nicht getroffen, also der Hintergrund angeklickt, soll ein anderer Ton erklingen.

Damit das Erstellen von Grafiken ignoriert werden kann, gibt es hier die beiden Beispieldateien aus der Einführungsveranstaltung:

Als Audiodateien können beliebige, kurze, Dateien verwendet werden. Die beiden aus der Einführungsveranstaltung bekannten Waves gibt es hier:

Außerdem soll sich jeder Teilnehmer die Clean Code Conventions einmal durchlesen und versuchen, diese in sich aufzunehmen. Durch diese Konventionen wird nicht nur der Code selbst leserlicher, sondern auch das Programmieren selbst stark vereinfacht.