1. Foren
  2. Kommentare
  3. Software-Entwicklung
  4. Alle Kommentare zum Artikel
  5. › Unlimited Detail…

Ist fast das gleiche wie Raytracing

Für Konsolen-Talk gibt es natürlich auch einen Raum ohne nerviges Gedöns oder Flamewar im Freiraum!
  1. Thema

Neues Thema Ansicht wechseln


  1. Ist fast das gleiche wie Raytracing

    Autor: glmd 12.08.11 - 02:06

    Jetzt fallt nicht gleich alle in Ohnmacht, sondern denkt einfach mal nach: die Idee ist wirklich nicht neu und die einfachste Grafik macht immer das gleiche: aus einer Vielzahl von möglichen Grafikpunkten genau die auf dem Schirm malen, die auch gesehen werden. Und das ist überall das Gleiche! Seine Idee mit den "Atomen" ist natürlich auch nicht neu und er würde sie ja auch als "Voxel" bezeichnen, den letztendlich ist es auch nur eine Art von Voxel Engine. Und letztenendes hat auch diese Engine eine Art Level of detail, denn der Suchalgorithmus muss natürlich entscheiden, welche der Atome er nun zusammenfasst um auf einem Bildschirmpixel angezeigt zu werden (beim herauszoomen); zwar gibt es keine groben Modellwechsel, aber letztenendes müssen zwei benachbarte Atome mit unterschiedlicher Farbe beim Herauszoomen auch zusammengefasst werden.

    Das Neue dabei ist im Grunde erstmal ein Auswahlalgorithmus der darzustellenden Farbpunkte ("Atomsuche"), der recht schnell zu sein scheint. Aber das ist zum jetzigen Zeitpunkt ziemliche Augenwischerei. Denn es fehlen noch sehr viele grafische Effekte, wie sie zu hunderten in den letzten Jahren bei den klassischen Polygonengines Einzug gehalten haben (Schatten, Glimmen, Halos, Glanz, Spiegeln, etc.). Diese ganzen Effekte werden wesentlich mehr CPU/GPU Power benötigen, da hier nicht einfach eine fixe Szene durchsucht werden kann, sondern je nach Situation jedes "Atom" eine unterschiedliche Farbe haben kann. Und da sind wir beim Raytracing: es hat die gleiche Idee (stelle nur die Punkte auf dem Schirm dar, die auch sichtbar sind), aber sucht sich nicht nur den Punkt mit der Farbe aus einer Datenwolke sondern betreibt hohen Aufwand um den Punkt als Lichtstrahl überall reflektieren zu lassen. Das ist natürlich je nach Anzahl der Reflexionen wesentlich aufwendiger und teurer, aber dafür sind alle Effkte schon inklusive (d.h. eine Flamme erzeugt überall die erwarteten Schatten, Lichtpunkte, Farbverfälschungen und Reflexionen). Und genau diese wichtigen Eigenschaften fehlen noch bei der Unlimited Detail Engine.

    Zwar sieht man alte Demos mit einfachen Animationen, aber auch das wird alles zusätzliche Resourcen fressen. Gerade collision detection wird bei solch detailierten "atomgenauen" Umgebungen deutlich teurer als die einfachen Polygon bounding boxes. Ganz zu schweigen von den physikalischen Eigenschaften bei den Animationen.

    Also momentan sieht es auf den ersten Blick sehr beeindruckend aus. Aber man darf sich nicht davon blenden lassen und mal schauen, was denn wirklich gezeigt wird. Eine feststejende 3D Szene ohne Lichteffekte ist doch wirklich nicht aufwendig zu realisieren mit der sehr bekannten point cloud data. Er ist die Visualisierung halt erstmal logsich angegangen um durch eine intelligente Suche die Darstellung erheblich zu beschleunigen. Nach dem ersten großen "Ah" und "Oh" müßen die Jungs jetzt erstmal zeigen, ob sie mit der Technik wirklich deutlich schneller sind, wenn sie auf das aktuelle grafische Effektniveau von heutigen Topspielszenen kommen. Ganz zu schweigen von "unlimited" ...

    Meine Einschätzung ist, dass das Endprodukt wesentlich weniger beindrucken wird, als diese ersten Demos von fixen Szenen ohne Beleuchtungseffekte und Animationen. Bis dahin dürften die Multicore-CPUs und GPUs schon genug Leistung für umwerfende Raytracing-Spiele haben. :-)

  2. Re: Ist fast das gleiche wie Raytracing

    Autor: niabot 12.08.11 - 02:16

    Ich gehe einfach mal davon aus das es sich hierbei um Voxel mit LOD und Instancing handelt. Dies ist am ehesten mit Raytracing und Raytrees vergleichbar und auch durchaus in der Form umsetzbar wie die Demos die bisher gezeigt wurden.

    Der erste "Raytree" enthält die Blöcke der Welt. Jeder dieser Blöcke kann wieder Raytrees enthalten, die aber rotiert sein können. Genauso als wenn man die Kamera im oberstern "Raytree" verschiebt, was den nicht mal juckt. Das Problem an der Vorgehensweise: Kein Raytree darf seinen Parent-Raytree verlassen oder auf denn Umrandung (Bounding Box) sitzen. Ist ein Raytree kleiner als 1 Pixel braucht er nicht mehr ausgewertet werden. Man kann damit ebenso auch viel verdeckte "Geometrie" weglassen.

    Das Problem ist einfach die Datenmenge die im Speicher gehalten werden muss. Hier sehe ich nur mit Instancing eine Chance, was ja auch in allen Demos bisher demonstriert wurde. ;-)

  3. Re: Ist fast das gleiche wie Raytracing

    Autor: LH 12.08.11 - 15:31

    niabot schrieb:
    --------------------------------------------------------------------------------
    > Ich gehe einfach mal davon aus das es sich hierbei um Voxel mit LOD und
    > Instancing handelt. Dies ist am ehesten mit Raytracing und Raytrees
    > vergleichbar und auch durchaus in der Form umsetzbar wie die Demos die
    > bisher gezeigt wurden.
    >
    > Der erste "Raytree" enthält die Blöcke der Welt. Jeder dieser Blöcke kann
    > wieder Raytrees enthalten, die aber rotiert sein können. Genauso als wenn
    > man die Kamera im oberstern "Raytree" verschiebt, was den nicht mal juckt.
    > Das Problem an der Vorgehensweise: Kein Raytree darf seinen Parent-Raytree
    > verlassen oder auf denn Umrandung (Bounding Box) sitzen. Ist ein Raytree
    > kleiner als 1 Pixel braucht er nicht mehr ausgewertet werden. Man kann
    > damit ebenso auch viel verdeckte "Geometrie" weglassen.
    >
    > Das Problem ist einfach die Datenmenge die im Speicher gehalten werden
    > muss. Hier sehe ich nur mit Instancing eine Chance, was ja auch in allen
    > Demos bisher demonstriert wurde. ;-)

    Sicherlich wird die Technik bereits bekanntes beinhalten, es ist fast unmöglich etwas völlig neues zu entwicklen. Jedoch: Die gezeigte Grafik hat bisher, auch mit den bekannten Techniken, niemand in Echtzeit für diese Datenmenge umgesetzt bekommen. Schon gar nicht auf einem Laptop.
    Selbst wenn es nur eine Optimierung bekannter Techniken wäre, so wäre dies doch immer noch ein großer Erfolg.

    Stimmen die Aussagen jedoch, und die alten gezeigten Animationen stammen auf der selben Engine, dann muss er es anders umgesetzt haben.

    Gegen LOD spricht nebenher auch die Stuffenlosigkeit des Ansatzes. Auf dem Video wird es demonstriert, es kann so viele Varianten nicht für so viele Modelle im Speicher halten. Bedenkt wie detailiert dieser Elefant alleine ist.

  4. Re: Ist fast das gleiche wie Raytracing

    Autor: niabot 12.08.11 - 15:56

    > Sicherlich wird die Technik bereits bekanntes beinhalten, es ist fast
    > unmöglich etwas völlig neues zu entwicklen. Jedoch: Die gezeigte Grafik hat
    > bisher, auch mit den bekannten Techniken, niemand in Echtzeit für diese
    > Datenmenge umgesetzt bekommen. Schon gar nicht auf einem Laptop.
    > Selbst wenn es nur eine Optimierung bekannter Techniken wäre, so wäre dies
    > doch immer noch ein großer Erfolg.

    Ich gehe eher nicht davon aus das es sich um große Datenmengen handelt. Es sind stets wiederkehrende Elemente die sich gut ineinander verschachteln lassen. Dadurch braucht man vergleichsweise wenig RAM als würde man alles separat betrachten und abspeichern. Genau das wäre aber das Ziel von Interesse. Welten die nicht aus sich wiederholenden Kacheln/Elementen bestehen und dennoch effektiv im RAM gehalten, gerendert und verändert werden können.

    > Gegen LOD spricht nebenher auch die Stuffenlosigkeit des Ansatzes. Auf dem
    > Video wird es demonstriert, es kann so viele Varianten nicht für so viele
    > Modelle im Speicher halten. Bedenkt wie detailiert dieser Elefant alleine
    > ist.

    Das spricht nicht gegen LOD. LOD bei Objekten in derzeitigen Spielen basiert auf unterschiedlichen Modellen. Hier wird LOD einfach wesentlich später aktiviert. D.h. es greift erst wenn acht Cubes so klein sind wie ein Pixel. Dadurch sieht man es nicht, obwohl es dennoch da ist. Ein genereller Vorteil von Voxelgrafik.

    Problematisch ist aber die Struktur dahinter.
    1. Braucht sie ohne Instancing wahnsinnig viel RAM (vergleichbar mit den Megatextures von Rage, die auf dynamisches Nachladen optimiert sind (Quadtree)). Ob das Problem gelöst wurde geben die Demos nicht her, da es keine sich nicht wiederholenden Elemente zu sehen gibt. (Zweifel)
    2. Ein Aktualisieren einer solchen Struktur, bzw. deren Aufbau dauert sehr lange und es ist ebenso unheimlich rechenintensiv sie zu aktualisieren. Davon ist in den Demos nichts zu sehen. (Zweifel)
    3. Dynamische Lichtquellen (lokale, z.B. ein Feuer auf einer Wiese, verdeckt durch einen Baum) fehlen ebenso. Diese wären auch nur durch Raytracing ähnliche Ansätze berechenbar. Licht aus unendlicher Distanz hingegen bei Voxeln kein Problem. Von ersterem war nichts zu sehen. (Zweifel)
    4. Dynamische Schatten gibt es auch nicht zu sehen. Es stellt sich das selbe Problem wie bei den Lichtquellen. (Zweifel)

    Insgesamt machen daher die Demos den Eindruck einer hochgezüchteten Datenstruktur genau für den Zweck der gezeigt wurde und der in der Tat die Performance liefern könnte. D.h. das die Demos echt sind würde ich nicht einmal bezweifeln.

    Was aber offen bleibt: Lässt sich auch nur einer der oben genannten, stets in aktuellen Spielen verwendete Effekt noch hochperformant umsetzen? Die Fragen blieben unbeantwortet und es gibt keinerlei Beweis für diesbezügliche Aussagen. Für eine Gameengine wären diese aber essentiell. Sonst kannst du die Spiele in Zukunft ohne jegliche Bewegung (Animation), abwechselungsarm (Instancing/RAM) und ohne dynamische Effekte (Lichtquellen) genießen.

    Ich halte fest: Ohne das diese Dinge gezeigt werden, halte ich die Engine für unbrauchbar, bis ich eines besseren belehrt werde, was ich aber noch nicht wurde.

  5. Re: Ist fast das gleiche wie Raytracing

    Autor: grmpf 12.08.11 - 18:38

    Und wie schon mal von mir gesagt:

    Du denkst zu sehr "in the box".

    "Es kann nichts anderes sein, als Du gelernt hast, denn die anderen Sachen funktionieren nicht - hat der Prof gesagt..."

  6. Re: Ist fast das gleiche wie Raytracing

    Autor: niabot 12.08.11 - 18:50

    Ich denke nicht in einer Box. Ich sehe da Boxen die in der Welt verteilt wurden und zwar in jeder der Demos. Ich würde gerne glauben das so etwas möglich ist. Aber unter den gegebenen Umständen nehme ich ihm da nichts ab, da es sich eben nicht von dem aktuellen Stand durch irgendein Alleinstellungsmerkmal unterscheidet.

    Sparse-Oktrees liefern genau das was er dort demonstrierte. Es war eben aber auch nichts zu sehen was diese nicht können könnten. Deshalb ist alles was dort behauptet wird jeden Beweis schuldig. Da könnte auch ein UFO-Forscher zu dir kommen und sagen das er grüne Männchen beim Sonnen gesehen hat. Leider konnte er davon kein Foto machen, sondern nur von dem grünlich gefärbten Handtuch auf seiner Liege.

  7. Re: Ist fast das gleiche wie Raytracing

    Autor: stuepfnick 16.05.12 - 01:01

    glmd schrieb:
    --------------------------------------------------------------------------------
    > Und letztenendes hat auch diese Engine eine Art Level of
    > detail, denn der Suchalgorithmus muss natürlich entscheiden, welche der
    > Atome er nun zusammenfasst um auf einem Bildschirmpixel angezeigt zu werden
    > (beim herauszoomen); zwar gibt es keine groben Modellwechsel, aber
    > letztenendes müssen zwei benachbarte Atome mit unterschiedlicher Farbe beim
    > Herauszoomen auch zusammengefasst werden.

    Also ich denke mal, hier wird zu kompliziert gedacht: Ich denke nicht, dass die Atome beim herauszoomen zusammengefasst werden, sondern einfach weggelassen werden. Damit braucht man keine verschiedenen Levels of Detail speichern oder in Echtzeit berechnen. Und ich habe das mal bei 2D-Fotos ausprobiert: In den meisten Fällen sieht es nur unwesentlich schlechter aus, wenn man jetzt nur 1 von 4 (oder mehr) Bildpunkten übrig lässt, als wie wenn man den Durschnitt berechnet. Ausnahmen sind Text im Bild oder dünne Linien (z.B. Seile/Schnüre) oder so, da sieht man den Unterschied stärker.
    Aber ich denke mal für die 3D-Engine, die eher fotorealistisch aussehen soll, ist das eher nicht so wichtig, wie die Speed. Und es ist einfach um ein vielfaches schneller, von 4 Punkten nur einen übrig zu lassen, anstatt einen Durschnitt zu errechnen oder vorher zu speichern. Natürlich müssen die Punkte die übrig bleiben immer die gleichen sein, sonst flackert und flimmert das ganze wie verrückt, was es nicht tut. Aber so, wie man bei einem 2D Bild z.B. immer die geraden Punkte weglassen kann, kann man auch in der 3D-Welt immer die gleichen Atome weglassen. (immer der gleiche von 8) also in gewisser Weise schon Octrees, aber mit keinen unterschiedlichen Detaillevels.
    Ich denke, dass ist eines der Geheimnisse. Er sagt ja auch immer, dass genau 1 Atom pro Pixel dargestellt werden, alle anderen werden ignoriert. Somit sollte das ganze sehr schnell gehen und nur minimal schlechter aussehen, als wie wenn man die Atome zusammenfasst.

    just my 2 cents



    1 mal bearbeitet, zuletzt am 16.05.12 01:05 durch stuepfnick.

  8. Re: Ist fast das gleiche wie Raytracing

    Autor: stuepfnick 16.05.12 - 01:15

    niabot schrieb:
    --------------------------------------------------------------------------------
    > Problematisch ist aber die Struktur dahinter.
    > 1. Braucht sie ohne Instancing wahnsinnig viel RAM (vergleichbar mit den
    > Megatextures von Rage, die auf dynamisches Nachladen optimiert sind
    > (Quadtree)). Ob das Problem gelöst wurde geben die Demos nicht her, da es
    > keine sich nicht wiederholenden Elemente zu sehen gibt. (Zweifel)

    Klar wird man einen gewissen Grad an Instancing verwenden müssen, um nicht unendlich viel RAM zu brauchen. Der Grund im Demo für die häufige Wiederholung ist aber denke ich nicht der Grund, sondern einfach die Tatsache, dass das Demo in nur 3 Wochen zusammengebastelt wurde. Da er keine verschiedenen LODs speichert (sondern aus weiterer Entfernung einfach Atome weglässt) ist da aber vermutlich noch viel Platz nach oben.

    > 2. Ein Aktualisieren einer solchen Struktur, bzw. deren Aufbau dauert sehr
    > lange und es ist ebenso unheimlich rechenintensiv sie zu aktualisieren.
    > Davon ist in den Demos nichts zu sehen. (Zweifel)

    Denke auch das sollte kein großes Problem sein, da es eben keine verschiedenen Detail Levels gibt.

    > 3. Dynamische Lichtquellen (lokale, z.B. ein Feuer auf einer Wiese,
    > verdeckt durch einen Baum) fehlen ebenso. Diese wären auch nur durch
    > Raytracing ähnliche Ansätze berechenbar. Licht aus unendlicher Distanz
    > hingegen bei Voxeln kein Problem. Von ersterem war nichts zu sehen.
    > (Zweifel)

    Das wird man erst sehen, ob die das hinbekommen. Aber immerhin läuft das ganze aktuell nur auf einem CPU-Core, also könnten sich weitere Kerne um andere Dinge, wie eben Animation, Beleuchtung, etc. kümmern. Damit braucht es dann auch mehr Rechenleistung, war aber bei den Polygonen auch nicht anders.

    > 4. Dynamische Schatten gibt es auch nicht zu sehen. Es stellt sich das
    > selbe Problem wie bei den Lichtquellen. (Zweifel)

    Schatten sind ja schon drin. Das sieht man ja alleine schon daran, dass dieser mal kurz flackert (also kurz verschwindet) Also ich bin auf jeden Fall sehr gespannt. In der jetzigen Phase läuft es mit noch wenig RAM-Verbrauch auf nur einem Core.
    Ich denke da bleiben bei einem aktuellen PC noch genügend Ressourcen für andere Dinge, die derzeit noch fehlen, bzw. bis die Engine fertig ist, wohl auch die neuen Konsolen. Ich bin jedenfalls sehr gespannt. Auch eine Kombination aus Atomen und Polygonen ist nicht auszuschließen.
    Ebenso könnte man auch Bounding Boxes für Atom-Modelle hernehmen, oder einfache Meshes für die Kollisions-Detektion.

  1. Thema

