Bericht Bericht: „Quake Wars“ mit Raytracing

Blitzmerker schrieb:
...Wie willste da jetzt gescheiten Code schreiben?...

Genau deswegen sollte es ja auch portiert werden. Mir is schon klar, dass auf ner GPU keine SSE Befehle ausführbar sind. Vielmehr muss die Raytracing Engine ala GPU Computing angepasst werden. NVIDIA und AMD/ATI verwenden ja nicht ohne Grund eine Grafikkarte statt einer CPU und erzielen mit optimierten Programmen erhebliche Performancevorteile. AMD/ATI lässt ja auch die hauseigene Raytracing Engine auf den eigenen Grakas laufen. Allerdings wird diese sich mehr oder minder von der Intels unterscheiden, weswegen man sie kaum vergleichen kann.
Ps.: Ich bin weder Programmierer oder sonstwas, sondern mache mir lediglich Gedanken für einen vernünftigen Vergleich der beiden Methoden.
 
Blitzmerker schrieb:
@Kopi80:
Ja aber diese Kerne haben viele Befehle, die sich eine Grafikkarte nur erträumen kann.

Also wenn man von Cuda ausgeht, dann kann jeder einzelne Shader als Recheneinheit herhalten und das sind dann gleich 128 oder mehr ;)

Intel kann mit seinen xx-CPU-Kernen so ziemlich einpacken, wenn es möglich ist die Shader für Raytracing einzusetzen, vorallem weil auf Grafikkarten die Hardware-Polygonberechnung möglich ist und nicht per Software umgesetzt werden muss wie es Intel zur Zeit macht.
 
Ich denke das Raytracing an sich schon gut entwickelt ist. Es bedarf nur der entsprechender Hardware die es definitiv in zukunft geben wird. Der vorteil ist in jedem Kinofilm ersichtlich. Auch wenn da Raytracing nicht in Echtzeit berechnet wird sieht es genauso aus. Glaub Wall-E oder Ice Age mit Rasterisierung würde sich heutzutage keiner antun wollen. Genauso Special Effects in Realfilmen würde ohne Raytraycing lächerlich aussehen. Und auf den Zug Raytracing sind auch ATI und N-Vidia aufgesprungen. Wer nun zuerst das rennen macht sei dahingestellt. Bist nach der ersten Hardware auch erste Spiele folgen gibt's mind schon ein zweites konkurenzprodukt bzw es sind vielleicht alle drei Intel ATI und N-Vidia mit von der partie. Damals hat die Vodoo reihe 3D auf dem Markt gebracht und diesmal ist es evtl Intel. Ich tippe mal das es 2015 Schon möglich ist Raytracing auf ein Desktop PC sinnvoll zum laufen zu bringen. Und wenn es läuft dann ist Rasterisierung definitiv geschichte und wird zu den akten von 2D Games zugeheftet. Programmierer werden von von diesem Tag träumen.
 
LazyGarfield schrieb:
Also wenn man von Cuda ausgeht, dann kann jeder einzelne Shader als Recheneinheit herhalten und das sind dann gleich 128 oder mehr ;)
Ja aber diese Recheneinheit kann nicht alles, was eine CPU alles kann.
Wie ich schon sagte, kann zu beispiel ein RV670 kaum eine for-Schleife mit akzeptabler Geschwindigkiet ausführen.
Warum läuft, wenn die Shader Prozessoren ja so gut sind, noch keine Linux Distri nur auf der Grafikkarte? (Das wär ja schon cool, oder, mit 128 Kernen;))
 
Blitzmerker schrieb:
Warum läuft, wenn die Shader Prozessoren ja so gut sind, noch keine Linux Distri nur auf der Grafikkarte? (Das wär ja schon cool, oder, mit 128 Kernen;))

Wir vergleichen jetzt nicht ersthaft ein OS mit ner Grafik Engine? o.O
CPU und OS ftw - GPU und Grafik ftw ... meine Meinung

Wenn es stimmt, dass die Komplexität der Grafikberechnung bei Raytracing sinkt, dann sollten diese einfacheren Berechnungen doch wie gemacht für eine GPU sein. 'Schwierigere' Berechnungen schaffen sie ja jetzt schließlich auch.

