geoclipmapping



  • Hi! Ich bekomme immer öfter zu hören das Geomipmaping mitlerweile schon veraltet ist, und geoclipmapping nun sehr aktuell ist. Ich habe lange Gegoogelt, und auch vieles dazu gefunden, jedoch sehe ich keinen unterschied zwischen Geomipmapping und Geoclipmapping! Könnte mich vieleicht jemand aufklären wo der unterschied zwischen beiden liegt?



  • Das Paper vom Hoppe stellt das doch ganz gut dar.



  • Ja, den Paper kenne ich, aber ich kann den unterschied nicht feststellen, bzw wie das eigentlich funktioniert. (Ich muss dazu sagen das mein Englisch nicht das beste ist). So wie ich das ferstehe ist das Terrain in einzelne Patches unterteilt und jeder Patch hat einen eigene Vertex/Index Buffer. Und je nachdem wie nah man an dem Patch dran ist, wird es detalierter dargestellt.



  • Code-Walker schrieb:

    (Ich muss dazu sagen das mein Englisch nicht das beste ist).

    Dann solltest du erstmal daran arbeiten, denn ohne wirst du generell nicht sehr weit kommen.

    Code-Walker schrieb:

    So wie ich das ferstehe

    Offenbar hast du eher ein generelles Problem mit Sprachen;)

    Code-Walker schrieb:

    ist das Terrain in einzelne Patches unterteilt und jeder Patch hat einen eigene Vertex/Index Buffer. Und je nachdem wie nah man an dem Patch dran ist, wird es detalierter dargestellt.

    Wie du die VB/IB anordnest bleibt dir überlassen. Beim GeoClipMapping renderst du einfach "verschachtelte Rechtecke", die um die Kamera zentriert sind mit einer hohen Vertexauflösung. Wenn sich die Kamera bewegt, werden entsprechnd die VB/IB geupdated.
    Beim GeoMipMapping unterteilst du das Terrain in Patches, wobei du in einem Preprocessing für jeden Patch N GeoMipMaps berechnest und dann zur Laufzeit in Abhängigkeit von einem Geometriefehler Sigma und der Kameraentfernung die maximal mögliche GeoMipMap auswählst.



  • Ja, ich habe generell ein Sprach Problem, versuche mich aber zu bessern. Ich habe eine ganz gute Diplomarbeit gefunden in der genau auf alle LOD Algorithmen eingegangen wird:

    http://vcg.informatik.uni-rostock.de/assets/publications/theses_mas/DA_Buchien2007.pdf

    Ich habe mir die verschiedenen Algorithmen angeschaut und habe erfahren das der Hauptunterschied darin liegt das der Detailgrad immer zentriert zur Kameraposition steht. Jedoch frage ich mich wie ich es hin bekomme, dass der Detailgrad sich verschiebt, ich habe keine Ahnung wie ich das effizient ealisieren sollte.



  • Code-Walker schrieb:

    Jedoch frage ich mich wie ich es hin bekomme, dass der Detailgrad sich verschiebt, ich habe keine Ahnung wie ich das effizient ealisieren sollte.

    Mal ne generelle Frage: Bist du dir sicher, dass dein jetziger Wissensstand bereits ausreicht um sowas zu implementieren?
    Weißt du sicher, dass du einen LOD Algo brauchst oder ist es reines Interesse?



  • Ih benötige definitiv einen LOD Algo, da ich schon gerne einmal ein Outdoor Spiel machen würde, dabei strebe ich einen kleinen Egoshooter an. Die sichtweite sollte etwa 1km betragen, also im prinziep 2000x2000 bis 3000x3000 quadrate. Ich bezweifle das Bruteforce Terrains dafür geignet sind.

    Ich bin gerade am überlegen ob ich icht auf den ROAM Algo zurückgreifen sollte, da ich dadurch die größere Popping Effecte vermeide.



  • Code-Walker schrieb:

    Die sichtweite sollte etwa 1km betragen, also im prinziep 2000x2000 bis 3000x3000 quadrate.

    Bei 1km² wäre das ein Quad pro 0.5 bzw 0.3m, das ist schon recht hoch. Implementier es doch erstmal Bruteforce, optimieren kannst du dann immer noch. Und bis Größen von 512x512 ist Bruteforce absolut ausreichend. Selbst wenn es dir nicht ausreicht, kannst du es immernoch erstmal mit Culling Techniken probieren, bevor du LOD verwendest.

    Code-Walker schrieb:

    Ich bin gerade am überlegen ob ich icht auf den ROAM Algo zurückgreifen sollte, da ich dadurch die größere Popping Effecte vermeide.

    ROAM würde ich dir nicht mehr empfehlen. Er ist für heutige GPUs einfach unpassend und benötigt zu viel CPU Rechenzeit. Und Popping Artefakte kannst du auch bei den anderen LOD Algos mit Vertexmorphing bekämpfen.



  • Das hat zwar nichts mit Terrain zu tun aber um das grundlegende Konzept von LOD ueberhaupt zu verstehen ist der Artikel von Stan Melax ganz gut.



  • Warum sollte ich denn das Grundlegende Konzept von LOD nicht verstanden haben? Wozu soll denn LOD sonst gut sein, außer die Poligone Anzahl zu veringern und somit eine schnellere Frame Rate zu ermöglichen?

    //EDIT

    Im moment benutze ich Geo-Mipmapping und versuchte bereits Geomorphing ein zu bauen. Wie geomorphing grundsätzlich funktioniert verstehe ich, jedoch kriege ich es nicht auf die reihe das ganze um zu setzen ^^



  • Wieso schreibst du, dass du einen LOD Algo brauchst weil du gerne mal einen Outdoor Renderer schreiben WÜRDEST, wenn du doch (angeblich) bereits GeoMipMappin implementiert hast? 😕



  • Nur weil man einen LOD Algo eingebaut hat heißt es noch lange nicht das man ein fertiges spiel hat! Ich würde gerne einen anderen Algo einbauen, da Geomipmapping zwar sehr schnell ist, jedoch nicht sp schön aussieht. Mit Geomorphing kann man das Popping zwar beheben, aber das ersteinmal hin zu bekommen ist etwas anderes. Geomipmapping ist wie ich finde die einfachste LOD variante, darum war das auch die erste die ich eigeaut habe, aber mich interessieren halt auch die anderen varianten.

    Ich habe nie gesagt das ich ein Outdoor renderer schreiben will, sondern ein outdoor spiel 🙂



  • Code-Walker schrieb:

    Ich würde gerne einen anderen Algo einbauen, da Geomipmapping zwar sehr schnell ist, jedoch nicht sp schön aussieht.

    Dann hast du bei der Implementierung was falsch gemacht.

    Code-Walker schrieb:

    Mit Geomorphing kann man das Popping zwar beheben, aber das ersteinmal hin zu bekommen ist etwas anderes.

    Das Popping Problem hat nichts mit GeoMipMapping zu tun. Das ist ein generelles Problem, dass bei ALLEN LOD Algos hast (siehe auch die Tabelle in dem von dir verlinkten Paper).

    Code-Walker schrieb:

    Ich habe nie gesagt das ich ein Outdoor renderer schreiben will, sondern ein outdoor spiel 🙂

    Achso, und dein Outdoor Spiel braucht also keinen Outdoor Renderer. Wird wohl ein Textadventure 😉



  • Warum sollte ich denn das Grundlegende Konzept von LOD nicht verstanden haben?

    Ach das war nur so'n Gefuehl basierend auf Intuition und Erfahrung.

    Wozu soll denn LOD sonst gut sein, außer die Poligone Anzahl zu veringern und somit eine schnellere Frame Rate zu ermöglichen?

    Mit "Konzept" meinte ich die Grundlagen algorithmischer Polygonreduktion im Allgemeinen und die Interpolation zwischen Reduktionsstufen im Speziellen.
    Wenn Du das schon verinnerlicht hast, ignoriere einfach meinen Hinweis.



  • Ok, kein Problem! Ich habe mich nun entshieden mit dem Terrai rendering etwas kleiner an zu fangen, im prinziep mit allem etwas kleiner. Mein erstes "richtiges" spiel wird wohl ein strategie spiel, vorteile daran sind:

    - Kein LOD, nur sichtbarkeitstests.
    - Begrenztes Terrain, ermöglicht die benutzung von einem VertexBuffer
    - Modelle wechseln azihsachen nicht
    - himmel muss nicht unbedingt implementiert werden.

    Ich denke damit sollt ich fürs erste zurecht kommen 🙂


Anmelden zum Antworten