Quake3: Raytraced



  • Sgt. Nukem schrieb:

    Ich weiß gar nicht was ihr an RayTracing so findet...

    Raygetracte Schatten sehen doch scheiße aus - und sind alles andere als realistisch!!
    Hyper-künstlich trifft es wohl eher... 🙄

    also die schatten dort :
    http://www.povcomp.com/hof/Boreal_big.html
    finde ich sehen realtistisch aus.
    🤡



  • omg 😮



  • billiger Fake 🤡



  • Sgt. Nukem schrieb:

    Raygetracte Schatten sehen doch scheiße aus - und sind alles andere als realistisch!!
    Hyper-künstlich trifft es wohl eher... 🙄

    ah ja, da die schatten im ergebnis wohl 1:1 so aussehen dürften wie stencil shadows dürfen wir jetzt also offiziell auch die doom 3 schatten als scheiße und hyper-künstlich bezeichnen?

    Auch weiterhin werden die Spielprogrammierer sich intensiv damit beschäftigen müssen, wie sie die 3D-Karte mit möglichst wenig Daten / Frame füttern.

    mööp... wozu? raytracing nimmt nicht stur jedes einzelne übergeben dreieck und prügelt es ohne sinn und verstand durch die pipeline. wenn es dir spaß macht und in den speicher paßt (und 512mb sind wohl eh bald normal bei grafikkarten) kannst du den ganzen level einmal abspeichern und fertig. animierte objekte werden dann wenn möglich direkt im grafikspeicher aktualisiert (und bei bedarf neu im baum untergebracht) und es geht raytracing am ar... vorbei, ob deine 100 große oder 10 millionen winzige dreiecke hat. jegliches culling hat sich erledigt (das passiert beim strahl schießen mehr oder weniger sowieso) und lod ist prinzipiell auch überflüssig (eher hinderlich, weil speicherverschwendung).

    das entscheidende ist einfach nur, daß die daten möglichst effizient strukturiert werden, aber bsp-/kd-/quad-/oct-/sonstwas-trees sind letztlich so oder so wichtig, um irgendwas schnell machen zu können. ich hätte für meinen teil nichts dagegen, wenn ich schatten, spiegelungen und transparenz ohne jeden extra aufwand gratis bekomme, ohne an stencil shadows zu verzweifeln, aufgepixelte shadowmaps wegzutricksen, die szene 5x zu rendern oder festzustellen, daß x-tausend blätter-billboards nach tiefe zu sortieren keinen spaß macht. bei mir kommen schatten und spiegelungen frühestens irgendwo rein, wenn jemand eine methode erfindet, die sich nicht wie ein grauenhafter hack und/oder workaround anfühlt und für jeden vorteil zwei nachteile mitbringt.



  • @Blue-Tiger

    Okay, dann sind wir uns ja einig, oder? Raytracing ist ein Feature dass einen
    Teil einer Gesamt-Engine darstellt. Ich hatte nur das Gefühl, dass einige
    die Technik als Lösung _aller_ Probleme betrachtet haben.

    Und wir dürfen nicht vergessen. Raytracing ist die Brute Force Lösung und
    keinesfalls eine neue Erfindung. Nur vor was soll ich mehr Respekt haben: Vor
    einem, der einen 128 Key mathematisches geknackt hat (vgl. UE 3) oder einem
    der durch probieren und viel Glück den richtigen gefunden hat (vgl. Raytracing
    Verfahren).

    Die herkömmlichen Verfahren funktionieren und das sogar sehr gut. Aber ich sehe
    ein, dass wir an Grenzen kommen (s. Stromaufnahme der neusten GraKa-Generation)
    Aber ist da ein Verfahren die Lösung, dass noch mehr Leistung verbraucht? Klar
    es wird später auf spezieller Hardware mit geringerem Takt laufen können und
    wohl auch stark parallelisiert laufen können - aber deshalb gleich Verfahren
    ganz ausschließen, die das ganze vielleicht geschickter angehen?

    Noch was anderes: Hier wird häufig davon geredet, dass es egal ist, wie groß
    die Szene ist. Aber jede Ablenkung des Licht-Strahls bedeutet doch neue
    Berechnungen, oder? Außerdem löst jede Berührung des Lichts mit Oberflächen
    doch auch neue Strahlen aus, die in difffuse Richtungen verlaufen, oder nicht?



  • Es geht hier um eine neue Technik im 3D-Bereich

    so neu is raytracing auch wieder nicht...

    imho sollte das höchste ziel eines pc spieles maximaler spielspaß und nicht die möglichst realistische simulation der wirklichkeit sein ( die sich imho sowieso nicht in formeln packen lässt ).

    ich hab nix gegen gute grafik, schöne schatten und alles was dazu gehört.
    aber was bringt mir das wenn das game scheisse is.
    die meisten kommerzielen spiele die zur zeit rauskommen sind eher tech demos als spiele...



  • EnERgYzEr schrieb:

    Noch was anderes: Hier wird häufig davon geredet, dass es egal ist, wie groß die Szene ist. Aber jede Ablenkung des Licht-Strahls bedeutet doch neue Berechnungen, oder? Außerdem löst jede Berührung des Lichts mit Oberflächen
    doch auch neue Strahlen aus, die in difffuse Richtungen verlaufen, oder nicht?

    ja, aber nur jemand, der den schuß nicht gehört hat würde auf die idee kommen bis zur unendlichkeit neue strahlen zu erzeugen und schon mit dem ersten pixel in hundert jahren nicht fertig zu werden. die mit abstand billigste und streßfreiste methode sowas an unterschiedlich starke hardware anzupassen ist einfach das limit anders zu setzen. besonders schwache kisten stoppen eben beim ersten schnitt und prüfen nur einmal direkt in richtung lichtquellen (und das ergebnis dürfte dann aussehen wie im moment, mit stencil shadows, ohne spiegelungen) und richtig dicke kisten verfolgen die strahlen dann halt über 10 schritte.

    das hat aber null mit der größe der szene zu tun, schon in einem stinknormalen würfel (raum) könnte man die ewigkeit damit verbringen einen strahl zu verfolgen. aber spätestens eine komplett "matte" oberfläche braucht keine spiegelung verfolgen, keine refraktionen und bei direktem kontakt zum licht auch nicht über x schritte sehen, ob licht ankommt. für letzteres gibts sowieso weit schönere lösungen, aber global illumination z.b. durch photon mapping in echtzeit wird dann die zweite hürde, an der soweit ich weiß auch schon gewerkelt wird: http://graphics.cs.uni-sb.de/Caustics/ versuch DAS mit rasterisieren zu faken).

    klar, ue3 sieht toll aus, andere engines sehen toll aus, aber bei manchen möchte man eigentlich NIE wireframes sehen oder wissen, WIE die effekte erzeugt werden. das "überstrahlen" bei besonders hellem licht z.b.. wie soll man sich das vorstellen? das fertige bild nochmal in 2d "nachretuschieren" und als textur auf ein billboard packen? wie toll funktionieren stencil shadows bei wirklich komplexen modellen? (tipp: bescheiden), wieviel speicher/leistung fressen shadowmaps bei vielen lichtquellen? (tipp: man will nicht viele).

    für mich zählt eben nicht nur, wie das bild am ende aussieht, sondern ob der weg dorthin elegant und sauber oder eine riesige ansammlung von hacks und tricks war, die mir unter umständen auch noch links und rechts auseinanderfallen können (jeder, der die teils häßlichen schatten in splinter cell 2 als bug bezeichnet hat darf sich freuen... kein bug, einfach das übliche problem bei shadow mapping).

    nebenbei, wo ist raytracing bitte mehr oder weniger brute force als unzählige -zu einem großen teil am ende nichtmal sichtbare- dreiecke durch eine pipeline zu prügeln oder zwecks spiegelungen oder schatten teile der szene x-mal zu rendern? ich glaube da ist jemand zu sehr von 3d-hardware verwöhnt, die auf die nötigen berechnungen derart optimiert ist, daß eine cpu nichtmal im ansatz auf die gleiche geschwindigkeit kommen könnte.

    als denkanstoß, für alle, die sagen "oh toll, welche kunststück auf 20 fetten amds". die gleiche geschwindigkeit scheint auch schon der saarcor prototyp mit krümeligen 30mhz zu schaffen. und jetzt stellen wir uns das ding auf aktuellem geföhn niveau vor, mit einem dutzend pipelines, über 500mhz takt und einer turbine als lüfter. fällt was auf?



  • dot schrieb:

    imho sollte das höchste ziel eines pc spieles maximaler spielspaß und nicht die möglichst realistische simulation der wirklichkeit sein

    Eben. Sag ich ja. Wer will schon ein realistisches Quake?

    Bye, TGGC (Der Held bei Dir!)



  • TGGC schrieb:

    dot schrieb:

    imho sollte das höchste ziel eines pc spieles maximaler spielspaß und nicht die möglichst realistische simulation der wirklichkeit sein

    Eben. Sag ich ja. Wer will schon ein realistisches Quake?

    die medien, damit sie weiter auf den pc spielern rumhacken können



  • ICH WILL VOXEL ZURÜCK!!! *patzigschimpf*

    🤡

    EnERgYzEr schrieb:

    Er hat mit einer Rechenanlage, die wir
    selbst in zehn Jahren nicht zu Hause haben werden, Quake mit Licht/Schatten
    gezeigt - Super.

    DAS wiederum glaube ich nicht. 10 Jahre ist weit übertrieben... 👎

    Blue-Tiger schrieb:

    Es geht hier um eine neue Technik im 3D-Bereich.

    *chr*

    Trienco schrieb:

    Sgt. Nukem schrieb:

    Raygetracte Schatten sehen doch scheiße aus - und sind alles andere als realistisch!!
    Hyper-künstlich trifft es wohl eher... 🙄

    ah ja, da die schatten im ergebnis wohl 1:1 so aussehen dürften wie stencil shadows dürfen wir jetzt also offiziell auch die doom 3 schatten als scheiße und hyper-künstlich bezeichnen?

    Allerdings. Die DooM ]|[ Schatten sind *natürlich* sau-künstlich!! So hart wird in der Realität kein Schatten geworfen!!
    Nur Doom 3 ist _jetzt_!! Und ihr redet von einer Technik, die "in frühestens 10 Jahren Einzug in den Consumer-Markt halten wird"...!
    Sorry, aber in "10 Jahren" erwarte ich schon deutlich mehr als so pümpels D3 Schatten... *SCNR* :p



  • imho würde mir solche "pümpels d3 schatten" reichen, wenn ich sie mit 5 sich bewegenden lichtquellen benutzen könnte,was mit d3 schatten dank shadow maps nicht wirklich funktioniert^^



  • otze schrieb:

    imho würde mir solche "pümpels d3 schatten" reichen, wenn ich sie mit 5 sich bewegenden lichtquellen benutzen könnte,was mit d3 schatten dank shadow maps nicht wirklich funktioniert^^

    ich war mir recht sicher, daß doom 3 stencil shadows benutzt und deswegen auch die häßlich kantigen lowpoly objekte benutzt (die shadow volumes erzeugen wäre sonst wohl kein wirklicher spaß mehr).

    nebenbei, schatten von punkt oder richtungslichtern SIND relativ hart. nur sollte man nicht auf die idee kommen und die schatten fast pechschwarz zu machen, DANN sieht der kontrast wirklich besch..eiden aus. ich kann an der wand z.b. recht scharf einzelne haare bzw. dünne strähnen am schatten sehen. und flächige lichter sind letztlich immer ein problem.



  • es werden hauptsächlich shadow maps verwendet, und maximal ein licht darf überhaupt stencil shadows werfen 😉



  • Trienco schrieb:

    besonders schwache kisten stoppen eben beim ersten schnitt und prüfen nur einmal direkt in richtung lichtquellen (und das ergebnis dürfte dann aussehen wie im moment, mit stencil shadows, ohne spiegelungen) und richtig dicke kisten verfolgen die strahlen dann halt über 10 schritte.

    Toll und wozu dann noch Raytracing, wenn ich die Strahlen bis Tiefe 1 verfolge und nur lokale Reflexionsmodelle wie ein Standard-Renderer habe? Das ist nicht der Sinn.

    Und ich finde es nicht so schlimm, Hacks und Tricks anzuwenden um am ende eine performante und gutaussehende Ausgabe zu erhalten. Das war doch schon immer so, dass, wenn man trickreich war und wusste, wo man mit welchem Trick was rausholen kann, man eben besser dran war. Falls sich Raytracing auf normalen Maschinen irgendwann in flüssig durchsetzt, wird man auch wieder Hacks und Tricks anwenden um auch den Scheiß noch performanter machen zu können.

    Und es ist doch nicht egal, wieviele Polygone die Szene hat. Dem Raytracer vielleicht, aber die vielen Polygone müssen bewegt werden, will man sowas prakatisch umsetzen.



  • Hm, interessante Diskussion. Es heißt doch eigentlich immer, dass Raytracing relativ einfach zu programmieren sei, und was ich hier gelesen habe, scheint dem nicht zu widersprechen. Dass es "sauberer" zu sein scheint, gefällt mir auch gut. Kennt jemand einen Link, wo gut und detailliert beschrieben ist, wie man sowas programmiert? Das müsste doch z.B. mit SDL als unterliegende API gehen?
    Nein, ich möchte kein tolles Spiel mit Echtzeitraytracing auf Terragenniveau machen, sondern vielleicht mal eine schattierte Kugel ohne OpenGL oder so anzeigen können (und ohne Rasterizer etc. schreiben zu müssen).
    Apropos Kugel: Wenn man die mathematisch definieren würde, bräuchte man doch gar keine Polygone mehr, oder?



  • Apropos Kugel: Wenn man die mathematisch definieren würde, bräuchte man doch gar keine Polygone mehr, oder?

    klar



  • Hier, hier auch ein bisschen, und auch hier (weiter unten) gibts Infos zur funktionsweise und zum Programmieren. Im Grunde reicht das aus, um einen auf die Beine zu stellen. Im Zweifelsfall, leg dir noch ein Dickes Mathebuch daneben 😃

    Ja, du kannst das mit den APIs wie DX, OGL, SDL aufs Bild bringen. Du schreibst halt einfach auf den Screen Array.

    Apropos Kugel: Wenn man die mathematisch definieren würde, bräuchte man doch gar keine Polygone mehr, oder?

    Also, ich habe gehört (gelesen) das das unter Umständen unvorteilhaft sein kann. Eine Kompetente Meinung kann ich dir aber hierzu nicht geben.



  • Wow, das ging ja schnell, danke 😃



  • @Trienco:

    Erst einmal danke für deinen Post. Der hat doch viele Unklarheiten bei mir
    beseitigt, da ich mich bis jetzt noch nicht wirklich intensiv mit dem Themen-
    bereich auseinandergesetzt habe.

    Eine Frage bleibt bei mir aber noch: Ist das überstrahlen mit Raytracing
    eigentlich direkt möglich? Oder muss nicht auch hier das fertige Bild
    retuschiert werden? Schließlich existiert das Überstrahlen im Real Life ja auch
    nicht, sondern wird nur in unsere Augen durch die große Heligkeit erzeugt.

    DAS wiederum glaube ich nicht. 10 Jahre ist weit übertrieben...

    @Sgt. Nukem: Wann glaubst du werden wir zu Hause die Leistung von 36 GHz
    stehen haben? Wie wir in den letzten drei Jahren gesehen haben, hat sich fast
    nichts mehr getan. Man versucht die Leistung/Hz zu erhöhen aber einen richtigen
    Durchbruch gab es hier auch noch nicht. Gleichzeitig werden die Hz der CPUs
    eher niedriger. Seit bestimmt einem Jahr hängen wir ca. bei der Leistung eines
    P4 3.5 GHz fest (von wem auch immer die CPUs sind. AMD, Intel,...).
    Intels Top-Desktop-CPU gibts für 300 EUR im Laden. Das sagt doch eigentlich
    schon alles, oder?
    Vielleicht wird dadurch ja dann wirklich der Umbruch zu Strom sparenden, leisen
    CPUs erfolgen. Man denke an diese VIA Epia Boards mit 1 GHz passiv gekühlt.

    Sorry, war jetzt ein bisschen OT, schließlich wurde ja bereits fest gestellt,
    dass man Raytracing auf spezialisierter Hardware mit sehr geringer Leistung
    laufen lassen kann.



  • Hi,
    Ja, so schnell wird keine großartigen CPUs geben, das ist schon richtig. Für nah bis mittelfristig kann man Raytracing komplett vergessen, IMHO.
    Aber Megahertz sind nicht der einzige Maßstab. 64 Bit, zum Beispiel, ist auch von Bedeutung. Auch die anderen CPU Erweiterungen (KA, gibts ne Menge) zählen noch. Deshalb kann auch ein niedriger getakteter AMD einen höheren Intel schlagen.


Anmelden zum Antworten