Ich möchte gerne eine Landschaft (Spielfeld) aufbauen
und mich in dieser bewegen (like TombRaider).
Hierzu nun meine Frage.
Habe ich das richtig verstanden,das ich eine komplexe Welt aufbauen kann und diese erst dann angezeigt wird, wenn Sie sich im Blickfeld des Betrachters befindet (GL_CULL_FACE). Ich kann also von vornherein,
meinen gesamten Level zeichnen lassen also mit allen Bäumen, Sträuchern, Berge etc. und diese belasten erst dann die Rechenzeit,
wenn diese im Blickfeld des Betrachters kommen ?
GL_CULL_FACE = Rückseite der Polygone nicht zeichnen (Also die Polys werden nur von einer Seite gezeichnet)
Das was du meinst ist FrustumCulling (Son of Satan hat auf seiner HP nen nettes tutorial dazu -> <a href='http://www.DelphiGL.de' target='_blank'>http://www.DelphiGL.de</a>)
In dem fall ist es so das du erst überprüfst "Ist der Baum in meinem Sichtfeld...?", und wenn er drin ist zeichnest du ihn...
Das macht die GrafikKarte nicht automatisch, gehört also ein wenig arbeit dazu *gg*
Registriert: Mo Sep 23, 2002 19:27 Beiträge: 5812
Programmiersprache: C++
Zitat:
Das macht die GrafikKarte nicht automatisch, gehört also ein wenig arbeit dazu *gg*
Kleine Berichtigung :
Die Grafikkarte weiß natürlich wo die Objekte sind und ist sehr wohl in der Lage zu entscheiden, ob ein Objekt (besser Polygon, die Graka kennt ja keine Objekte) im Sichtfeld ist oder nicht, und rendert dieses wenns ausserhalb ist nicht.Die hat also schon hardwaretechnisches Frustum Culling.
Allerdings jagt man trotzdem in jedem Frame alle Polygone über den Datenbus, und erst wenn die Daten bei der GPU ankommen, entscheidet die ob sie sichtbar sind oder nicht.
Beim manuellen Frustum-Culling geht man nun einfach hin, und prüft bevor die Daten zur Graka gelangen ob Objekte im Blickfeld sind oder nicht.Nicht im Frustum befindliche Objekte sendet man damit erste gar nicht zur Grafikkarte, und entlastet so sowohl die Graka an sich als auch die benötigte Bandbreite.Diese beiden Einsparungen resultieren dann im Endeffekt in einer höheren Framerate.
Registriert: Mo Sep 02, 2002 15:41 Beiträge: 867 Wohnort: nahe Stuttgart
Hmm... meines Wissens hat die Kyro 2 eine spezielle Technologie (Hidden Surface Removal oder so), die statt jedes Objekt zuerst zu rendern, zuerst überprüft, ob die Pixel im Bildbereich liegen, also genau das was man jetzt "softwaretechnisch" macht. Nachteil: Keine T&L Engine...
Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.