Gedanken über "Retro-Grafikstilen"

Für Fragen zu Grafik APIs wie DirectX und OpenGL sowie Shaderprogrammierung.
Antworten
Benutzeravatar
starcow
Establishment
Beiträge: 560
Registriert: 23.04.2003, 17:42
Echter Name: Mischa Schaub
Kontaktdaten:

Gedanken über "Retro-Grafikstilen"

Beitrag von starcow »

Hallo Zusammen

Da mich DOOM zur Zeit wieder an den Bildschirm fesselt (die Faszination ist nach über 20 Jahren ungebrochen), sind mir ein paar Gedanken zu Retro-Grafikstilen gekommen.
Mich würde interessieren was ihr dazu denkt.

Die Sprite-Gegner aus den 90'ern haben ja ihren ganz eigenen Charm. Irgendwie wirkt die Grafik von DOOM auf mich, als sei sie aus einem Guss.
Vielleicht ist dieser Eindruck auch nur rein subjektiv und durch meine schönen Erinnerungen an diese Zeit romantisiert. Aber ich finde, dass die Grafik - verglichen mit Quake 1 - in sich "geschlossener" / "einheitlicher" wirkt. Es ist nicht ganz einfach diesen Eindruck auszuformulieren. Und ich möchte hier auch nicht Lowpoly-Gegner und Sprites-Gegner gegeneinander ausspielen.
Wenn ich aber die die Lowpoly-Gegner von den gängigen DOOM-Ports mit ihren originalen Sprites vergleiche, fallen erstere für mich klar aus dem Rahmen.
Bei RPGs höre ich immer wieder - oft im Kontext mit Spielen wie Diablo2 oder Baldrus Gate - dass 2D "einfach besser" aussieht. Bei mir drängt sich dann immer die Frage auf "wieso". Den die Sprite-Grafiken in diesen Spielen wurden fast ausnahmslos mittels 3D-Modellen erstellt (Bei DOOM waren die Modelle AFAIK tatsächlich aus Modelliermasse modelliert)

Bild

Folglich müsste es doch eigentlich auch möglich sein, genau diesen Grafikstil zu erzeugen - und zwar mit echten 3D-Modellen, und nicht mit vorgerenderten Sprites.

Klar ist, dass die Sprites sowohl in der Animation als auch in ihrer "Ausrichtung" immer Stufen aufweisen. Natürlich trägt das viel zum charakteristischen Look des Spieles bei - doch ich möchte diesen Umstand mal aussen vor lassen. Zudem wäre es wohl nicht weiter schwierig die Animationen und Ausrichtungen einfach in "Abstufungen" rendern zu lassen.

Ich glaube dieser "Bruch" zwischen 2D und 3D hat folgende Ursache:
Bei einer konventionellen Rendering-Methoe mit Lowpoly-Modellen sind die eigentlichen Polygon-Kanten immer in der gerenderten Auflösung. Die Texel der Textur-Map jedoch, schnell deutlich grösser.
Man müsste es jetzt irgendwie hinbekommen, dass die Kanten der Polygone immer die selbe Rasterungsgrösse aufweisen, wie die der Textur-Texel. Natürlich müsste man auch auf einen Weichzeichfilter auf den Texturen verzichenten.
Nach meiner Überlegung müsste somit der Eindruck einer Sprite-Grafik enstehen! Mit dem grossen Vorteil, dass ein Modell bei Bedarf auch wirklich stufenlos aus jeder beliebiger Perspektive betrachtet werden könnte. Gleiches gilt natürlich für die Animation. Würde man die Stufen nachträglich einbauen, dürfte ein Betrachter wohl nicht mehr in der Lage sein festzustellen, ob es sich bei dieser Grafik um vorgerenderte Sprites oder um echte 3D-Modelle handelt.
Freelancer 3D- und 2D-Grafik
mischaschaub.com
Specialist
Establishment
Beiträge: 135
Registriert: 29.08.2003, 14:22
Kontaktdaten:

Re: Gedanken über "Retro-Grafikstilen"

Beitrag von Specialist »

