JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.phpMedaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Terrain Test
Gehe zu Seite Zurück  1, 2, 3, 4, 5, 6, 7  Weiter
 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Projekte
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
nigs
Super JLI'ler



Anmeldedatum: 19.12.2002
Beiträge: 359

Medaillen: Keine

BeitragVerfasst am: 18.02.2004, 15:57    Titel: Antworten mit Zitat

bei der neueren version hat sich bei mir nichts verändert, immer noch 30FPS bei SOLID, und 12 bei WIREFRAME
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Christian Rousselle
Site Admin


Alter: 47
Anmeldedatum: 19.07.2002
Beiträge: 1630

Medaillen: Keine

BeitragVerfasst am: 18.02.2004, 16:10    Titel: Antworten mit Zitat

Die Geschwindigkeit sollte sich auch nicht ändern, nur die Schönheit Smile Zwei Texturen sollten jede aktuelle Grafikkarte ohne Probleme können.

C.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
nigs
Super JLI'ler



Anmeldedatum: 19.12.2002
Beiträge: 359

Medaillen: Keine

BeitragVerfasst am: 18.02.2004, 17:07    Titel: Antworten mit Zitat

sieht auch viel beser aus. ohne lightmap und die texturen sah es ein bischen wie kraut und rüben aus. jetzt siehts wie in nem richtigen pc-spiel aus.....
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Chewie
Super JLI'ler



Anmeldedatum: 17.07.2003
Beiträge: 382

Medaillen: Keine

BeitragVerfasst am: 18.02.2004, 22:21    Titel: Antworten mit Zitat

sehr fein siehts jetzt aus.

dass der vertexbuffer ständig gelockt wird, finde ich nicht gut. meines wissens sollte man alles was man schon zu beginn berechnen kann, auch schon beim initialisieren tun. um zu demonstrieren wie man den vb updatet reicht auch ein absatz im buch, wie und wo(im vb) man das macht ist dann sowieso individuell.
cool fände ich eine stabile terrain engine, die möglichst wenig performance frißt...sprich mit mipmapping, dem lod system und occlusion culling, am bestem mehrere systeme(pvs, octree, bboxes um tiles) die man ein-/ausschalten kann. verfeinert durch z.B. einen buggy, in dem man drauf herumheizen kann.

was ich auch nicht verstehe ist, wieso du zuerst das tile am weitesten von der cam entfernt hernimmst. wärs nicht gescheiter mit dem wo man steht zu beginnen und sich in quadraten kreisförmig zu entfernen? dann könnte man bei einer bestimmten tiefe zum starttile eine bestimmte detailstufe einstellen.
da könnte man dann auch gleich mit dem PVS ansetzen:
tile von cam hernehmen
pvs tiles hernehmen
abstand zum starttile
in bestimmter detailstufe rendern
pvs tiles hernehmen
.....

wobei ich sagen möchte, dass ich ein PVS system bei einer outdoor engine auch nicht unbedingt für sinnvoll halte. weil du im grund wieder bboxes um die einzelnen tiles in einem set brauchst, um das frustum dagegen zu testen, damit du nicht von allen tiles im set das nächste pvs hernimmst.
bei ner indoor engine kann man ja portale hernehmen und über die die pvs sets verlinken.
ich laß mich aber auch gern eines besseren belehren...