Aber vllt wäre das eine Frage, die man mal Herrn Pohl stellen könnte: Was erhofft sich Intel durch den Einsatz von CPU Kernen im Bereich des Raytracing? Ziehen diese Vorteile (gegenüber GPU 'Kernen') daraus? Und wenn ja, warum?
 
Der Vergleich hinkt natürlich wie jeder Auto-Vergleich (bei Grafikkarten).
Ich glaub mit Komplexität meint man die Vereinfachung der Beschleunigung, also dass die nicht sichtbaren Teile nicht mehr mitberechnet werden. Das ist bei Raytracing viel einfacher zu realisieren als bei der Rasterisierung.
 
Die Vereinfachung liegt darin, dass man (theoretisch) jeden Effekt gleich berechnen kann, nämlich mit Strahlen. Bei der Rasterisierung gibt es sehr unterschiedliche Verfahren für die einzelnen Komponenten des Bildes, wie Schatten, Spiegelungen und das eigentliche Rastern.
 
Blitzmerker schrieb:
Warum läuft, wenn die Shader Prozessoren ja so gut sind, noch keine Linux Distri nur auf der Grafikkarte? (Das wär ja schon cool, oder, mit 128 Kernen;))
Weils keiner braucht? Schliesslich haben PC´s ja CPU´s also warum von Grund auf neu anfangen für ein paar Geeks? ;) :evillol: So ein Riesenaufwand zahlt sich hier sicher nicht aus. Die Firmen wollen ja schliesslich auch Geld damit machen ;)

Ich hab nie behauptet, dass es mit Shadern besser geht, sondern nur in den Raum gestellt, dass ich mir vorstellen könnte, dass diese für die notwendige Parallelisierung, welche für Raytracing benötigt wird, herhalten könnten. Für die Umsetzung bin ich nicht zuständig ;)

Es gibt schon die ersten Cluster die mit vielen Grafikkarten laufen anstatt mit vielen CPU´s. Für Spezialanwendungen dürfte das also doch recht grosse Geschwindigkeitsvorteile haben, welche sich hoffentlich auf Raytracing portieren lassen. Ob diese Vorteile für Raytracing wirklich eingesetzt werden können wird sich weisen. AMD und NV sind ja nicht untätig.
 
Ich bin der Meinung das sich die "klassische" Rasterisierung noch lange, lange durchsetzen wird.
Es werden zwar Grenzen erwähnt wo man mit Rasterisierung nicht mehr weiterkommt, aber es werden sicherlich noch neue Technologien (Fertigung,Kühlung,Shader etc.) erscheinen, die Raytracing immer weiter vor sich herschieben werden.
Vieleicht werden, wie schon erwähnt, Grafikkarten mit ihren Steam Prozessoren immer komplexere Aufgaben bewältigen können und irgendwann auch Raytracing beherrschen.
Wenn ich micht recht erinnere war Intel zu Pentium 1 Zeiten der Meinung das es keine wirklich schnelleren Prozessoren mehr geben wird (kann mich auch leicht in der Zeit irren). Und wie sieht es jetzt aus?:evillol:
Ich denke das sich Grafikkarten noch so entwickeln können, wie wir es heute noch nicht vermuten.
Eine komplett fotorealistische Grafik (in Spielen) ist auch nicht so erwünscht wie sich so mancher denkt, weil es einfach zu nah an die Realität herankommt. Raytracing würde das ja auch irgendwann gut verwirklichen.
Irgendwo (Reportage oder im Inet) hab ich gesehen das ab einem bestimmten sehr fotorealistischem Aussehen das Obejekt oder die Person als unschön und künstlich empfunden wird.
Die meisten wollen einfach nur sehen wie fotorealistische Grafik in Aktion aussieht. amd cinema 2.0 grafik
Daher denke ich das Raytracing eher weiter für Filmprojekte (gerendert), für Grafikerprojekte etc. verwendet wird und es bis zur Echtzeitberechnung noch ewig dauern wird.:mussweg:
 