Ich denke auch, dass ein wesentliches Merkmal von 2D-Sprites aus der damaligen Zeit der "hohe" Detailgrad im Gegensatz zu den danach kommenden ersten 3D-Spielen war.
Ein schöner Vergleich sind die Echtzeitstrategiespiele, die kurz um die Jahrtausendwende fast nur noch in 3D erschienen sind.
Die damalige Rechenleistung reichte allerdings nicht mehr aus um so viele Details wie in 2D darzustellen.
Ich glaube aber, dass dieser Eindruck mittlerweile überholt sein dürfte.
Wenn ich mir die neueren Titel (z.B. Anno) anschaue, sind die ja sehr wohl sehr detailliert und bei mir stellt sich auch mittlerweile das gleiche Feeling ein wie bei den alten 2D-Spielen.

Um deinen Ansatz aber mal aufzugreifen, wäre es sicherlich möglich an Hand der Entfernung zur gerenderten Fläche die Texturkoordinaten entsprechend anzupassen um durch Tiling immer eine annähernd gleiche Texelgröße zu gewährleisten. Ob das hinterher aber so aussieht wie gewünscht, wage ich zu bezweifeln ;)
Benutzeravatar
xq
Establishment
Beiträge: 1590
Registriert: 07.10.2012, 14:56
Alter Benutzername: MasterQ32
Echter Name: Felix Queißner
Wohnort: Stuttgart & Region
Kontaktdaten:

Re: Gedanken über "Retro-Grafikstilen"

Beitrag von xq »

Was mir da in den Kopf kam: Warum macht man es nicht gleich wie in dem Bild oben, nur am Rechner:

Man rendert die Modelle mit ihren Animationen usw. in eine Textur (Orthographisch oder mit Perspektive, je nach gewünschtem Look) und rendert dann im Spiel 2D-Sprites mit der Textur. Damit sollte der gewünschte Verpixel-Effekt bei Point-Filtering auftreten

EDIT: Dank Unity kann man sowas ja schnell mal ausprobieren:

Ich bin mit dem Ergebnis durchaus zufrieden.

Bild
Bild

EDIT 2: Ich hab zwei mal das selbe Bild gepostet *facepalm*
War mal MasterQ32, findet den Namen aber mittlerweile ziemlich albern…

Programmiert viel in ⚡️Zig⚡️ und nervt Leute damit.
Benutzeravatar
Jonathan
Establishment
Beiträge: 2550
Registriert: 04.08.2004, 20:06
Kontaktdaten:

Re: Gedanken über "Retro-Grafikstilen"

Beitrag von Jonathan »

Deine Ideen, 3D Modelle entsprechend zu verpixeln hören sich relativ kompliziert an. Wie schon gesagt wurde kann jedes 3D Tool die auch als fertige Sprites exportieren und diese dann im Spiel direkt zu verwenden macht die Logik dort um Größenordnungen einfacher.

Das Problem was ich dabei aber so ein bisschen sehe ist, dass es gar nicht so leicht ist, Modelle hübsch in niedrigen Auflösungen zu rendern. Nicht umsonst gibt es Pixelartists, die jeden Pixel von Hand setzen um den wenigen Platz optimal auszunutzen. Einfach ein paar hundert Dreiecke auf 32x64 Pixel rausrendern wird nie so schick aussehen, wie von Hand gesetzte Pixel. Wobei man aber vielleicht auch mit dem etwas matschigerern Look leben kann.

Ich denke, 2D Grafik sieht vor allen Dingen deshalb so viel besser aus, weil man ohne Mehraufwand unendlich viele Details haben kann. Klar sind Spiele je nach Auflösung pixelig, aber innerhalb dieser gesetzten Auflösung können 2D Grafiken perfekt scharf sein. In 3D Spielen jedoch kann man alles aus allen Winkeln und allen Entfernungen ansehen. Sogar aktuelle Spiele haben matschige Wände, wenn man nur nahe genug herangeht.
Früher hatte man einfach zu wenig Leistung für genug Details (aber alle waren beeindruckt, weil alles 3D und komplett dynamisch war), heutzutage geht das in der Regel solange man die Kamera unter Kontrolle hat (Side-Scroller, Strategiespiele usw). Aber es ist halt nach wie vor deutlich teurer, früher musste man einfach nur die feste Anzahl an Pixeln die man eh schon hatte clever nutzen.

