Unterschiedliche Performance
Übersicht

![]() |
KeimaxBetreff: Unterschiedliche Performance |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi.
Ich hatte so ein Thread schonmal in einem der alten Foren, aber ich bräuchte nochmal eure Thesen. Woran könnte es liegen das ein 2d Spiel (Jump and run) auf Rechnern unterschiedlichster Performance unterschiedlich schnell läuft? Also das Spiel läuft auf einem XP3000 mit Geforce FX langsamer als auf einem P3 1000 mit Geforce 2 MX. (Beispiel...) Wie kann ich den Fehler finden? cu |
||
XP3000, FX6600, 1024DDR, BB2d @ W2k,
- > Diesen Text bitte nicht beachten <- |
![]() |
bruZard |
![]() Antworten mit Zitat ![]() |
---|---|---|
Du musst das Game von "MilliSecs()" abhängig machen ... führe Berechnungen in Zeitabschnitten durch und zeichne die Grafik sooft wie es die Karte verkraftet.
Pseudocode: Code: [AUSKLAPPEN] time=MilliSecs() Repeat If Millisecs-time>33 ; berechne alle Daten time=MilliSecs() EndIf ; Male die Gamegrafik Flip Until KeyHit(1) Dieser Code berechnet Koordinaten etc. mit 30FPS |
||
PIV 2,4GHz - 1GB DDR 333 - ATI Radeon9600 - WinXP - DX9.0c - BMax 1.14 - B3D 1.91 - 1280x1024x32
User posted image |
![]() |
TheShadowModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Schau dir Graphics genau an - da steht ein Hinweis... | ||
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2 |
![]() |
Keimax |
![]() Antworten mit Zitat ![]() |
---|---|---|
hmm habe den hinweis nicht gesehen???
auf einem xp3000 mit 256 MB Geforce FX sollte ein jump and run in 800*600 mit 16 Bit wohl flüssig laufen, zumal es ja mit "kleineren" Rechnern 1A läuft. Aber trotzdem danke ![]() cu |
||
XP3000, FX6600, 1024DDR, BB2d @ W2k,
- > Diesen Text bitte nicht beachten <- |
![]() |
TheShadowModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
was von Framegrenze gehöert? XP/2000 haben da probs mit laufen mit 60hz | ||
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2 |
![]() |
Xenon |
![]() Antworten mit Zitat ![]() |
---|---|---|
nenene ...
bruZard, das Bsp is schlecht, da läuft es trotzdem nicht immer gleich schnell! Hier Pseudocode: Code: [AUSKLAPPEN] Repeat
time# = (MilliSecs()-lasttime)/1000.0 lasttime = MilliSecs() ; Move ; Bewege den Spieler 50 Pixel/Einheiten pro Sekunde pos# = pos# + 50*time#*KeyDown(208) Untile Keydown(1) |
||
c64 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hoffe das kann helfen !! :
!!! ist aus der OnlineHilfe !!! ------------------------------------ Code: [AUSKLAPPEN] ; Create the timer to track speed frameTimer=CreateTimer(60) ; Your main screen draw loop While Not KeyHit(1) WaitTimer(frameTimer) ; Pause until the timer reaches 60 Cls ; Draw your screen stuff Flip Wend |
||
![]() |
MVB |
![]() Antworten mit Zitat ![]() |
---|---|---|
Oder mach es Frameunabhängig! Also programmier nen Framezähler, und dann statt
Code: [AUSKLAPPEN] x#=x#+1
nimm Code: [AUSKLAPPEN] x#=x#+0,01*FPS ![]() |
||
aquamonit.de|BlitzMax|MaxGUI |
Edlothiol |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das ist dann stark Frameabhängig so wie dus machst ![]() Wenn die FPS höher sind, bewegen sich die Objekte schneller ![]() Du müsstest stattdessen mit (gewollte_fps (z.B. 60) / FPS) malnehmen. |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group