Zuletzt bearbeitet:
Sly123 schrieb:
aber es werden sicherlich noch neue Technologien (Fertigung,Kühlung,Shader etc.) erscheinen [...] Wenn ich micht recht erinnere war Intel zu Pentium 1 Zeiten der Meinung das es keine wirklich schnelleren Prozessoren mehr geben wird (kann mich auch leicht in der Zeit irren [...] Eine komplett fotorealistische Grafik (in Spielen) ist auch nicht so erwünscht wie sich so mancher denkt, weil es einfach zu nah an die Realität herankommt. [...] Irgendwo (Reportage oder im Inet) hab ich gesehen das ab einem bestimmten sehr fotorealistischem Aussehen das Obejekt oder die Person als unschön und künstlich empfunden wird.

Diese Meinung teile ich nicht. Irgendwie haust du auch die verschiedensten Argumente durcheinander. Grafikkarten werden sicher nicht mehr sooooo viel Potential zur Verbesserung haben (siehe Kostenproblem bei NVIDIA vor kurzer Zeit). Auch wird die Stromaufnahme immer mehr zum Problem (ebenfalls siehe NVIDIA und ihre Dual GPU Karte). Intel hatte damals auch 10 GHz angekündigt, konnte das aber dann nicht einhalten (schneller sind sie natürlich trotzdem geworden, was aber zu einem großen Teil auf ManyCore Architektur zurückzuführen ist).
Warum sollte aber eine realistische Grafik nicht wünschenswert sein? Wenn ich einen Taktikshooter spielen will, dann soll das auch so realistisch wie möglich sein. Ich kann auch einen Comicstyle physikalisch korrekt darstellen, ohne dass die Illusion flöten geht. Ist für mich kein Nachteil.
Und deine erwähnte Reportage bezog sich wahrscheinlich auf nachbearbeitete Fotos von Menschen/Gesichtern. Da wird also aus der Realität die Illusion und deshalb wirds als unangenehm empfunden.
 
GPU´s haben was??
Lol, das ist gleich zusetzen, wie damals Billy Boy meinte kein Mensch braucht jemals mehr als 8MB Ram (oder so)
Zudem was war damals mit dem P4? 1 Kern mit 120W, heute haben wir Quads, die brauchen die hälfte und davon hat allein 1 Kern die 4 fache Leistung...

Naja zum Fotorealismus, vermutlich isses so, wenn man nen Shooter spielt, der 1:1 wie in Echt aussieht, könnte es potienziell verführerischer sein sowas in echt zu tun...sieht ja gleich aus, und im Spiel passiert auch keinem was...
 
Kopi80 schrieb:
Diese Meinung teile ich nicht. Irgendwie haust du auch die verschiedensten Argumente durcheinander. Grafikkarten werden sicher nicht mehr sooooo viel Potential zur Verbesserung haben (siehe Kostenproblem bei NVIDIA vor kurzer Zeit). Auch wird die Stromaufnahme immer mehr zum Problem (ebenfalls siehe NVIDIA und ihre Dual GPU Karte). Intel hatte damals auch 10 GHz angekündigt, konnte das aber dann nicht einhalten (schneller sind sie natürlich trotzdem geworden, was aber zu einem großen Teil auf ManyCore Architektur zurückzuführen ist).
Inwiefern soll das nun bitte FÜR Raytracing sprechen, wo es doch für ein vergleichsweise schlechtes Gesamtbild HighEnd-Hardware zum Frühstück verputzt? Als wäre Intel's Larrabee nicht genauso von den physikalischen Grenzen in seinem Entwicklungspotential betroffen wie die GPUs von ATi und Nvidia...

Wenn ich mich zwischen klassischer Rasterisierung, wo die Gesamtoptik heute schon fast Photorealismus erreicht und der Schwindel nur in Extremsituationen auffliegt (man schaue sich nur mal an, was die Modder aus Crysis gebastelt haben ;)) und Raytracing, das bis auf ein paar nette, aber größtenteils überflüssige Spiegeleffekte im Gesamtbild bei Echtzeit-kritischen Anwendungen (sprich Computerspiele) um Lichtjahre hinterherhinkt, dann fällt nicht nur für mich die Wahl klar auf ersteres :p
 
Bei Pixar etc wird auch heute noch selten Raytracing eingesetzt. Wenn, dann rastert man und macht nur das Nötigste mit Raytracing (z.B. Spiegelungen bei Cars, afaik das erste mal das Pixar Raytracing benutzte).
 
