Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

05.02.2012, 21:41

[PROJEKT] FirstStrike - Firestorm

Letztes Jahr habe ich mit der Programmierung eines Shooter begonnen. Es gibt auch einen Vorgänger. Der Vorgänger war in 2D und verwendete meine hauseigene DirectX7 Engine. Dieses Spiel sollte nur die Möglichkeiten der giDX² Engine aufzeigen. (Ich habe auch dieses Projekt hier vorgestellt). Heute will ich euch die 3D Versionen vorstellen. Das Ziel ist es diesmal ein fertiges Spiel zu entwickeln. Und Spass soll es machen. :)

Das Spielprinzip ist denkbar einfach. Der Spieler steuert einen Raumgleiter gegen eine Armee von Feinden. Am Ende eines jeden Abschnitts wartet ein Endgegner auf den Spieler. Der Spieler hat für das Vorhaben nur ein Leben, mehr nicht. Das klingt jetzt wenig, aber ist es nicht. Dafür hat der Raumgleiter einen Schutzschild. Dieser kann 3 mal aufgeladen werden. Danach ist man ohne Schutz den Geschossen der Gegner ausgeliefert.

Was wäre ein Shooter ohne PowerUps. Auch bei First Strike hat man PowerUps. Diese können die Standardwaffe verbessern oder zusätzliche Raketen spendieren oder aber das Schutzschild wieder aufladen. Nur gibt es in diesem Spiel ein PowerUp für alles. Die Eigenschaften der PowerUps ändern sich durch Beschuss. Der Spieler entscheidet welches PowerUp er haben will.

Die GameEngine

Ich macht mir schon oft Gedanken darüber wie man so einen Shooter programmiert. Wann und wie steuert man die Gegner.

Im Spiel gibt es zwei Dateien für die Steuerung der Gegner. Als erstes wird die Objekt-Datei geladen. In dieser Datei sind alle Objekte mit ihren Waffen und Bewegungen gespeichert. In der Datei für einen Level ruft man nur noch die Objekte mit ihren Namen auf und definiert einen Startpunkt und einen Startzeitpunkt. Die Gegner selber werden von einem Manager organisiert. Das bedeutet, aktivierte Objekte kommen in die Managerliste. Und nur die Objekte in der Managerliste werden auf Kollision geprüft.

Alle Objekte und auch die Level werden bei Programmstart in den Speicher geladen. Wenn das Spiel einmal läuft ist es nicht mehr nötig Dateien neu zu laden.

Grafik

Leider fehlen mir noch die 3D Objekte und auch die Texturen dafür. Nur der Spieler ist texturiert. Für die Explosionen ist eine Partikelengine verantwortlich. Die Leuchteffekte werden auch von einer eigenen Engine übernommen. Erst diese Extras machen das Spiel ansehnlicher.

Video

Ich hätte jetzt ein paar Bilder hier reistellen können, aber ich denke ein Video ist aussagefähiger. Ich hoffe das ich noch dieses Jahr, am besten im Sommer, eine erste Spielbare Demo hier vorstellen kann.



Auf dem zweiten Video sind die Lenkraketen und die Nuklearbombe im Einsatz zu sehen.

Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »gombolo« (06.02.2012, 11:29)


Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

2

05.02.2012, 21:57

Mir gefällts:) Ich find so schlecht sieht es doch überhaupt nicht aus. Ein paar Texturen hier, ein paar mehr Models da und alles ist gut. Viel Erfolg beim weiteren basteln. Bin mal auf die Demo gespannt:)
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

3

05.02.2012, 22:24

Nett, darf ich fragen mit welcher Umgebung und Sprache du das Spiel programmierst?
Und auch ein Lob aufgrund der Guten Projekt Vorstellung.
Ich Freue mich auf die Demo =)

Werbeanzeige