| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Developer Registriert seit: Sep 2001 Ort: Unterhaching/München
Beiträge: 513
| [AS2] Zeitbasiertes Spiel MAC PC Unterschied
Hi. Ich hab nen neues Spiel in der Produktion und jetzt kommt gerade der Bugbericht rein und sagt: Auf MAC läuft das Spiel langsamer als auf PC, aber die Zeit läuft gleich. Das Lenken des Fahrzeugs und Kollisionsabfrage etc ist framebasiert. Und da Mac weniger Frames pro Sekunde schafft, ist mir das Problem klar. Wie kann man dem Problem entgegnen? Ist es besser, alles Interval basiert zu machen - wird dann der MAC/PC Unterschied aufgehoben? Gruß |
| | |
| | #2 (permalink) |
| Neuer User Registriert seit: Mar 2006
Beiträge: 1.573
|
eig sollte es klappen, wenn du die verstrichene zeit von frame zu frame berücksichtigst: ActionScript:
![]() anderer vorschlag: du könntest dir die erreichten und die gewollten fps ausgeben lassen das mit den gewollten wäre jetzt leider nur unter AS3 möglich. weiß nicht wie das in AS2 aussieht. dann könntest du anhand des unterschiedes die verzögerung nachholen.
__________________ Currently working on: - --- --- ----------------------------------------------------------------- ActionScript 3.0, C++, Java, Delphi Geändert von _crypto_ (19-10-2008 um 00:09 Uhr) |
| | |
| | #3 (permalink) |
| Developer Registriert seit: Sep 2001 Ort: Unterhaching/München
Beiträge: 513
|
danke für die idee. aber komme ich dann nicht am ende mit einer lösung raus, die auch nicht ganz stimmt? Wenn der Player seine Framezahl erniedrigt, dann wird doch auch die Rechnung hier zu einem anderen Ergebnis kommen, als bei höherer Framezahl. Hat sonst jemand Erfahrung, wie Time basierte Spiele ordentlich getimed werden? |
| | |
| | #4 (permalink) |
| Neuer User Registriert seit: Mar 2006
Beiträge: 1.573
|
naja so amcht man das aber eig ![]() den cpu befragen wie viel zeit seit dem letzten frame vergangen ist. wie gesagt die AS3 methode ist sicherlich stabiler aber du benutzt ja as2 und da fällt mir nur die andere methode ein, hasse mal gegooglet? also allgemein ohne jetz as spezifisch zu werden?
__________________ Currently working on: - --- --- ----------------------------------------------------------------- ActionScript 3.0, C++, Java, Delphi |
| | |
| | #5 (permalink) |
| Developer Registriert seit: Sep 2001 Ort: Unterhaching/München
Beiträge: 513
|
Ist bisher Neuland für mich. Gut, wenn Du sagst, dass man das auch generell so macht, dann werd ich mal schauen. Generell danach suchen, also wo Frames garkeine Rolle spielen? Also hat man ähnliche Probleme bei in C geschriebenen Spielen oder wie? Also so kanns es zumindest nicht bleiben - wäre schon recht unprofessionell, wenn MAC User das Spiel niemals in der Zeit beenden könnten, wie PC User. Läuft der Flash Player dann auf MAC unter Windows XP in Parallels wieder gleich schnell? Haha...verrückte Welt... |
| | |
| | #6 (permalink) |
| DeRailed Registriert seit: Sep 2006
Beiträge: 321
| Natürlich, das Grundproblem ist hier nicht anders, denn die Prozessoren sind ja alle unterschiedlich schnell. Deswegen nimmt man eigentlich immer die seit dem letzten Frame verstrichene Zeit als Basis für alle Berechnungen – so wie crypto es schon vorgeschlagen hat (ich würde das etwas anderes implementieren, aber das tut nichts zur Sache). Früher war auch das Rendern mit einer möglichst konstanten Framerate verbreitet, es hat allerdings in letzter Zeit an Popularität verloren, da die Nachteile (einen davon hast du schon zu spüren bekommen) die spärlichen Vorteile um einiges übersteigen.
__________________ Zum Thema Code im Forum posten: Mit den [AS]-Tags bekommt man eine tolle farbige Anzeige, bei der sogar die Zeilennummern eingetragen sind. Wie man aus [AS]-Tags Code direkt ohne die Zeilennummern kopiert: Einfach auf den 'Beitrag zitieren'-Knopf drücken und Spaß mit Copy&Paste haben ;) |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |