Seltsames Speedproblem
Übersicht

![]() |
hamZtaAdministratorBetreff: Seltsames Speedproblem |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi leute, ich programmier grad in b3d und bin dabei auf folgendes gestoßen:
meine hauptschleife sieht folgendermaßen aus:Code: [AUSKLAPPEN] Repeat frames = frames + 1 If console=0 Then updatePlayer() msstart = MilliSecs() UpdateWorld() msend = MilliSecs() mstotal = msend-msstart RenderWorld() Text 0,0,"FPS:" +fps() Text 0,15,"Tris:";+TrisRendered() Text 0,45,"RenderTime:"+mstotal Text 0,30, (((TotalVidMem()-AvailVidMem())/1024)) + "/"+ ((TotalVidMem()/1024)) updateConsole() Flip 0 Until KeyHit(1) darin rufe ich nur die Funktionen zum Playerbewegen und zum konsole updaten auf. beide funktionen brauche nur sehr kurz um ihre aufgabe zu erfüllen ![]() ich hab allerdings 19 objekte geladen, jedes ne eigene surface, insgesamt 1976 Tris. wenn ich nur in die luft schau, hab ich an die 2000 fps, wenn ich aber die 19 objekte anschau sinkt die fps zahl auf 25. ich hab mal überprüft wie lang die text funktionen brauchen (keine normalen funktionen, sind bitmaptfont routinen von dc's font wizard), und hab gesehn das diese 4 stück 77 millisekunden brauchen. Wenn wer sofort ne lösung hat, immer her damit! Hier hab ich mal das projekt hochgeladen. Ihr müsst nur mit der maus nach unten sehen. beendet wird mit escape. bitte sagt mir eure fps wenn ich die 19 objekte seht (ihr seht nur eins, weil die übereinander liegen ![]() ich hoffe auf antworten! danke im vorraus, hamZta |
||
Blog. |
getlose |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ne taste womit man das prog beenden kann wäre
nicht schlecht gewesen ;) hab 14 fps (1 ghz, 386ram,gf2mx), weiß aber nicht was das schwarz/weiße Etwas darstellen soll, sieht extrem frame-fressend aus :) |
||
![]() |
hamZtaAdministrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
schwarz weisses etwas?
seltsam... ich hab ja geschrieben das man mit escape beenden kann! |
||
Blog. |
BIG BUG |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Also mit Escape kann man definitiv nicht beenden... wenn dann strg+ESC und mit Windows abschiessen falls du das gemeint hast ![]() Neben der Anzahl der gerenderten Tris ist natürlich auch die Größe dieser relevant. Je größer ein Polygon, desto länger braucht die Grafikkarte es zu füllen. Dass dann bei 500 halb-bildschirmfüllenden Polygonen die FPS runtergehen ist klar. Wenn du also lauter Objekte an der gleichen Position erstellst und nah ranzoomst hast du folglich keinen aussagekräftigen Wert, wieviel Polygone eine Spielszene verbrauchen darf. |
||
B3D-Exporter für Cinema4D!(V1.4)
MD2-Exporter für Cinema4D!(final) |
![]() |
Wild-Storm |
![]() Antworten mit Zitat ![]() |
---|---|---|
ein "kleiner" fehler, die textur ist keine 2er potenz, sondern irgendein mischmasch aus 540x480 oder so, das verbraucht viel unnötigen speicher(wird dann 1024x1024pixel verbrauchen, pro texturgebrauch),
da du die textur nun um die 14mal benutzt (wie ich das hier sehe) ist ein enorm groser speicherverbrauch da. und voila, da is dein speedproblem =) verkleiner einfach die textur auf eine 2er potenz, z.b. 512x512 bye und ich hoffe ich konnte helfen @BIG BUG, stimmt nicht ganz, ne skybox besteht auch aus riesigen polygonen und nimmt fast den ganzen bildschirm ein, trozdem geht der speed net in den keller edit: ah 19 sinds, mit je 10texturflächen bei 1024x1024, das is ordentlich speedfressend, kein wunder ![]() |
||
Visit http://www.next-dimension.org
------------------------------------------------- Freeware Modelle, Texturen & Sounds: http://www.blitzforum.de/forum...hp?t=12875 |
![]() |
hamZtaAdministrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
hab das jetzt mal auf 512x512 gemacht, aber das ergebnis ist nicht anders, ich hab 25 fps wenn ich von oben draufschau
edit: auch bei 128x128 sinkts unter 30 fps... |
||
Blog. |
lettorTrepuS |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
-aus Sicherheitsgründen gelöscht- Diese Information ist mit Ihrer Sicherheitsfreigabe leider nicht erhältlich, Bürger. | ||
BIG BUG |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
@Hamza
Dann zoome die Kamera mal zurück(so dass der Baum oder was auch immer kleiner zu sehen ist) und freue dich über mehr FPS. @Wildstorm Stimmt schon ganz, ne Skybox sind eben nur eine Hand voll Polygone und keine 500. Dieser Aspekt der Polygongröße wird auch bei professionellen Spielen zu wenig berücksichtigt. So kommt es bei Rennspielen oftmals zu einem deutlichen FPS-Einbruch, wenn z.B. viele Staubsprites genau in die Kamera fliegen... |
||
B3D-Exporter für Cinema4D!(V1.4)
MD2-Exporter für Cinema4D!(final) |
![]() |
hamZtaAdministrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
@ST, ja die fps routine ist richtig, wenn man die objekte ansieht ruckelts auch ordentlich.
die text befehle benutzen bitmapfontroutinen, wenn ich sie weglass ruckelts trotzdem. das objekt is in milkshape erstellt worden, ich denke mal es sind 3 vertices pro polygon. wie meinst du das, updateworld in einer for schleife? @BigBug, du kannst dich mit WASD bewegen, aber was bringts mir wenn ich das objekt kleiner seh? im spiel soll man ja schlißlich auch nah ran gehen können. ich hab mir nochmal die millisekunden ausgeben lassen, die renderworld braucht wenn ich auf die objekte schau, und ich erkenn da keine veränderung. (bleibt immer bei 0-1 millisecs). |
||
Blog. |
lettorTrepuS |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
-aus Sicherheitsgründen gelöscht- Diese Information ist mit Ihrer Sicherheitsfreigabe leider nicht erhältlich, Bürger. | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group