
Der erste Tag ist vorbei und ich habe die von mir für diesen Tag gesteckten Ziele erreichen können, auch wenn ich heute insgesamt weniger Zeit in den Contest investieren konnte als ursprünglich geplant und zudem einige kleinere Schwierigkeiten auftraten - dazu aber weiter unten mehr.
Der Screenshot zeigt das Spielerschiff auf der linken Seite des Screens, das 3D Modell reagiert auf die Pfeiltaste oben und unten mit der Veränderung der Schiffsneigung. Im Hintergrund ist ein mit Adobe Photoshop gebastelter Sternenhintergrund zu sehen während Sterne in Formen von Pixeln verschiedener Grauabstufungen in unterschiedlicher Geschwindigkeit von rechts nach links durchlaufen, um den Eindruck zu erwecken, dass man sich auch tatsächlich bewegt.

Abbildung: Der erste Screenshot
Das Ganze sieht in Bewegung ein wenig eindrucksvoller aus, als auf dem gezeigten Screenshot. Auf der rechten Seite sind testweise bereits die ersten Gegnermodelle zu sehen, mit denen sich der Spieler hoffentlich spätestens ab Sonntag bekämpfen darf.
Schwierigkeiten gemacht hat leider der Starscroller, der in XNA ein wenig anders zu implementieren war als ich es noch aus meiner DOS-Zeit gewohnt bin. Längere Zeit plagte mich zudem ein Bug in der aktuellen Version des XNA Frameworks, der beim Versuch, Pixel direkt auf eine Textur zu schreiben, nach einiger Zeit relativ schnell zum Absturz führte. Dank Google bin ich aber schließlich auf den Workaround gestoßen und so für heute doch noch fertig geworden.
Die Kombination aus dem 2D Starscroller in Verbindung mit dem Rendering der 3D Models ließ mich auf ein weiteres Problem stoßen: Sobald der Starscroller aktiv ist, werden alle auf dem Bildschirm gezeigten 3D Models transparent und verlieren ihre Textur. Dies hängt damit zusammen, dass bei der Verwendung der XNA SpriteBatch-Klasse standardmäßig im Hintergrund einige Ausgabeoptionen der Grafikkarte auf andere Konfigurationswerte gesetzt werden. Das lässt sich aber glücklicherweise durch einen Einzeiler beheben.
Ein weiteres Ärgernis ist im Moment für mich, dass XNA offensichtlich keine Binary DirectX Meshes lesen kann, sondern nur im Plain Text. Das erschwert die Suche nach brauchbaren Models erneut, denn keine der frei verfügbaren Models sind gekennzeichnet, in welchem DirectX Format sie vorliegen. Da hilft also nur probieren und sich am Ende ärgern, dass natürlich die schönsten freien Models sich nicht so einfach in mein Spiel integrieren lassen. Einen Konverter habe ich leider auch nicht finden können. Irgendwie stimmt es mich nachdenklich, dass Microsoft nicht einmal seine eigenen Dateiformate in seinen eigenen Frameworks vollständig unterstützt.
Morgen gehts weiter mit Tag 2, der Spieler erhält ab morgen die volle Kontrolle über sein Schiff und ich fange mit der Kollisionsabfrage an. Wenn alles gut geht, gibt es ab Samstag abend also das erste Minispiel, in dem man mit seinen Schiff den entgegenkommenden Gegnern ausweichen muss um zu überleben.
Bis morgen!
