CMDCake schrieb:Hab ich da einen Denkfehler? Setzt man bei den RTX Karten nicht auf spezialisierte Recheneinheiten, gerade um die Performance stark gegenüber einer Softwarelösung zu verbessern? Ich nahm bislang an es wäre der identische Ansatz wie bei Videocodierung. Dort sind die Hardware En/Decoder doch ebenfalls um längen effizienter und schneller als die Softwarelösung. Wieso ist hier Software gegenüber einer Hardware Lösung plötzlich die viel bessere Lösung?! Ich frage aus Neugierde.
Das Problem bei Hardware RT ist die BVH (bound volume hierarchy) das ist quasi eine vereinfachte Repräsentation der Geometrie der Spielwelt gegen die das Raytracing angewendet wird.
Die Verwaltung dieser BVH kostet einiges an CPU Ressourcen.
Wenn ein Spiel bzw. eine Engine gut dafür optimiert wurde, dann ist das idr. kein Problem. Es gibt auch immer neuere Ansätze die BVH möglichst effizient zu verwalten.
Aber manchmal ist das eben nicht der Fall und gerade die Unreal Engine ist da noch nicht gut optimiert. Und wenn es dann nochdazu ein Open World Spiel ist, dann wird die BVH noch aufwändiger. Und dann verursacht die BHV einen mehr oder weniger großen CPU Overhead der sich ggf. in Form von schlechteren Frametimes und früherem CPU Limit äußern kann.
RT belastet also nicht nur die GPU (reine Strahlenverfolgung und das Shading), sondern auch die CPU (BVH und dessen Verwaltung und Streaming).
Bei genauerem Interesse einfach danach googlen oder die KI deiner Wahl fragen.
Übrigens ist es umso beeindruckender, dass Cyberpunk schon ende 2020 so gut darauf optimiert war, dass der zusätzliche Verwaltungsaufwand der BVH dort in keinster Weise die Frametimes beeinflusst hat und nur vergleichsweise wenig CPU Leistung gekostet hat. Man sieht also, wenn die Entwickler die Engine dafür optimieren, dann klappt das auch sehr performant. Wenn nicht - so wie es bei einigen UE5 Games mit Hardware RT der Fall war - leiden die Frametimes und man kommt früh ins CPU Limit.