Aktuelle Zeit: 11.05.2024, 22:17

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: fps-Einbruch bei laden eines Modells
BeitragVerfasst: 20.08.2008, 22:12 
Offline

Registriert: 09.07.2008, 13:03
Beiträge: 14
Hallo Leute,
ich habe ein Problem. Vielleicht wurde das hier schonmal diskutiert, ich konnte aber nichts finden.
Wenn ich ein 3ds Modell (oder auch andere Formate) in mein Programm lade brechen die Frames sofort ein.

Ich habe ein Terrain, welches ähnlich wie in der Terrain-Demo generiert wird. Wenn ich nur das Terrain lade und mich darin bewege habe ich so knapp 400 fps. Lade ich jetz aber eine Model darein, welches wirklich extrem low-poly ist, gehen die Frames auf 128 runter.

Lade ich 100 davon, bin ich gerade noch bei 4 fps.

Code:
[...]
scene::IAnimatedMesh* mesh = smgr->getMesh("media/mdls/panzer1.3ds");
scene::IAnimatedMeshSceneNode* node = smgr->addAnimatedMeshSceneNode(mesh);
[...]
if (node)
{
      node->setMaterialFlag(video::EMF_LIGHTING, false);
      node->setPosition(core::vector3df(1800,60+n*80,2700));
}

[...]


Woran kann das liegen?

Danke
Max


Nach oben
 Profil  
 
BeitragVerfasst: 21.08.2008, 12:28 
Offline
Moderator
Benutzeravatar

Registriert: 15.04.2007, 20:20
Beiträge: 505
Wohnort: Reelsen
Da fehlt eine wichtige Angabe: Wie viele Polygone hat das Modell?

Irrlicht kann nicht wirklich viel Geometrie auf einmal rendern, das wird evtl mit 1.5 besser (da fehlen so Sachen wie VBOs, die sind noch nicht komplett integriert).

_________________
Meine Gameengine :)
Bild


Nach oben
 Profil  
 
BeitragVerfasst: 21.08.2008, 18:00 
Offline

Registriert: 09.07.2008, 13:03
Beiträge: 14
Hey,
erstmal danke für deine Antwort.

Also:
Vertices : 6736
Faces: 11586
Da ich kein Designer bin, weiß ich jetzt nicht ob das viel oder wenig ist. Ich kann nur sagen, das Modell sieht ziemlich eckig aus ;).

Gibt es irgendwelche Erfahrungswerte, auf wieviel ich runter müsste damit ich ca. 100 Models auf den Schirm bekomme?? Ich probiere mich halt an einem kleinen Strategiespiel. Wäre ziemlich bescheiden wenn man nur 1-2 Panzer fahren lassen könnte und dann nur noch 10fps hat ;).

Danke,
Max


Nach oben
 Profil  
 
BeitragVerfasst: 22.08.2008, 13:51 
Offline
Moderator
Benutzeravatar

Registriert: 15.04.2007, 20:20
Beiträge: 505
Wohnort: Reelsen
100 Mal 10000 Tris? Das macht 1000000 Polygone die Sekunde, da bist du bei Irrlicht weit überm Limit. Mit anderen Engines geht da noch was, weil so Sachen wie VBOs halt locker ne Größenordnung schneller sind.

Schau dir mal was zum Thema Impostors an, da wird das Modell auf eine Textur gerendert und die angezeigt, wenn das Objekt in der Ferne ist, amit hast du nur noch 4/8 (je nach Implementation) Vertices pro Objekt.

Und ansonsten würd ich bei nem Strategiespiel stark auf LOD setzen, d.h. hohe Auflösung nur für die allernächsten Objekte und nur, wenn die Kamera nah an ihnen dran ist.


Über ne Textur (Stichwort: Normal-/Parallaxmapping) kannst du auch noch einiges rausholen.

EDIT: 10k Tris für ein Modell ist für ein RTS auch schon relativ viel.

_________________
Meine Gameengine :)
Bild


Nach oben
 Profil  
 
BeitragVerfasst: 23.08.2008, 16:26 
Offline

Registriert: 09.07.2008, 13:03
Beiträge: 14
Ok, sowas dachte ich mir. Ich hab mal ein anderes File mit ca 400 Vertices genommen, damit klappt alles um einiges besser.
Die eine deutliche Steigerung in den fps habe ich, wenn ich es als OBJ File lade.

Danke für den Tipp mit dem Parallaxmapping, hab mir mal kurz durchgelesen was das überhaupt ist ;).
Muss ich mir demnächst mal genauer ansehen. Genauso wie LOD.

Danke
Max


Nach oben
 Profil  
 
BeitragVerfasst: 23.08.2008, 18:13 
Offline
Moderator
Benutzeravatar

Registriert: 25.03.2007, 18:11
Beiträge: 834
Wohnort: Hagen, NRW
Du solltest auch mal einen blick auf die SNV version von Irrlicht werfen, denn da sind VBOs schon drin.

Hab das mal letztens ausprobiert. Ohne VBO hatte ich bei einem Modell (4k Polys oder so) um die 480 FPS, mit waren es dann gleich 580 FPS

_________________
Phenom X4 9950 BE | 6144MB DDR2-800 | GeForce 8800GT 512MB | Asus M3A32-MVP Deluxe | 2TB HDD | 520W Seasonic NT | Soprano Tower | Samsung 22" TFT + Fujitsu-Siemens 17" TFT + Toshiba 42" FullHD LCD | Windows 7 Proessional x64
Behind the Brain


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 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.

Suche nach:
Gehe zu:  
Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de