Gamestudio Links
Zorro Links
Newest Posts
Change chart colours
by 7th_zorro. 05/11/24 09:25
Data from CSV not parsed correctly
by dr_panther. 05/06/24 18:50
Help with plotting multiple ZigZag
by degenerate_762. 04/30/24 23:23
AUM Magazine
Latest Screens
The Bible Game
A psychological thriller game
SHADOW (2014)
DEAD TASTE
Who's Online Now
2 registered members (AndrewAMD, 1 invisible), 1,086 guests, and 5 spiders.
Key: Admin, Global Mod, Mod
Newest Members
firatv, wandaluciaia, Mega_Rod, EternallyCurious, howardR
19050 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
Wie kan ich die Zeit zurückdrehen ? #397741
03/23/12 00:34
03/23/12 00:34
Joined: Dec 2008
Posts: 31
Austria
H
Heracles Offline OP
Newbie
Heracles  Offline OP
Newbie
H

Joined: Dec 2008
Posts: 31
Austria

Ich denke ihr wißt was gemeint ist.

So wie in Prince of Persia

Der Spieler drückt einen Knopf (egal C ) und solange dieser gedrückt wird , läuft die Zeit rückwärts ap.

Was ist Zeit aus der sicht eines Programmieres und wie nehme ich darauf einflus ?

Ich weiß zwar das Zeit als frames per second ferstanden wird aber das bringt mich bei diesem Problem nicht weiter.

Hoffe ihr könnt mir helfen .


Danke im forraus.

Heracles

Re: Wie kan ich die Zeit zurückdrehen ? [Re: Heracles] #397746
03/23/12 05:11
03/23/12 05:11
Joined: Jan 2003
Posts: 4,305
Damocles Offline
Expert
Damocles  Offline
Expert

Joined: Jan 2003
Posts: 4,305
Also Zeit aus Sicht der Thermodynamik ist das Zunehmen von Entropie.
Aus Sicht eines Spieles das Ändern von Informationen in einem
Gewissen Zyklus.

Die klassiche gameloop.

->change State >show State ->loop-back

Du Änderst also die Spielwelt beim Vorranschreiten der Zeit.
Das System wird verändert und die alten Zustände sind vergessen.
Deshalb wird Dir auch keine der Zeitfunktionen von acknex hier helfen, die ja nur die "positiven" Zeitschritte beeinflussen.
Denn um die Zeit zurück zu "drehen" muß das Spiel einen
Zustand aus der Vergangenheit annehmen.

Das einfachste (jedes Spiel hat ja einen Zeit-zurückdreh Mechanismus)
ist Speichern -> Laden. Aber das ist ja nicht das Ziel hier.

Du könntest den Zustand des Spieles in bestimmten Zeitschritten
(vor allem die Wichtigen Sachen wie Spielerchar, Gegner, Effekte) aufzeichnen.
Bei einem Zeitsprung mußt zu den alten Zustand wieder einsetzen.

Cooler sieht es natürlich aus wenn Du eine Interpolation zwischen dem aktuellen und dem vorherigen Zustand machen kannst.
-> Oder man Zeichnet halt für jeden Frame jedes Positions und Animationsattribut der Entities auf,
und spielt dann diese Frame-Positionsdaten rückwärts ab.

Hm, versuch mal als erstes folgendes:
Schreibe eine Funktion die folgende Sachen alle 10 Sekunden speichert:

#x,y,z,pan,tilt,roll,animationsframe

des Spieler
und der Gegner

Und dann versuche auf Knopfdruck den zustand des Spielers
mit den gespeicherten Werten zu überschreiben.

Probematischer wirds bei der KI oder der Statemachine des Spielers im allgemeinen.
Da muß man auch den alten Zustand wieder einsetzen können.

naja, ein paar Gedanken dazu...


Re: Wie kan ich die Zeit zurückdrehen ? [Re: Damocles] #397750
03/23/12 09:49
03/23/12 09:49
Joined: Mar 2008
Posts: 2,247
Baden Württemberg, Germany
Espér Offline
Expert
Espér  Offline
Expert

Joined: Mar 2008
Posts: 2,247
Baden Württemberg, Germany
PoP dreht die zeit auch nicht wirklich zurück.
Es speichert koordinaten von allen Objekten im Sichtfeld in eine art array struct.
Sobald man die Zeit "zurückdreht", werden die Informationen von hinten nach vorn ausgelesen. Dabei werden die Koordinaten und Aktionen verglichen und angepasst. Der Rücklauf in PoP ist keinesfalls flüssig. Schaus dir genauer an, dann erkennst du kleine Bewegungssprünge.


Selling my Acknex Engine Editions (A7 Com & A8 Pro):
>> click here if you are interested <<

Moderated by  HeelX, Lukas, rayp, Rei_Ayanami, Superku, Tobias, TWO, VeT 

Gamestudio download | chip programmers | Zorro platform | shop | Data Protection Policy

oP group Germany GmbH | Birkenstr. 25-27 | 63549 Ronneburg / Germany | info (at) opgroup.de

Powered by UBB.threads™ PHP Forum Software 7.7.1