Spiele laufen auf einigen rechnern langsamer als auf anderen

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

Egon Dragon

Betreff: Spiele laufen auf einigen rechnern langsamer als auf anderen

BeitragMi, Nov 03, 2004 17:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi
Also ich habe folgendes Problem und zwar laufen meine Spiele auf manchen rechnern langsamer als auf anderen und das obwohl ich timer eingebaut habe und .bmp fonts benutze.
Meinen Timer benutze ich ungefähr so:

Code: [AUSKLAPPEN]

;alles mögliche laden (Bilder Sounds usw)
;Timer(100) erschaffen

;------------------------------------------

While not keydown(1)
;das ganze spiel (schön ordentlich in functionen gepackt)

;bildschirm Löschen
;Alle sachen auf den bildschirm bringen
;auf den timer Warten
;Flipen

Wend

;------------------------------------------

;Die ganzen functionen...



ist eigentlich CreateTimer(100) oder (80) besser?
wenn ich nähmlich, (wie für Graphiktimer empfolen)
CreateTimer(60) verwende, sieht das spiel irgentwie stockrich aus!

BladeRunner

Moderator

BeitragMi, Nov 03, 2004 17:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Vergiss den Timer-Mist. Der hält das Programm nämlich an bis der nächste Zeitimpuls kommt. Mach dir deine Timer besser mit millisecs()
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

TheShadow

Moderator

BeitragMi, Nov 03, 2004 19:15
Antworten mit Zitat
Benutzer-Profile anzeigen
hm... schau mal bei graphics in der onlinehilfe...
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2

IGNAZ DELUXE

BeitragMi, Nov 03, 2004 19:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich mache es so:
Code: [AUSKLAPPEN]
Graphics 800, 600, 32, 2
Setbuffer Backbuffer()

GFX_Bild = LoadImage("Bild.bmp")

Bild_X# = 0

Zeitspeicher = Millisecs()

Repeat
   Zeitpuffer = Millisecs()
   Flipdauer# = (Zeitpuffer - Zeitspeicher) / 1000.0
   Zeitspeicher = Zeitpuffer

   ;Bild bewegen
   Bild_X = Bild_X + 10 * Flipdauer

   Drawimage GFX_Bild, Bild_X, 0

   Flip : Cls
Until Keyhit(1)
End


Somit läuft das Bild immer 10 Pixel pro Sekunde nach rechts, egal mit wievielen FPS das Spiel gerade läuft. Du musst einfach nur jede Bewegung in Pixel pro Sekunde angeben und diese mal die Flipdauer zu multiplizieren.

mfg Ignaz DELUXE
www.NUKESOFT.de

Egon Dragon

BeitragDo, Nov 04, 2004 10:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Wozu kann man dann CreateTimer usw. brauchen?
 

hot-bit

Gast

BeitragDo, Nov 04, 2004 12:53
Antworten mit Zitat
Hi...

Das braucht man nicht Smile


Meine Games rennen alle mit CreateTimer()

Deswegen funktionieren diese auch nicht Wink

Toni

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group