Oneplusfan schrieb:
Was sind denn z.B. Screen Space Reflections? Eine Trickserei, um nicht zu viel Leistung zu verlieren. Die Alternative: Gar keine Spiegelungen (bzw. jetzt RTRT).
Die Aussage ist so nicht ganz richtig. Ohne "RT" gibt es drei Möglichkeiten Reflexionen in eine Rasterizer-Engine zu implementieren.
1. Statische Reflexionen über eine vorberechnete Textur. Je nach Aufwand ist es eine sehr grobe Textur, die nur die Geometrie des Levels enthält und sehr grobkörnig ist. Die Textur kann jedoch auch sehr detailiert werden. Sie ist aber eben halt statisch! Diese Art der Reflexionen benötigt relativ wenig Leistung. Leistung kostet hier das Ausrichten der Textur mit den richtigen Winkeln für den Spieler. Letzteres kann sehr aufwendig werden.
Vorteil: Kostet sehr wenig Leistung.
Nachteil: Muss im voraus erstellt werden, statisch.
2. Die von dir genannten Screen Space Reflections. Die "Reflexions"-Textur wird aus dem Screen Space berechnet. Sie kann dynamisch auf den Spieler, NPC sowie Objekte reagieren. Der Leistungsbedarf ist von Mittel bis Hoch, je nachdem wie viele Details abgebildet werden.
Vorteil: Moderater Leistungsbedarf. Dynamisch. Zeigt relativ viele Details.
Nachteil: Bildet nur den Screen Space ab. Je mehr Details gezeigt werden, um so kosten intensiver werden sie.
3. Planar Reflections. Bei diesen Reflexionen wird von der "Oberfläche" aus ein eigener "Screenspace" eröffnete, der dann all das Abbildet, was von dort aus, aus dem "Winkel" zu sehen ist. Diese Reflexionen sind ebenso dynamisch, zeigen noch mehr Details als die SSR. Der Leistungsbedarf ist in der Regel jedoch Hoch bis sehr Hoch.
Vorteil: Zeigt Details, die bei SSR nicht zu sehen sind. Dynamisch.
Nachteil: Benötigen viel Leistung bis sehr viel Leistung, da quasi ein zweites Bild gerendert wird.
Das letztere kann man für eine besondere Reflexion in der Szene nutzen, mit jeder zusätzlichen Reflexion auf diese Art steigt der Bedarf jedoch immer weiter an. Bei einer 2. Planaren Reflexion kommt ein dritter "Screenspace" hinzu usw. Das bedeutet, dass die CPU wie für den eigentlichen Frame, alle grundlegende Berechnungen erfolgen erneut usw. Klar kann man es dann auch vereinfachen. Aber das, was den Rasterizer so schnell macht, nämlich die Vereinfachung der Szene auf alles vor der Kamera und damit verbunden der Z-Buffer, funktioniert hier halt nicht mehr wirklich. Und das ist einer der Hauptgründe, warum nun auch die Zeit für "RT" reift ist. Jede weitere "Verbesserung" im Rasterizer, wie Palanar Reflections, kosten immer mehr Leistung und benötigen auch immer mehr Speicher. Es macht - gerade eben durch Reflexionen - keinen Unterschied mehr, ob man nun einen Rasterizer mit Palanar Reflections hat, bei dem je Reflexion ein neuer Z-Buffer usw. dazu kommt, oder ob man einfach den gesamten "Raum" um die Kamera abbildet.
ZeroZerp schrieb:
Ansonsten - Beängstigend, wie lange das inzwischen her ist. Ich kann mich an den "Skandal" noch erinnern, als ob es gestern gewesen wäre.
Da geht es dir wie mir, ich erinnere mich auch noch daran, als 2000 und Co da die Tricks nach und nach rauskamen.
ZeroZerp schrieb:
Wir leben heutzutage bezüglich gerasterter Grafik in einer einzigen Wetl voller "Cheats", wenn man die Definition, die hier dafür herhalten muss nutzt.
1. Ein Schlag auf die Finger für dich. Wenn wir ganz genau sind, dann kommt selbst bei einem RayTracer/PathTracer am Ende ein gerastertes Bild heraus.
Aber ich weiß ja was du meinst, wollte nur klugscheißen. Am Ende ist aber der "Z-Buffer"-Rasterizer als ganzes ein einziger großer Cheat. Jetzt werden aber halt alle Cheats genau so kosten intensiv wie eine "richtige" Berechnung.