News Weitere Impressionen von „Larrabee“

Schon die Screenshots von Stalker DX11 gesehen? Da wird sogar ein Schärfeunterschied in Abhängigkeit von der Entfernung zum schattenwerfenden Objekt berechnet. Und das geht mal eben heute schon auf Rasterisierungsbasis. Wenn du mir das in Echtzeit geraytraced (ahh....keine schöne Wortschöpfung) zeigen kannst...Schau Dir mal die Demos von Nvidias Optix an, da sieht man die Berechnung der notwendigen Samples.
Auch Global Illumination funktioniert mit der CryEngine 3 schon in Echtzeit, auf Basis von Rasterisierung.

Das Hauptproblem an Rasterisierung ist, dass sie eben nicht automatisch physikalisch korrekt ist und physikalische Korrektheit auch gar nicht das Ziel ist, sondern Geschwindigkeit der Darstellung.
 
Zuletzt bearbeitet:
@mountwalker: du meinst aber nicht zufällig outcast mit seiner voxel engine? wenn nicht würde mich das spiel wirlich interessieren.
 
Outcast.jpg


Könnte hinkommen, sieht auch heute noch ganz ansehnlich aus. :)
 
achja, das weckt Erinnerungen. Leider habe ich das Spiel schon vor Jahren entsorgt.
 
Zuletzt bearbeitet:
voxel rulez ! ;)

ne im ernst, bei heitiger polygonenzahl ist das gelänge schon so detailliert, dass voxel keine vorteile mehr ausspielen kann.
 
Es ist halt eben nicht so einfach, oder warum glaubst du das noch kein einziges professionelles Renderprogramm die Berechnungen ueber die Grafikkarte ausfuehren.
Das liegt sicher nicht daran das es ein bisschen Programmieraufwand ist.
Die theroretische bis zu 50 x steigerung der Geschwindigkeit wuerden sicher alle Programme gerne einsetzen. das wird jedoch nicht gemacht weil es nich funktioniert.
Ein Mitarbeiter von z.B. Maxwell hat dazu gesagt das eine Portierung der Renderengine auf die GPU keinerlei Geschwindikeit im vergleich zu CPUs bringen wuerde da die shader zu unflexibel und die Speichermenge und Anbindung an einen gemeinsamen Speicher begrenzt ist.

Moderne Grafikarten sind nunmal auf Rasterisierung ausgelegt und nicht auf Raytacing.
Die ach so tollen 2 TeraFlops sagen da nicht viel aus.
Und natuerlich kann man sicher ueber wie schon geschrieben Umwege eineige Raytracing effecte auf Grafikkarten portiern aber es ist nicht sonderlich effektiv.
Es fehlt der grosse und schnell angebundene Speicher. Nicht umsonst wird bei komplizierten einzelbildberechnungen mittels reaytracing mal schnell 4GB Ram belegt.

Falls dich das nicht ueberzeugt dann gibt Dir vielleicht zu denken das sowohl Nvidia als auch Ati Raytracing zuerst als art Postprocessing einsetzen wollen das nur fuer bestimmte Bildteilbereiche wie z.B. wasser eingestzt werden soll. Das ist meiner meinung nach kein Raytracing sondern postprocessing und verkompliziert die Rasterisierungsengines noch weiter.

Und noch ein letztesmal - theoretisch muessten die heutigen garfikarten mit teils bis zu 100 facher Rohleistung von CPUs schon laengst fuer professionelles Rendering im einsatz sein falls das so einfach machbar waere. der Garfikmarkt ist imho im Gegensatz zum proffessionellen Mark absolut uninteressant. (Siehe Preise fuer FireGL und Quadro Grafik oder Xeons auf CPU seite)
 
Zuletzt bearbeitet:
@ Outcast

Yep, genau das meine ich - Voxel Raycasting, man beachte ua. die Charakterschatten, das gabs in dieser "Korrektheit" damals noch nicht. ;)

Und Vorteile kann das auch heute durchaus haben, nicht umsonst wird die id tech 6 Engine ja Voxel Raycasting verwenden. Mit der Einschränkung der Grafikchips auf Rasterisierung war es nur eine Zeit lang unatracktiv, weil man Voxel Raycasting auf der CPU berechnen musste, aber dank Compute Shader und CUDA/OpenCL kommt das jetzt eben zurück. ;)

Auch mal ein interessantes, wenn auch mittlerweile etwas älteres Interview mit dem Kopf der Unreal-Engine zum Thema Zukunftsgrafik: In short, he wants to throw out DirectX, OpenGL, and legacy baggage of a decade of hardware acceleration, and rethink 3D gaming from the ground up.
 
Zuletzt bearbeitet:
Wenn man sich interessante Spiele anschaut, dann verwendet die eine Hälfte die Gamebryo-Engine und die andere Hälfte verwendet entweder id tech oder Unreal (mit einem viellicht irgendwann wachsenden Anteil CryEngine) - das bedeutet, dass die Hälfte der Echtzeit-Grafik-Engine-Welt bereits der Rasterisierung allmählich lebewohl sagt, weil John Carmack für id tech 6 bereits Voxel Raycasting angekündigt hat und Tim Sweeny, naja, les das Interview, es ist sehr eindeutig, dass er ebenfalls keinen Bock mehr hat sich in Fixed-Function-Rasterisierung zu zwängen, obwohl sämtliche Hardware mit C-Code befeuert werden kann. "Whereas previously, you had the DirectX API, and some fairly well-documented techniques for taking advantage of it, now, you get a C compiler and a blank text-editing window, and you have infinitely many possibilities." ;)
 