meiner meinung nach ist ein octree einfach perfekt für eine lanschaft, wobei ich noch keine gute idee hab, den mit dem lod system zu koppeln.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
=]Mid[=]Night[=
Super JLI'ler



Anmeldedatum: 20.11.2002
Beiträge: 380
Wohnort: Aachen
Medaillen: Keine

BeitragVerfasst am: 19.02.2004, 10:58    Titel: Antworten mit Zitat

Einen Buggy? ^^ ich glaube, das ist schon sehr viel schwerer zu machen als die Landschaft alleine, mit der Fahrphysik, dass das einigermaßen realistisch wirkt ...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Christian Rousselle
Site Admin


Alter: 47
Anmeldedatum: 19.07.2002
Beiträge: 1630

Medaillen: Keine

BeitragVerfasst am: 19.02.2004, 11:17    Titel: Antworten mit Zitat

Hallo,

wenn das Tile, dass am nächsten am Spieler ist zuerst gezeichnet würde, müßten sich die anderen Tiles, die an dieses Tile anschließen ev. verfeinern. D.h. es müßten zusätzliche Vertices hinzugenommen werden, dass halte ich nicht für so einfach. Die momentane Methode stellt sicher, dass ein Tile nur besser aufgelöst werden kann und sich "vergröbern" muss.

Zitat:

dass der vertexbuffer ständig gelockt wird, finde ich nicht gut.


Ich sehe nicht, wie es anders gehen soll. Du willst bei dieser Größe nicht wirklich für jedes Tile einen VB im Speicher halten (es sind immerhin über 5000 Stück, das sind bei 17*17 Vertices, 32 Byte pro Vertex schon 44 MB nur für Vertexbuffer, dass ist nicht wirklich praktikabel).

Christian
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Chewie
Super JLI'ler



Anmeldedatum: 17.07.2003
Beiträge: 382

Medaillen: Keine

BeitragVerfasst am: 19.02.2004, 12:50    Titel: Antworten mit Zitat

buggy...naja, irgendwas um zu demonstrieren wie man etwas 'auf' dem terrain hält, wäre schon nett. man muß ja nicht gleich eine reelle fahrphysik mit driften, etc. einbauen. ich dachte nur, es ist sicher netter als wenn man nur die kamera anpasst.

chris:
ich weiß schon, dass es ziemlich viel ist, irgendwie gefällt es mir aber nicht, für etwas was ich von vornherein berechnen kann, massig performance zu verschenken.
edit: was is wenn man alles in einen vb packt und sich verschiedene IBs speichert? ein jedem tile eben einen IB.

das mit den tiles versteh ich immer noch nicht...die einzelnen tiles müssen doch sowieso in jeder detailstufe zueinander passen, oder nicht? ich mein so irgendwie....
1-3: detailstufen
S: starttile (player)
3333333
3222223
3211123
321S123
3211123
3222223
3333333
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Christian Rousselle
Site Admin


Alter: 47
Anmeldedatum: 19.07.2002
Beiträge: 1630

Medaillen: Keine

BeitragVerfasst am: 19.02.2004, 14:16    Titel: Antworten mit Zitat

Wenn ich es richtig verstehe, willst du einen VB mit 1025x1025 Vertices haben (?) Und dann Indexbuffer für die Tiles? Das geht auch nicht, da deine Grafikkarte immer den kompletten Vertexbuffer transformiert, auch wenn nur ein Teil genutzt wird. Über eine Millionen Vertices pro Frame zu transformieren ist zu langsam. Außerdem verbrauchst du immer noch recht viel Speicher.

Ansonsten wäre es natürlich schön, wenn man was über das Terrain bewegen könnte - werde mir mal was überlegen.

Zitat:

das mit den tiles versteh ich immer noch nicht...die einzelnen tiles müssen doch sowieso in jeder detailstufe zueinander passen, oder nicht? ich mein so irgendwie....


Klar, nur wenn du mit den nähsten Tile anfängst, wird dies immer in voller Auflösung gerendert, wenn ein Tile das daran angrentzt eine schlechtere Auflösung hat, muss es sich an den Rändern anpassen, was bedeutet, dass du Vertices hinzufügen muss...

Christian
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Chewie
Super JLI'ler



Anmeldedatum: 17.07.2003
Beiträge: 382

Medaillen: Keine

BeitragVerfasst am: 19.02.2004, 15:45    Titel: Antworten mit Zitat

echt? der ganze vb wird immer transformiert? das heißt, dass ich bei egal was für einem tree oder pvs eigentlich immer einen vb in den nodes/sets haben sollte? und nicht einen fetten vb und mehrere ibs? ....wenn ich nicht alle verticen durch die pipeline jagen will?

Christian hat Folgendes geschrieben:
Klar, nur wenn du mit den nähsten Tile anfängst, wird dies immer in voller Auflösung gerendert, wenn ein Tile das daran angrentzt eine schlechtere Auflösung hat, muss es sich an den Rändern anpassen, was bedeutet, dass du Vertices hinzufügen muss...

ok, stimmt, das problem hab ich übersehen...
sag mal, werden so lod-systeme generell mit stänigem updaten des vb realisiert? wenn das nämlich eh die gängige methode ist, zerbreche ich mir nicht weiter den kopf darüber...wie gesagt, hab mich da noch nicht so informiert...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Kampfhund
Super JLI'ler


Alter: 41
Anmeldedatum: 20.07.2002
Beiträge: 408

Medaillen: Keine

BeitragVerfasst am: 19.02.2004, 15:50    Titel: Antworten mit Zitat

man könnte ja die Ränder gleich in der höchsten auflösung lassen.
Wenn man dann von vorne nach hinten rendert müsste sich ja eigentlich auch der overdraw verringern.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Christian Rousselle
Site Admin


Alter: 47
Anmeldedatum: 19.07.2002
Beiträge: 1630

Medaillen: Keine

BeitragVerfasst am: 19.02.2004, 15:56    Titel: Antworten mit Zitat

Wenn die Jungs bei MS nix dran geändert haben ist das nach wie vor so. Sollte man leicht heraus finden können Smile Vertexbuffer wird immer komplett durch die Pipeline geschickt. Was du machst hängt natürlich von der Größe des VB ab. Wenn es wenige Vertices sind ist es egal. Ob du 3 oder 1000 Vertices zur Grafikkarte schickst macht keinen Geschwindigkeitsunterschied aus. Der DrawPrimitive call bedeutet mehr Overhead als die 997 Vertices. TnL können die Karten schon recht schnell Smile


Zitat:
man könnte ja die Ränder gleich in der höchsten auflösung lassen.


Aber das bedeutet ja genau mit mehr Vertices zu arbeiten. Im Prinzip ginge es, ich denke mal darüber nach. Der Overdraw verringert sich dadurch alleine aber nicht, oder? Es bleiben ja die gleiche Anzahl Tiles. Man könnte so nur einfacher herausfinden, welche sichtbar sind.

C.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Chewie
Super JLI'ler



Anmeldedatum: 17.07.2003
Beiträge: 382

Medaillen: Keine

BeitragVerfasst am: 19.02.2004, 16:08    Titel: Antworten mit Zitat

ich mein natürlich wenn man einen haufen verts hat...eben ein indoor/outdoor level.

wird der ganze vb schon bei SetStreamSource() zur graka geschickt und transformiert, oder wie?

wenn du die ränder in höchster auflösung läßt, hast du ja wieder dasselbe problem, wenn du den rest vom tile an den rand anfügen willst.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Kampfhund
Super JLI'ler


Alter: 41
Anmeldedatum: 20.07.2002
Beiträge: 408

Medaillen: Keine

BeitragVerfasst am: 19.02.2004, 16:21    Titel: Antworten mit Zitat

Ränder in fester Auflösung:
Man kann die Tiles ja vorher erstellen.
Das ganze nennt sich soweit ich weiß "Geo MipMapping".
Man lädt eben die Geometrie in verschiedenen detailstufen und rendert je nach entfernung eine andere(ähnlich dem Textur MipMapping). Die MipMap Geometrie kann dabei ja schon vorher erstellt sein oder wird beim laden der Map erstellt.

Ob sich das positiv auf die performance auswirkt weis ich nicht, das müsste man wohl testen. Man müsste allerdings die MipMap Stufen zusätzlich im speicher haben...

Overdraw:
Der overdraw müsste sich doch aber verringern wenn man von vorne nach hinten zeichnet. Allerdings nur wenn der Z-Buffer aktiviert ist.
Ob der immer aktiviert ist oder nicht weiß ich nicht. Ich habe mit dem z-Buffer noch keine Erfahrung (kann ja sein dass es mehr aufwand macht alles mit aktiviertem Z-Buffer zu rendern).


Zuletzt bearbeitet von Kampfhund am 19.02.2004, 16:22, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Christian Rousselle
Site Admin


Alter: 47
Anmeldedatum: 19.07.2002
Beiträge: 1630

Medaillen: Keine

BeitragVerfasst am: 19.02.2004, 16:21    Titel: Antworten mit Zitat

Ich denke erst bei DrawIndexPrimitive, dann aber der komplette.

Christian
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 19.02.2004, 16:37    Titel: Antworten mit Zitat

Ist das nicht eigentlich schon GeoMipMapping was da eingebaut wurde ? In der Beschreibung trifft es zumindest zu.
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Projekte Alle Zeiten sind GMT
Gehe zu Seite Zurück  1, 2, 3, 4, 5, 6, 7  Weiter
Seite 6 von 7

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum