Wie kann ich ändern, wie meine Szene gezeichnet wird, damit sie so aussieht, als würde sie zu verschiedenen Tageszeiten stattfinden?

8

Mein Spiel hat eine Tagesassoziation mit der Szene, dass das Morgenlicht anders ist als der Nachmittag und die Nacht. Aber ich weiß nicht, wie ich diesen Unterschied machen soll.

Hier ist ein Beispiel im Pokemon-Spiel:

Geben Sie hier die Bildbeschreibung ein

Ich habe eine Idee, die eine Ebene mit einer Transparenz von etwa 10 - 20% über das Spiel legt und deren Farbe von der Zeit abhängt, aber ich weiß nicht, welche Farbe gut ist.

Gibt es andere Mechanismen, um in einem Spiel dieses Stils einen Tag / Nacht-Zyklus durchzuführen?

Luke Vo
quelle
Was genau ist die Frage?
Doppelgreener
@ JonathanHobbs Ich würde gerne wissen, wie man das Tageslicht am besten verändert.
Luke Vo
Neue Sprites, die für einen Blitz geeignet sind und nichts haben, was diese Fenster und Dächer zum Leuchten bringt.
Doppelgreener

Antworten:

10

Es gibt zwei Möglichkeiten, dies zu tun. Der einfache Weg und der Weg, der tatsächlich so aussieht, als wäre es dunkel.

Der einfache Weg ist genau das, was Sie gesagt haben: Werfen Sie ein Vollbild-Quad herunter, das die Szene verdunkelt. Aber:

Ich habe eine Idee, die eine Ebene mit einer Transparenz von etwa 10 - 20% über das Spiel legt und deren Farbe von der Zeit abhängt, aber ich weiß nicht, welche Farbe gut ist.

Das liegt daran, dass es kein "Gut" gibt. Es gibt nur unterschiedliche Ebenen von schlecht. Es wird immer so aussehen, wie es eindeutig ist: eine helle Szene, die abgedunkelt wurde. Echte Nacht ist nicht einfach eine helle Szene, die abgedunkelt wurde. Verschiedene Bereiche sind auf unterschiedliche Weise dunkler.

Das Beste, was Sie tun können, ist, eine Reihe von Tests durchzuführen und die Farbe zu finden, die am wenigsten anstößig ist. Niemand kann dir eine "gute Farbe" geben, weil so etwas nicht existiert. Es gibt nur "das, was Sie persönlich für Ihre spezielle Szene tolerieren können".

Der richtige Weg, dies zu tun, besteht darin, dass Ihre Künstler alle Sprites für eine dunklere Szene neu zeichnen. Offensichtlich ist dies arbeitsintensiv, weshalb die meisten Sprite-basierten Spiele keine Tag-Nacht-Zyklen haben.

In der Tat hatten Sprite-Spiele, die einige Nachtszenen machten, auch den Vorteil, palettierte Sprites zu verwenden. In diesen Fällen haben sie einfach eine spezielle "Nacht" -Palette für die Sprites erstellt. Dies gab ihnen die Möglichkeit, die Farben für den besten visuellen Effekt zu optimieren.

Sie könnten etwas Ähnliches ausprobieren, aber dafür müssten Sie selbst palettierte Sprites verwenden.

Nicol Bolas
quelle
Vielen Dank! Es ist schlecht, dass wir nicht viel Zeit für unsere Künstler haben. Vielleicht müssen wir die am wenigsten anstößige Farbe akzeptieren!
Luke Vo
2

Ich habe eine Idee, die eine Ebene mit einer Transparenz von etwa 10 - 20% über das Spiel legt und deren Farbe von der Zeit abhängt, aber ich weiß nicht, welche Farbe gut ist.

Versuch und Irrtum ist eine großartige Sache. Sie haben die Idee davon - eine Überlagerung wäre am einfachsten. Der Vorschlag, Orange für die Dämmerung und Schwarz für die Nacht zu verwenden, ist ebenfalls gut. Aber niemand hier kann Ihnen sagen, welche Farben Sie verwenden sollen, damit Ihr Spiel gut aussieht - das liegt ganz bei Ihnen und Ihrem Sinn für Design.

Eine viel kompliziertere Möglichkeit, die Tageszeit zu ändern, besteht darin, für jede Tagesperiode einen völlig neuen Satz von Sprites zu generieren. Die meisten dieser Sprites würden einfach anders schattiert, als ob Sie die obige Überlagerung verwenden würden, aber dies würde andere Effekte wie Straßenlaternen und dergleichen ermöglichen.

dlras2
quelle
Hmm, habe einige Farben ausprobiert, aber das Ergebnis ist nicht sehr gut. Ich bin sehr schlecht im Grafikdesign. Können Sie mir eine gute Farbe geben (RGB und Alpha)? Vielen Dank für Ihre Antwort.
Luke Vo
@WN - "[N] obody hier kann dir sagen, welche Farben du verwenden sollst, damit dein Spiel gut aussieht." Das schließt mich ein. Siehe Nicol Bolas 'Antwort, warum dies nicht möglich ist.
dlras2
(Irgendeine Erklärung für eine Ablehnung?)
dlras2
1

Aufgrund meiner sehr begrenzten Erfahrung mit solchen Dingen in ein paar Spielen, die ich gemacht habe, um sie "dunkler" zu machen, dh nachts, würde ich genau das tun, was Sie gesagt haben, und eine schwarze Schicht über das Spiel legen und es machen näher an transparent als undurchsichtig.

Für die Abendzeit würde ich das Gleiche tun, aber mit einer orangefarbenen Farbe, um ein "Dämmerungsgefühl" zu erzeugen.

Wenn Sie möchten, dass es allmählich dunkler (oder orangefarbener) wird, erhöhen Sie die Deckkraft der Farbe mit der Zeit allmählich.

Das würde ich sowieso tun. Ich bin sicher, es gibt einen besseren Ausweg.

Nikolaus
quelle
Können Sie mir den Farbcode geben, mit dem Sie Erfahrung haben?
Luke Vo
@WN Ich habe momentan keinen Code zur Hand. Ich würde versuchen, ein schwarzes Bild von der Größe des Bildschirms zu erstellen. Laden Sie es vor allem anderen in Ihr Spiel. Wenn Sie nun die Transparenz des schwarzen Bildes erhöhen, sollte alles dahinter sichtbar sein, während über allem ein dunkler Farbton hinzugefügt wird. Wenn Sie die Alpha-Werte des Bildes in dem Framework / der Sprache, in der Sie arbeiten, nicht ändern können, verringern Sie die Deckkraft, bevor Sie das Bild in Ihrer Bildbearbeitungssoftware speichern, und stellen Sie sicher, dass Sie das Bild auch als PNG speichern.
Nicholas