Huhamamba schrieb:
Inwiefern soll das nun bitte FÜR Raytracing sprechen, wo es doch für ein vergleichsweise schlechtes Gesamtbild HighEnd-Hardware zum Frühstück verputzt? Als wäre Intel's Larrabee nicht genauso von den physikalischen Grenzen in seinem Entwicklungspotential betroffen wie die GPUs von ATi und Nvidia...

Es ging mir doch auch gar nicht um pro/contra Raytracing. Ich wollte nur anmerken, dass es (nach meinem logischen Verständnis) auf einer GPU besser performen sollte, wenn man es denn darauf portieren würde. Und dann ließe sich vllt auch mehr/besser/flüssiger darstellen.

Ich würde mich übrigens aufgrund der Qualität eher für Raytracing entscheiden. Nicht ohne Grund setzte Pixar bei Wall-E auch (nicht nur) Raytracing ein. :)
Ps.: natürlich ist auch Larrabee begrenzt entwickelbar
 
ach leute, wenn man keine ahnung hat bitte einfach mal den drang die finger auf die tasten zu geben unterdrücken. ich hab hier nur ein posting (von Anteru) gelesen, dass fachlichen inhalt bietet. dann gibt es noch den einen oder anderen, der zumindest versucht sich mit der materie zu beschäftigen... alle anderen tippen einfach nur ins blaue... um mal nur eins der verständnisprobleme anzusprechen: die beleuchtung einer szene wird auch von nicht sichtbaren polygonen beeinflusst. Soviel zur "sinnvollen" grenze MaxPoly == BildPixel.
 
man könnte die bäume ja nur aus polygonen machen, mit nicht transparenten texturen, da raytracing kein problem mit großen polygonhaufen hat.

post-57191-1197294763.gif
 
Zuletzt bearbeitet:
zu Pixar+Raytracing: Pixar hat eine eigene Renderengine und ohne Raytracing läuft im 3d-Bereich schon mal gar nichts. Siehe https://renderman.pixar.com/

Wieso sollte man denn statt mit Transparenz + "facing"-Partikeln wie heutzutage meist Bäume dargestellt werden, 2M-Poly-Bäume in de Gegend pflanzen? Realistischer wird's davon auch nicht, nur schwerer zu rendern. Eine gute Physikengine könnte da weit mehr rausholen.

Das größte Problem bei Raytracing auf Grafikkarten ist momentan die mehr als schwache Speicherausrüctung und -anbindung. Um gute Effekte hinzubekommen, muss sehr oft die gesamte Szene betrachtet werden, um die Farbe von einem Pixel zu bestimmen - und das passt gerade bei Polygonzahlen bei denen sich RT anfängt zu lohnen oftmals nicht mal bei den meisten von euch hier in den Arbeitsspeicher, geschweige denn in die Grafikkarte.

So als Denkanstoß: In 3d-Grafikerworkstations waren 8 GB RAM vor 1-2 Jahren Standard - heutzutage sind es meist 16GB, da man damit auch mal entspannter in Szenen nicht auf die letzten paar Polygone optimieren muss sondern einfach dann eben mit 30 statt 20 Millionen Polys rendert.

Beispiel: Schaukelnde Lampe.
Dafür muss jedes Frame das Licht komplett neu berechnet werden, außerdem ist die Szene in jedem Frame anders, man kann also nur selten Pfade wiederverwenden. Dafür muss aber jeder Thread ständig die komplette Szene abfragen. Bei mehreren "Mitrenderern" wie z.B. GPU1, GPU2 und CPU bräuchte man dann die Szene 3x im Speicher - und natürlich sollte dann auch in alen 3 Speichern die komplett identlische Szene zu finden sein... sonst flimmert's bzw. es gibt Kanten/Blöcke (z.B. würde in diesem Beispiel eine GPU 2/5 des Bildes berechnen, die andere nochmal 2/5 und die CPU mit jedem Kern jeweils ein Kästchen des Restes)
 
Was ist denn eigentlich aus Herrn Pohl geworden? Ein aktuelles Update der Reihe wäre doch zu diesem Zeitpunkt ideal? Mit all den neuen Grakas im Angebot...
 

Ähnliche Themen

Zurück
Oben