Meiner Meinung nach hat man aber noch ein weiteres Problem in 3D: Wenn alles realistischer ist, hat man einfach weniger Übersicht. In 2D Strategiespielen in denen jedes Sprite komplett gleich aussah hat man auf Anhieb genau gesehen, was für Gebäude in der Basis standen. In neueren Spielen sind die Unterschiede zwischen den Gebäuden oft subtiler, und noch schlimmer wird es bei Einheiten. Und Verdeckung dank perspektivischer Projektion hilft auch nicht gerade bei der Übersicht.
Lieber dumm fragen, als dumm bleiben!
https://jonathank.de/games/
Benutzeravatar
Chromanoid
Moderator
Beiträge: 4275
Registriert: 16.10.2002, 19:39
Echter Name: Christian Kulenkampff
Wohnort: Lüneburg

Re: Gedanken über "Retro-Grafikstilen"

Beitrag von Chromanoid »

@MasterQ: Gibt's das auch animiert? Sieht ziemlich gut aus, finde ich.
Benutzeravatar
xq
Establishment
Beiträge: 1590
Registriert: 07.10.2012, 14:56
Alter Benutzername: MasterQ32
Echter Name: Felix Queißner
Wohnort: Stuttgart & Region
Kontaktdaten:

Re: Gedanken über "Retro-Grafikstilen"

Beitrag von xq »

Jap, gibt es. Das Modell ist live reingerendert, ich kann morgen mal versuchen ne Animation zu capturen,
War mal MasterQ32, findet den Namen aber mittlerweile ziemlich albern…

Programmiert viel in ⚡️Zig⚡️ und nervt Leute damit.
Benutzeravatar
starcow
Establishment
Beiträge: 560
Registriert: 23.04.2003, 17:42
Echter Name: Mischa Schaub
Kontaktdaten:

Re: Gedanken über "Retro-Grafikstilen"

Beitrag von starcow »

Also was du da jetzt so schnell schnell aus dem Hut gezaubert hast, ist schon recht beeindruckend! Super!
Mich würde es natürlich jetzt auch sehr interessieren, wie z.B eine stufenlose Rotation aussehen würde.
Verstehe ich das richtig - ist diese Figur ein 3DModell, welches du in eine Textur gerendert hast?
Folglich wäre dann die Beleuchtung auf den Sprite auch immer adäquat, richtig?

Gruss starcow
Freelancer 3D- und 2D-Grafik
mischaschaub.com
Benutzeravatar
xq
Establishment
Beiträge: 1590
Registriert: 07.10.2012, 14:56
Alter Benutzername: MasterQ32
Echter Name: Felix Queißner
Wohnort: Stuttgart & Region
Kontaktdaten:

Re: Gedanken über "Retro-Grafikstilen"

Beitrag von xq »

Genau :) Ich kann heute Abend mal ein Video davon rendern und auf Youtube hodhladen, dann sieht man das ganze mal in Bewegung :)
War mal MasterQ32, findet den Namen aber mittlerweile ziemlich albern…

Programmiert viel in ⚡️Zig⚡️ und nervt Leute damit.
Benutzeravatar
xq
Establishment
Beiträge: 1590
Registriert: 07.10.2012, 14:56
Alter Benutzername: MasterQ32
Echter Name: Felix Queißner
Wohnort: Stuttgart & Region
Kontaktdaten:

Re: Gedanken über "Retro-Grafikstilen"

Beitrag von xq »

Und hier das versprochene Video:

[youtube]v85Lmb7EoKA[/youtube]
War mal MasterQ32, findet den Namen aber mittlerweile ziemlich albern…

Programmiert viel in ⚡️Zig⚡️ und nervt Leute damit.
Benutzeravatar
starcow
Establishment
Beiträge: 560
Registriert: 23.04.2003, 17:42
Echter Name: Mischa Schaub
Kontaktdaten:

Re: Gedanken über "Retro-Grafikstilen"

Beitrag von starcow »

Vielen Dank Felix! :-)
Leider kann ich das Video nicht abspielen - da ich kein Flash installiert habe. Du hast das nicht zufälligerweise auch auf Youtube oder einem ähnlichen Portal hochgeladen, wo ich das Video mittels HTML5 abspielen könnte?

