FPS abhängige Geschwindigkeit

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

Boris0190

Betreff: FPS abhängige Geschwindigkeit

BeitragDi, Feb 03, 2004 20:35
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,
ich habe folgendes Problem:

ich habe eine kleine Welt erschaffen, auf der man in 1st person rumhüpfen kann! Dass klappt problemlos, wenn ich jetzt aber mehr und mehr objekte adde (Bäume etc) werden die FPS iummer weniger (auch logisch) was mich jetzt stöhrt ist, dass es nicht "ruckelt", sondern dass man vom Punkt A nach B bei halber FPS Zahl doppelt solange braucht, also sozusagen alles Zeitlupe! Das is natürlich unpraktisch, auch für MP-Spiele, da der mit dem schnellsten Rechner auch schneller ist ! Wink Gibt es ne möglichkeit, dass die Geschwindigkeit unabhängig von den Frames gleich bleibt??
Thx 4 help, ich denk ma das Prob müsste bekannt sein? Smile

PS: Ich habe versucht das rendern der Welt nur aller 2 Runden zu machen, wenn die FPS weniger eines bestimmten Wertes sind, aber das ganze ruckelt nur unschön und bringt eigentlich nichts brauchbares...
If windows is the sollution, I want my problems back! -
The only way to have a friend is to be one

Markus2

BeitragDi, Feb 03, 2004 20:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Haste für die Bäume etc. CopyEntity benutzt ?
Also eine Vorlage und die ausblenden mit HideEntity für
alle Objekte die vielfach doppelt vorkommen .

Boris0190

BeitragDi, Feb 03, 2004 20:54
Antworten mit Zitat
Benutzer-Profile anzeigen
mh ne, hab ich ned... mh stimmt is besser, ich hab sie bis jetzt in ner schleife so oft geladen wie ich sie brauch! thx, aber des Prob löst das damit nicht, weil ich auch durch "aufs-Wasser-schauen" etc oder "auf-Bäume-schaun" immer unterschiedliche fps hab...
If windows is the sollution, I want my problems back! -
The only way to have a friend is to be one
 

@uzingLG

BeitragDi, Feb 03, 2004 20:58
Antworten mit Zitat
Benutzer-Profile anzeigen
Du brauchst Time-Based Movement!
Mit einer Zeit-Abfrage![/code]

Boris0190

BeitragDi, Feb 03, 2004 21:43
Antworten mit Zitat
Benutzer-Profile anzeigen
mh gehts ein bisschen genauer? Wink ^^
If windows is the sollution, I want my problems back! -
The only way to have a friend is to be one

Shodan

BeitragDi, Feb 03, 2004 21:59
Antworten mit Zitat
Benutzer-Profile anzeigen
die Lösung:

Code: [AUSKLAPPEN]

global looptime#

;schleife
time=millisecs()
while
looptime#=(millisecs()-time)/1000.0 : time=millisecs()
.
moveentity obj,0,0,100*looptime#
.
.
wend


die variable looptime# wird bei allen Bewegungen,Drehungen oder zB Farb- oder Alpha Änderungen eingesetzt. Sie ist global, damit sie auch innerhalb von Funktionen, die in der Hauptschleife aufgerufen werden, genutzt werden kann. Alle Bewegungen werden so in sekunden gerechnet.
Also:
Code: [AUSKLAPPEN]

 Moveentity obj,0,0,100*looptime#

bewegt das objekt obj um den wert 100 pro sekunde.

alle art von Wertänderungen an objekten können somit geregelt werden.

Boris0190

BeitragMi, Feb 04, 2004 19:11
Antworten mit Zitat
Benutzer-Profile anzeigen
thx @shodan! Funktioniert auf jeden Fall besser, aber ich hab immernoch das gefühl ein bisschen langsamer ist er mit weniger FPS! Is vielleicht nur einbildung, weil das kann ja garnich sein Laughing
Auf jeden Fall passts so, thx
If windows is the sollution, I want my problems back! -
The only way to have a friend is to be one

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group