Unnötigen Boden nicht anzeigen



  • Hallo,

    ich habe ein Problem, welches etwas schwierig zu beschreiben ist.
    Also bei einem first person schooter gibt es ja eine Landschaft auf der man steht (allgemein der Boden).
    Nun ist der Boden ja für eine ziemlich große Fläche definiert. Der Boden sei in ganz viele kleine Kacheln eingeteilt, die jeweils mit einer Textur gezeichnet werden. Um nicht zuviel zu zeichnen, zeichnet man nur die Kacheln, deren Abstand kleiner als X von der Person ist.

    Nun möchte ich aber nur die Kacheln zeichnen, die auch gesehen werden können. Also z.B nicht die, die Hinter der Person sind.

    Nun kann man für jede Kachen, deren Abstand von der Person kleiner ist als x testen, ob dise hinter der Person ist.
    Die ist aber sehr viel rechenaufwand, da sie für jede kachel durchgeführt wird.

    Gibt es eine Möglichkeit nur die Kacheln zu berechnen, die gesehen werden ohne alle zu testen?

    Wenn ich genau entlang der Y achse ins positive gucke und bei (0.0) stehe, so kann ich ja schnell sagen dass ich nur kacheln sehe, deren y Werte größer als 0 sind.
    Gibt es irgendeine Rechnung die genauso schnell Kacheln ausschließt wenn ich nicht genau entlang einer Achse gucke?

    Ich hoffe das es verständlich ist 😃


  • Mod

    frustumculling ist dein stichwort, eventuell noch quadtree oder octree. dann ist dein problem geloest.



  • joah, vielleicht dann noch : PVS, Viewports, und ein BSP-Tree (bzw ocree, bzw quadtree für flächen) Dann musst du dich nicht mit jeder einzelnen kachel rumprügeln, sondern kannst unbenötigten boden quadratkilometerweise rausschmeissen...


Anmelden zum Antworten