Gruss starcow
Freelancer 3D- und 2D-Grafik
mischaschaub.com
Benutzeravatar
xq
Establishment
Beiträge: 1590
Registriert: 07.10.2012, 14:56
Alter Benutzername: MasterQ32
Echter Name: Felix Queißner
Wohnort: Stuttgart & Region
Kontaktdaten:

Re: Gedanken über "Retro-Grafikstilen"

Beitrag von xq »

Ich möchte mal sagen: Das ist hart bescheuert, das ist ein Embedded Youtube Video :P

https://www.youtube.com/watch?v=v85Lmb7EoKA
War mal MasterQ32, findet den Namen aber mittlerweile ziemlich albern…

Programmiert viel in ⚡️Zig⚡️ und nervt Leute damit.
Benutzeravatar
Chromanoid
Moderator
Beiträge: 4275
Registriert: 16.10.2002, 19:39
Echter Name: Christian Kulenkampff
Wohnort: Lüneburg

Re: Gedanken über "Retro-Grafikstilen"

Beitrag von Chromanoid »

Hammer! Ich stelle mir das besonders cool vor, wenn die Rotation auf 1/16 oder evt. wie füher 1/8 Schritte beschränkt wird - dabei dann aber sehr flüssige Animationen.
Benutzeravatar
starcow
Establishment
Beiträge: 560
Registriert: 23.04.2003, 17:42
Echter Name: Mischa Schaub
Kontaktdaten:

Re: Gedanken über "Retro-Grafikstilen"

Beitrag von starcow »

Wow! Ich bin beeindruckt - das schaut wirklich gut aus! :-)
War jetzt wirklich aufschlussreich sowas in Bewegung zu sehen. Danke für das Video!

Gruss starcow
Freelancer 3D- und 2D-Grafik
mischaschaub.com
scheichs
Establishment
Beiträge: 897
Registriert: 28.07.2010, 20:18

Re: Gedanken über "Retro-Grafikstilen"

Beitrag von scheichs »

Auf jeden Fall eine sehr coole Idee. Man muss halt die Anzahl der RenderTragets im Auge behalten.
Aber der Pixelook, die "falsche" Beleuchtung und die veränderte Perspektive zur eigentlichen View führen schön aus dem Realismus Dilema raus, so dass man auch mal bissjen wieder Kopfkino spielen lassen kann.
Benutzeravatar
xq
Establishment
Beiträge: 1590
Registriert: 07.10.2012, 14:56
Alter Benutzername: MasterQ32
Echter Name: Felix Queißner
Wohnort: Stuttgart & Region
Kontaktdaten:

Re: Gedanken über "Retro-Grafikstilen"

Beitrag von xq »

Jau, mit den render targets gibt das probleme, wenn man moderne spiele macht. aber wir sind ja hier retro, man sieht ja vielleicht mal 4 oder 5 gegner gleichzeitig, z8dem sind die grade mal 128², da kann man sicher auch mit 2D-Array-Texturen als render target cheaten usw... ;)
War mal MasterQ32, findet den Namen aber mittlerweile ziemlich albern…

Programmiert viel in ⚡️Zig⚡️ und nervt Leute damit.
Benutzeravatar
Schrompf
Moderator
Beiträge: 5083
Registriert: 25.02.2009, 23:44
Benutzertext: Lernt nur selten dazu
Echter Name: Thomas
Wohnort: Dresden
Kontaktdaten:

Re: Gedanken über "Retro-Grafikstilen"

Beitrag von Schrompf »

Oder live einen Texturatlas anlegen. Cooler Stil!
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
Benutzeravatar
xq
Establishment
Beiträge: 1590
Registriert: 07.10.2012, 14:56
Alter Benutzername: MasterQ32
Echter Name: Felix Queißner
Wohnort: Stuttgart & Region
Kontaktdaten:

Re: Gedanken über "Retro-Grafikstilen"

Beitrag von xq »

Joar Texturatlas mit glViewport und ner ziemlich dicken Textur, in welche man einfach so viele Sprites wie möglich reinmalt. Sollte eigentlich ja gehen....
War mal MasterQ32, findet den Namen aber mittlerweile ziemlich albern…

Programmiert viel in ⚡️Zig⚡️ und nervt Leute damit.
Antworten