Timer und Newton und Tests und...

Previous topic - Next topic

WPShadow

Lieber Gernot!
Lieber Schranz0r!
Lieber BumbleBee!

Hi!

Tja, bevor ich mit diesem Thema beginne, wollte ich fragen, wer wie Zeit hat an diesem Wochenende! Ich würde nämlich sehr gerne ein bißchen Chatten und mir Anregungen holen, was ich noch machen kann...

Nun, ich beginne mit der ganzen Geschichte:

Ich hatte gestern Nachmittag frei, was heißt, daß ich keinen Internetzugang und auch nichts anderes hatte, wodurch ich angewiesen war, meine begrenzten Möglichkeiten zu nutzen: Alter Laptop, aktuelle GLBasic Version.

Ich begann also etwas zu experimentieren, um eben heraus zu finden, wieso die Geschwindigkeit in der Alpha immer so variiert. Es verhält sich nämlich: je mehr FPS, desto schneller fliegt das Schiff, je weniger FPS desto langsamer fliegt es

Da mir die ganze Sache schon seit einiger Zeit spanisch vor kommt, packte ich ein paar ältere Tests aus und testete sie mit LIMITFPS aus und siehe da: Das selbe Verhalten!!!

In jedem einzelnen Programm verwendete ich

//+++++++++++++++++++++++++++++++++++
GT=(GETTIMERALL()-Old_Timer)/1000
Old_Timer=GETTIMERALL()
//+++++++++++++++++++++++++++++++++++

als Gametimer und jedes der Programme reagierte gleich. Ich testete also geschlagene 4 Stunden herum, bis ich zu meinem fast 2 Jahre alten "Script" - Test kam, der einfach Raumschiff aufruft und durch (Gernots) selber geschriebene "Beschleunigungs- und Verzögerungsengine" funktioniert. Und siehe da: Wieder das selbe Problem, aber diesmal in Zahlen!!!

Begrenze ich die FPS oder erhöhe ich sie, geschieht folgendes:

FPS 30                                  --> Geschwindigkeit ~ 400
FPS 60                                  --> Geschwindigkeit ~ 960
FPS offen (bei mir ca. 170)     --> Geschwindigkeit ~ 2000

Das selbe Problem ergab sich im übrigen bei Newton. Es reagiert identisch.

Nun stellt sich die Frage, wo das Problem sei? Nach oben kann man die FPS einfach immer begrenzen und man hat dann ja seinen funktionierenden Gametimer.

Ja, natürlich kann man das. Ist ja auch nicht das Problem. Das Problem besteht nach Unten hin.

Was kann ich machen, wenn ich LIMITFPS 60 oder LIMITFPS 75 aktiviert habe, aber das Programm durch einen unglücklichen Zufall so viele Objekte erzeugt, daß das Programm auf ~ 30 FPS zusammensackt? In diesem Fall reagiert alles langsamer bzw. in dem geht das ganze Spiel in die Knie.

Was kann ich in dem Fall machen? Wie kann ich das Programm so anweisen, daß es trotz verlangsamter FPS noch immer in den richtigen Rechenschritten und Geschwindigkeiten rechnet?

Gruß

W.
AMD X2 4600, 2 GB Ram, ATI X1950 XTX, XP PRO SP2: GLB Premium 10.beta_dingsi, <(´.´<) Kirby Dance (>`.`)>
http://lostrevenant.blogspot.com
alea iacta est

Quentin

auch wenn ich nicht direkt gefragt bin:

Du könntest z.B. bei sinkenden FPS die Bewegungsschrittweite deiner Objekte erhöhen. z.B. für dein Raumschiff: Wenn du es bei jedem Durchlauf um 5 Pixel versetzt, könntest du diese Schrittweite bei sinkender FPS dynamisch erhöhen. Also bei 50 FPS Schrittweite 7, bei 40 FPS Schrittweite 10 usw. Müsstest halt ausprobieren, was passt.

WPShadow

Tja, das ist eben die Frage, da ich mit Kräften zu arbeiten versuche! Und das wiederum macht es mit Newton dementsprechend schwierig, wenn man

Force[] = 5000 * GT + (??? * fps)

oder so zu schreiben versucht!?!

