Performance --> nur noch 30 FPS [Neues(altes) Problem]
Übersicht

![]() |
Der EisvogelBetreff: Performance --> nur noch 30 FPS [Neues(altes) Problem] |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo
Ich progge im Moment ein Spiel und hab e nicht auf meine FPS aufgepasst. Mir ist nur langsam aufgefallen, dass das Spiel nicht mehr so schnell läuft wie am Anfang. Ich habe jetzt mal enige Sachen auskommentiert und es blieb gleich. Jetzt habe ich eine Funktion mehr auskommentiert und das Spiel schafft 70 FPS ohne Timer wohlgemerkt. Hier die Funktion: Code: [AUSKLAPPEN] Function F_NotePad(x:Int,y:Int,width:Int,height:Int)
i_notepad_scroll_y:+MouseZSpeed()*15 If i_notepad_scroll_y+100+i_game_size*20<height Then i_notepad_scroll_y=height-100-i_game_size*20 If i_notepad_scroll_y>0 Then i_notepad_scroll_y=0 SetDrawDefaults() SetViewport x,y,width,height SetOrigin x+i_notepad_scroll_x,y+i_notepad_scroll_y SetColor 0,0,0 ; DrawRect 0,0,500,100+i_game_size*20 SetColor 255,255,255 ; DrawRect 2,2,496,96+i_game_size*20 For Local x:Int=0 To 2 For Local y:Int=0 To i_game_size-1 Local i_points:Int=F_AnalyseGame(y,x) If MouseOver(200+x*50,50+y*20,50,20) Then SetColor 255,0,0 DrawRect 200+x*50,50+y*20,50,20 If i_points<>0 And ai_player[x,y]=0 And i_dice_end=False Then MouseTip(Left(i_points,Len(String(i_points))*(i_points>=0))+Left("---",Len("---")*(i_points=-1)),500) If mh Then ai_player[x,y]=i_points EndIf EndIf EndIf SetColor 0,0,0 If ai_player[x,y]>0 Then DrawTextEx ai_player[x,y],225+x*50,60+y*20,1,1 If ai_player[x,y]<0 Then DrawTextEx "---",225+x*50,60+y*20,1,1 Next Next SetColor 0,0,0 For Local i:Int=0 To 3 DrawLine 200+i*50,50,200+i*50,50+i_game_size*20 Next For Local i:Int=0 To i_game_size-1 If Int(as_game[i,2]) & 1 Then DrawLine 50,70+i*20,450,70+i*20 If Int(as_game[i,2]) & 2 Then DrawLine 50,51+i*20,450,51+i*20 If Int(as_game[i,2]) & 4 Then DrawLine 50,71+i*20,450,71+i*20 DrawText as_game[i,0],55,54+i*20 Next DrawText "i_game_size",200,100+i_game_size*20 SetOrigin 0,0 SetViewport 0,0,GW,GH End Function Auch hier habe ich auskommentiert. Aber bei dieser Funktion hatte sich auch nur etwas veränderrt, wenn ich alles aus kommentiert hatte. Alle Funktionen, die ich in dieser Verwende wurden von mit auch schon unter die Lupe genommen und sie hatten alle nix zu sagen, dass heißt wohl oder übel, dass mein Übertäter in dieser Funktion stecken muss oder? Ich finde ihn aber nicht. Das eizige, was aber nur 10 FPS ausmacht sind diese 2 Zeilen: Code: [AUSKLAPPEN] SetColor 0,0,0 ; DrawRect 0,0,500,100+i_game_size*20
SetColor 255,255,255 ; DrawRect 2,2,496,96+i_game_size*20 Aber wie soll ich diese ersetzten, und selbst wenn ich sie ersetzten würde mt etwas schellerem, dann hätte ich immeroch nur 40 FPS. Ich bin echt voll deprimiert. Ich habe echt keine Ahnung mehr, was ich machen soll. Wäre nett, wenn ihr mit helfen würdet. PS: Diese paar Zeilen sind mir auch noch aufgefallen, aber die machen auch nur 5 FPS aus. ![]() Code: [AUSKLAPPEN] For Local i:Int=0 To i_game_size-1
If Int(as_game[i,2]) & 1 Then DrawLine 50,70+i*20,450,70+i*20 If Int(as_game[i,2]) & 2 Then DrawLine 50,51+i*20,450,51+i*20 If Int(as_game[i,2]) & 4 Then DrawLine 50,71+i*20,450,71+i*20 DrawText as_game[i,0],55,54+i*20 Next EDIT: So ich hab jetzt mal beide Code-Stücke gleichzeitig auskommentiert, und jetzt hab ich plötzlich 120 FPS. Ich hätte schon früher beide zusammen auskommentieren sollen. Aber was soll ich jetzt machen um die 2 erwähnten Code-Stücke zu ersetzten? MfG Der Eisvogel |
||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
![]() |
ChaosCoder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] For Local i:Int=0 To i_game_size-1
Für horizontale/vertikale Linien immer DrawRect benutzen. DrawLine ist da viel zu langsam!
If Int(as_game[i,2]) & 1 Then DrawRect 50,70+i*20,400,1 If Int(as_game[i,2]) & 2 Then DrawRect 50,51+i*20,400,1 If Int(as_game[i,2]) & 4 Then DrawRect 50,71+i*20,400,1 DrawText as_game[i,0],55,54+i*20 Next |
||
Projekte: Geolaria | aNemy
Webseite: chaosspace.de |
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Guck mal bei den Modulen nach drawrectfast von mir. Kann sein dass deine Graka bei rect stark bremst. | ||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
![]() |
Der Eisvogel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Mit dem Modul gehts leider noch langsamer. | ||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
![]() |
ChaosCoder |
![]() Antworten mit Zitat ![]() |
---|---|---|
und wie siehts mit dem codeschnipsel von mir aus? schneller? langsamer? fps? | ||
Projekte: Geolaria | aNemy
Webseite: chaosspace.de |
![]() |
Der Eisvogel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Also im groß und ganze sehe ich keinen Unterschied, wenn ich es aber brutal ins Detail nehme so 2 FPS. | ||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group