Neues Thema Ansicht wechseln


Um zu kommentieren, loggen Sie sich bitte ein oder registrieren Sie sich. Sie müssen ausserdem in Ihrem Account-Profil unter Forum einen Nutzernamen vergeben haben. Zum Login

Stellenmarkt
  1. astora GmbH, Kassel
  2. NOVENTI HealthCare GmbH, München, Aschheim (Home-Office möglich)
  3. über duerenhoff GmbH, Raum München
  4. Concentrix Germany, Duisburg, Düsseldorf, Wuppertal

Golem pur
  • Golem.de ohne Werbung nutzen

Anzeige
Hardware-Angebote
  1. (u. a. Ryzen 7 5800X für 469€)
  2. (u. a. PS5 + HD Kamera für 549,99€)
  3. (reduzierte Überstände, Restposten & Co.)


Haben wir etwas übersehen?

E-Mail an news@golem.de


Programm für IT-Jobeinstieg: Hoffen auf den Klebeeffekt
Programm für IT-Jobeinstieg
Hoffen auf den Klebeeffekt

Aktuell ist der Jobeinstieg für junge Ingenieure und Informatiker schwer. Um ihnen zu helfen, hat das Land Baden-Württemberg eine interessante Idee: Es macht sich selbst zur Zeitarbeitsfirma.
Ein Bericht von Peter Ilg

  1. Arbeitszeit Das Sechs-Stunden-Experiment bei Sipgate
  2. Neuorientierung im IT-Job Endlich mal machen!
  3. IT-Unternehmen Die richtige Software für ein Projekt finden

Weclapp-CTO Ertan Özdil: Wir dürfen nicht in Schönheit und Perfektion untergehen!
Weclapp-CTO Ertan Özdil
"Wir dürfen nicht in Schönheit und Perfektion untergehen!"

Der CTO von Weclapp träumt von smarter Software, die menschliches Eingreifen in der nächsten ERP-Generation reduziert. Deutschen Perfektionismus hält Ertan Özdil aber für gefährlich.
Ein Interview von Maja Hoock


    Fiat 500 als E-Auto im Test: Kleinstwagen mit großem Potenzial
    Fiat 500 als E-Auto im Test
    Kleinstwagen mit großem Potenzial

    Fiat hat einen neuen 500er entwickelt. Der Kleine fährt elektrisch - und zwar richtig gut.
    Ein Test von Peter Ilg

    1. Vierradlenkung Elektrischer GMC Hummer SUV fährt im Krabbengang seitwärts
    2. MG Cyberster MG B Roadster mit Lasergürtel und Union Jack
    3. Elektroauto E-Auto-Prämie übersteigt in 2021 schon Vorjahressumme