jeder kennt sicher die klassischen Shoot ’em up-Spiele, bei denen man mit einem Raumschiff rumfliegt und gegnerische Schiffe abschießen muss. Diese Spiele benutzen meistens eine Art Vogelsperspektive (vereinfacht bezeichne ich diese im Folgenden als 2D-Modus), wobei man dort dann als Hintergrund mehrere Texturen übereinanderblenden und bewegen kann, um einen Bewegungseffekt zu erzielen. Doch was wäre denn das Analogon, wenn man einfach die Kamera hinter das Raumschiff setzt (im Folgenden nenne ich das vollen 3D-Modus) ? Aufgrund der verschiedenen Ebenen des Hintergrunds beim 2D-Modus, hat man kinderleichte Möglichkeiten, viele Details einzubauen. Doch um diese Detailkraft zu erzielen bräuchte man im vollen 3D-Modus viel zu viele Objekte, der Aufwand stünde in keinem Verhältnis, denn Texturen auf eine Skysphere zu setzen bringt nichts, da diese sich ja nicht bewegt. Daher meine Frage: Welche Tricks benutzt man um einen Bewegungseffekt im vollen 3D-Modus zu erzielen ?
Also wenn es nur 3D Effekt sein soll, dann ist eine typische Ansicht: * Isometrisch - so wie in Spielen wie Emergency, Jagged Alliance 1/2, Rollercoaster Tycoon, Sims, Prince of Persia, etc. Bewegungseffekte sind hier eigentlich kein Problem. * Flach dahinter, dann ist etwas was sich in irgendeinerform perspektivisch auf dich zubewegt ganz gut - linien, sterne, etc. so wie im Sterne-Bildschirmschoner den es zu Win95/NT4 Zeiten gab, oder vielleicht wie in Grand Prix Circuit oder Fullthrottle bzw. Fullthrottle (wirkt wie leicht schräg von oben, ist aber in der zentralperspektive und nicht iso)
sterne, etc. so wie im Sterne-Bildschirmschoner den es zu Win95/NT4 Zeiten gab
Das ist nicht unüblich. Beispielsweise bei Freelancer gab es kleine Weltraumstaubpartikel: http://www.youtube.com/watch?v=jvZktDG4x2s In Freelancer gibt es auch Asteriodienfelder, Nebel und ähnliches um für Abwechslung zu sorgen.
Beachte das die 3D-Perspektive zwar optisch cooler aussieht, ABER du auch die Entfernung der Gegner deutlich schlechter schätzen kannst, wenn sich die Kamera hinter dem Spieler befindet. Also die Vogelsperspektive (kann ja auch 3D sein) ist notwendig, wenn du einen klassisches Shoot ’em up-Spiel bauen willst.
Die 3D-Perspektive sieht ohne Zusatzarbeit nicht mal wirklich cooler aus, denn durch den 2D-Effekt ist die Grafik automatisch schöner, da man einige Unschönheiten einfach nicht so sieht. Ich entwickle das quasi parallel, habe einfach zwei Modi implementiert. Der 3D-Modus ist mehr eine Spielerei, denn frei rumfliegen kann man nicht und wird man auch nie können, denn das ist genau das was den Zeitaufwand wieder so ansteigen lässt, dass ich genau weiß dass es nie fertig wird. Die Geschoss-"Physik" ist natürlich voll in 3D implementiert, damit man sich nicht für später einschränkt und eventuell auch so Sachen wie Sprünge problemlos einbauen kann. Die Flug-Physik ist aber deutlich schwieriger und daher beschränke ich die Beweglichkeit wie es in den meisten dieser Spiele üblich ist.
Das gesamte Spiel ist natürlich voll in 3D implementiert, nur die Beweglichkeit ist eingeschränkt und man schaut von oben drauf. Aber auch von oben drauf sieht man dass es 3D ist, nämlich wenn sich das Raumschiff beim Fliegen nach links/rechts entsprechend neigt. Habe einfach festgestellt dass es leichter ist, richtige 3D-Modelle zu erzeugen als 2D-Animationen zu basteln. Ein weiteres Problem ist auch das Erscheinen von Raumschiffen - in 3D kann man weit schauen, in 2D eben nicht. Sind wirklich Probleme über Probleme die man im vollen 3D hat. Habe mich aber gestern einfach gefragt, wie das geht, hatte nicht mal ansatzweise eine Idee und irgendwie muss das in anderen Spielen, die es voll in 3D machen, ja auch gehen.
Im Anhang mal die beiden Perspektiven gegeneinander. Bei 2D bewegt sich der Hintergrund, bei 3D bewegt sich gar nichts. Vorteil von 3D ist halt, dass die Textur auf eine Skysphere geklatscht ist, daher sieht es finde ich ein wenig dynamischer noch aus, weil man wohl mehr auf einmal von der Textur sieht. Der Screenshot vom 3D-Modus ist übrigens an einer anderen Stelle gemacht als der vom 2D-Modus, das heißt die Gegner-Schiffe sind tatsächlich verschieden, ist kein Fehler. Für 2D ist die Raumschiff-Größe übrigens überdimensioniert, Ihr könnt Euch sicher vorstellen, wie oft ich deshalb schon selbst mein Schiff zu Schrott geflogen habe - wird natürlich noch angepasst. Horizontal wäre auch eine Idee, aber mag das nicht so. Wenn es mal in Richtung fertig geht, mache ich ein Projekt-Thema dazu auf, selbst wenn das Spiel sogar schon spielbar ist, ist es dafür aber jetzt noch zu früh, wenn ich schon was vorstelle, dann soll das in keinem toten Thema enden.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Registriert: Di Jun 12, 2012 21:26 Beiträge: 112
Programmiersprache: Delphi
Bei 2d Shootern oder Platform Games werden/wurden verschwinde Layer benutzt, die dann einfach übereinander gerendert werden. Der am weitesten entfernte Layer scrollt langsamer als die davorliegenden, und dadurch entsteht ein schöner Bewegungseffekt. Bei verschiedenen Emulatoren kann man in Spielen einzelne Layer deaktivieren. Dadurch sieht man schön, wie das Prinzip funktioniert.
Mitglieder in diesem Forum: 0 Mitglieder und 9 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.