FPS im Game

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

JPD

Betreff: FPS im Game

BeitragMi, Aug 11, 2004 16:11
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo, Wink

also: Meine kleine Testlandschaft funktioniert soweit. Bei mir aufm PC mit ca 120 fps ... so. auf meinem zweiten Rechner mit 60 fps. Bei meinem ganz alten mit 14 fps ...

So ... auf meinem jetzigen PC(120 fps) fahr ich mit meinem Fahrzeug schnell, auf dem mit 60 fps, nur noch halb so schnell ... So ... und von dem mit 14 gar net zu reden.

Sollte ich um eine Einheitliche Geschwindigkeit zu bekommen, abgesehen von den Mindestsystemvorraussetzungen, eventuell nen FrameTimer einbauen?

MfG JPD
 

Dreamora

BeitragMi, Aug 11, 2004 16:20
Antworten mit Zitat
Benutzer-Profile anzeigen
Nein, eine Frameabhängige Bewegung reicht vollständig

Heisst Bewegungsdistanz/FPS verwenden statt Bewegungsdistanz
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

JPD

BeitragMi, Aug 11, 2004 16:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Also? Wenn ich nun zum Beispiel Die Pfeiltaste nach oben drücke, hab ich eine Funktion welche meinen Speed um +0.003 erhöht. Bei insgesamt 1 ist schluss.

Wie kann ich das mit den FPS verbinden? Ich meine damit, wie sich das berechnet?

Ich weiß halt, dass bei 40 fps, mein Maximalspeed 1 ist.

Mr.Keks

BeitragMi, Aug 11, 2004 16:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Naja, ich finde es besser, zu messen, wie viel Zeit seit dem letzten Update vergangen ist und dann damit alle Bewegungen zu multiplizieren.


Bei der Beschleunigung rechnest du dann halt Geschwindigkeit + 0.003 * Speedfaktor und bei der Bewegung des Autos MoveEntity auto,0,0,geschwindigkeit * Speedfaktor. Bei Multiplikationen musst du hingegen ^Speedfaktor benutzen.

Tipp: Wenn du speedfaktor = speedfaktor / 13.33 anwendest, kannst du dieselben Werte wie bei 75 fps benutzen.
MrKeks.net

JPD

BeitragMi, Aug 11, 2004 16:33
Antworten mit Zitat
Benutzer-Profile anzeigen
hmm ... ich bin halt noch ziehmlich unerfahren, was dieses Thema betrifft.

Kann ich das ganze eventuell im Dreisatz rechnen? Bei 40 fps = 1 bei 80 fps = 0.5 oder so?

Müsste doch das gleiche sein?

JPD

BeitragMi, Aug 11, 2004 16:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Also um das zu verdeutlichen wie ich das verstanden hab:

Bei 40 fps nehm ich 1. Ich errechne einen Faktor mit "float(40)/fps" ...

nun kann ich alle Werte mit diesem Faktor multiplizieren, also bei 80 fps mit 0.5 ?

Mr.Keks

BeitragMi, Aug 11, 2004 16:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Naja, die FPS verhalten sich entgegen den benötigten Millisekunden (Was ja auch recht logisch ist Smile) Bei hohen FPS vergeht bei jedem Schleifendurchlauf weniger Zeit als bei niedrigen. Wenn du also direkt mit den Millisekunden multiplizierst, erhälst du perfekte Werte. Wenn die berechnungen länger dauern, brauchen sie auch mehr Millisekunden. Und in mehr Millisekunden kann man sich ja auch logischerweise weiter bewegen Smile
MrKeks.net

JPD

BeitragMi, Aug 11, 2004 16:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja, also es funktioniert schon... Ich probier damit mal etwas rum, mal sehen wie's wird.

mfg JPD

JPD

BeitragMi, Aug 11, 2004 16:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja, schon der erste Fehler ... Das ganze läuft nicht mehr flüssig. Wie war das mit den Millisekunden zählen?
 

Dreamora

BeitragMi, Aug 11, 2004 16:48
Antworten mit Zitat
Benutzer-Profile anzeigen
ob du die Zeit oder die FPS benutzt ist ziemlich egal nicht?

1000 / FPS = Time Elapsed sprich sie sind äquivalent
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

JPD

BeitragMi, Aug 11, 2004 16:55
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja. Ich habe nun folgendes Problem. Das Bild hat kurze Hänger drin, wie bei den offiziellen Spielen auch ... lol ... also immermal wieder nen kleinen Hänger.

Wenn ich konstante 70 kmh fahre, flackert meine Geschwindigkeit zwischeen 68 und 72 rum. Das hört man auch am Fahrgeräusch Sad

Ich hab sicher nur nen dummen Fehler drin, mal nochmal schauen ...

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group