Deshalb frage ich ja, weil ich inzwischen keine Ahnung habe, wie ich das ganze lösen soll. Ich bin sogar bereit mich auf eine bestimmte FPS - Obergrenze zu einigen, bloß weiß ich nicht, wie ich es lösen soll... =(

Ich hab's sogar schon mal so versucht:

 phi = phi - (1 * (GT * 100)) - (fps / 500000)

Funktioniert auch nicht! Ich bin wirklich am Ende aller Ideen angelangt...
AMD X2 4600, 2 GB Ram, ATI X1950 XTX, XP PRO SP2: GLB Premium 10.beta_dingsi, <(´.´<) Kirby Dance (>`.`)>
http://lostrevenant.blogspot.com
alea iacta est

WPShadow

Ich habe da so eine Idee:

Sagen wir LIMITFPS 60 beschreibt den IST - Zustand. Alles unter dem IST - Zustand führt zu einer Erhöhung einer gewissen Variable, also

60 --> 100% Geschwindigkeit
30 --> 50% Geschwindigkeit

Dürfte ich mit dieser Formel inetwa hinkommen???

Force[] = 5000 * GT + ((60/100) * (60 - FPS)

Gruß

W.
AMD X2 4600, 2 GB Ram, ATI X1950 XTX, XP PRO SP2: GLB Premium 10.beta_dingsi, <(´.´<) Kirby Dance (>`.`)>
http://lostrevenant.blogspot.com
alea iacta est

BumbleBee

Hi lieber WPShadow :)

Ich hätt am Wochenende schon Zeit zum chatten (hoffe ich) .Am besten vielleicht am späten Freitag Nachmittag oder Abend oder gegen Samstagabend.
Könntest du ein kleines Beispiel machen das bei dir eben nicht läuft wie du es willst. Ohne Newton und solchen Kram.Kurz und knapp. Ich muß das sehen weil ich das nicht glauben kann dass das bei dir nicht geht. Oder läuft in Österreich doch die Zeit anders. ;)

Hoffentlich hat Gernot dann auch Zeit.

Cheers
The day will come...

CPU Intel(R) Core(TM) i5-3570k, 3.4GHz, AMD Radeon 7800 , 8 GB RAM, Windows 10 Home 64Bit

WPShadow

Kein Problem! Habe da ein paar fertige Beispiele!

Freitag gegen Abend würde mir gut passen! Vielleicht finden wir ja was raus! Womöglich mache ich ja was falsch oder es hackt irgendwo bei einem Entwurf oder so. Erklären kann ich es mir nämlich nicht...

Quatschen wir Freitag! Freue mich schon!!!
AMD X2 4600, 2 GB Ram, ATI X1950 XTX, XP PRO SP2: GLB Premium 10.beta_dingsi, <(´.´<) Kirby Dance (>`.`)>
http://lostrevenant.blogspot.com
alea iacta est

Schranz0r

da hätte ich auch Zeit ;)
I <3 DGArray's :D

PC:
AMD Ryzen 7 3800X 16@4.5GHz, 16GB Corsair Vengeance LPX DDR4-3200 RAM, ASUS Dual GeForce RTX™ 3060 OC Edition 12GB GDDR6, Windows 11 Pro 64Bit, MSi Tomahawk B350 Mainboard

WPShadow

Supi! Ich schicke euch bzw. stelle dann die Beispiele gleich mal online!!!
AMD X2 4600, 2 GB Ram, ATI X1950 XTX, XP PRO SP2: GLB Premium 10.beta_dingsi, <(´.´<) Kirby Dance (>`.`)>
http://lostrevenant.blogspot.com
alea iacta est

WPShadow

Wie sieht es bei euch Freitag Nachmittag aus??? Ab wann hat denn wer genau Zeit???

Mir reicht schon so ungefähr, da meine Freundin irgendwo hin fahren will und ich ihr irgendeine Zeit nennen sollte...
AMD X2 4600, 2 GB Ram, ATI X1950 XTX, XP PRO SP2: GLB Premium 10.beta_dingsi, <(´.´<) Kirby Dance (>`.`)>
http://lostrevenant.blogspot.com
alea iacta est

Schranz0r

I <3 DGArray's :D

PC:
AMD Ryzen 7 3800X 16@4.5GHz, 16GB Corsair Vengeance LPX DDR4-3200 RAM, ASUS Dual GeForce RTX™ 3060 OC Edition 12GB GDDR6, Windows 11 Pro 64Bit, MSi Tomahawk B350 Mainboard

WPShadow

Würde für mich perfekt passen!!!!!
AMD X2 4600, 2 GB Ram, ATI X1950 XTX, XP PRO SP2: GLB Premium 10.beta_dingsi, <(´.´<) Kirby Dance (>`.`)>
http://lostrevenant.blogspot.com
alea iacta est

Schranz0r

I <3 DGArray's :D

PC:
AMD Ryzen 7 3800X 16@4.5GHz, 16GB Corsair Vengeance LPX DDR4-3200 RAM, ASUS Dual GeForce RTX™ 3060 OC Edition 12GB GDDR6, Windows 11 Pro 64Bit, MSi Tomahawk B350 Mainboard