Zuletzt bearbeitet:
@ riDDi

Jap, genau das wollte ich damit auch sagen. :)

@ Lübke

Keine Sorge Microsoft wird Direct3D, wenn es so weit ist, genauso einstellen, wie es DirectSound3D eingestellt hat. ;)
 
naturtalent schrieb:
Es ist halt eben nicht so einfach, oder warum glaubst du das noch kein einziges professionelles Renderprogramm die Berechnungen ueber die Grafikkarte ausfuehren.
Das liegt sicher nicht daran das es ein bisschen Programmieraufwand ist.
Die theroretische bis zu 50 x steigerung der Geschwindigkeit wuerden sicher alle Programme gerne einsetzen. das wird jedoch nicht gemacht weil es nich funktioniert.
Ein Mitarbeiter von z.B. Maxwell hat dazu gesagt das eine Portierung der Renderengine auf die GPU keinerlei Geschwindikeit im vergleich zu CPUs bringen wuerde da die shader zu unflexibel und die Speichermenge und Anbindung an einen gemeinsamen Speicher begrenzt ist.

Warum glaubst du dann, hat man Vray mittels Cuda für die GPU portiert? Vray ist sicherlich als professionell zu bezeichnen. Das Hauptproblem bisher war aber eben, dass eine gemeinsame Grundlage für alle Grafikkarten gefehlt hat. Mit OpenCL wird ein derartiges Werkzeug kommen. Sicherlich ist momentan die Anbindung via PCIe noch ein Problem, aber das lässt sich durch genügend Speicher auf der Karte mit Leichtigkeit kaschieren. Und 4 GB Speicher auf eine Grafikkarte zu packen wäre heutzutage prinzipiell nur eine Frage der Nutzbarkeit (wenn mans brauchen kann, baut man's auch drauf). Wenn erstmal ein paar Ports für OpenCL vorhanden sind, werden schnell professionelle Karten mit 4 oder gar 8 GB Speicher zur Verfügung stehen. Und dann ist es wiederum nur eine Frage, bis auch die Consumer-Karten nachziehen, aber eben nur, wenn die Nutzbarkeit in einem angemessenen Verhältnis zum Preis steht.
Und die Shader entwickeln sich eben auch weiter und werden flexibler, was man vielleicht an der GT300 gut sehen wird. (ist allerdings nur eine Spekulation und muss erst noch bewiesen werden).

Ich sage nicht, dass sich die gesamte Roh-Leistung der Grafikkarten für Raytracing einsetzen lässt, aber es ist eben mal ein interessanter zweiter Weg und die Rechenleistung der Grafikkarten steigt eben dank einfacherer Einheiten schneller, als es in der x86 Welt möglich ist.
 
Zuletzt bearbeitet:
Dazu auch nochmal ein kurzes Zitat aus dem von mir verlinkten Interview: "That's kind of irrelevant, right? If you have a completely programmable GPU core, the fact that you have some fixed-function stuff off to the side doesn't hurt you." [...] "So I think you'll see some degree of fixed-function hardware in everybody's architectures for the foreseeable future, and it doesn't matter. And as long as the hardware is sufficiently programmable, we're fine with that."
 
Zuletzt bearbeitet:
@isigrim

Cool wusste ich nicht hoffe da kommt bald ne final version von raus.
benutze auch Vray und das waere der hammer.

Dann gehts doch und die ganzen Pro Renderprog. hersteller haben sich alle nur von Intel kaufen lassen damit die Ihre schweineteuren Xeons verkaufen koennen.
 
So sieht das für mich zumindest aus, abgesehen von dem Aufwand bestehende Engines für GPUs umzuschreiben. Das ist ja nicht eben ein geringer Aufwand. Aber man sollte auch erstmal sehen, wieviel dann OpenCL am Schluss wirklich bringt.
Intel versucht meiner Ansicht nach mit Larabee vorallem sein x86 voranzutreiben.
Mit OpenCL besteht aber erstmals die Chance für eine Art weichen Übergang weg von x86, hin zu vielfältigen neuen Rechenwerken, wo x86 schließlich vorallem die Verwaltung der Daten und Threads übernimmt, die Rechenarbeit aber maßgeblich über Co-Prozessoren (seien es GPUs oder vielleicht auch Cell-Prozzis) läuft.

Das ist wohl auch das Konzept der künftigen APUs von AMD (Also LLano on Ontario), bei denen die GPU-Kerne direkt mit der CPU auf einem Die integriert werden. Eine über DirectCompute und OpenCL beschleunigte CPU. Dann könnte sich auch ein Teil der Bandbreitenproblematik in Luft auflösen.
 
Dieses Thema wurde vor einiger Zeit auch schon im 3DCenter auseinandergenommen, da dort bekannterweise auch einige unterwegs sind, die in der Spielebranche arbeiten (Demirug etc.), sind die Kommentare gar nicht so uninteressant.

Zu finden HIER

Was die Engine Verteilung angeht:
Da gibts zum Glück mit diversen Eigenkreationen z.B. in Anno1404, der Source-Engine, Renderware, Lithtech etc. zum Glück noch einiges mehr an Auswahl als "Klarlack-Unreal" und Gamebryo.
 
Zuletzt bearbeitet:
Zurück
Oben