Mehrere Instanzen einer Methode?
-
Ich weiss nicht, ob das schon the Thread-Programmierung geht, aber das ist mein aktuelles Problem:
Ich habe eine Methode, die einen Spielstein auf einem Spielfeld verschwinden lässt bzw. ausfaded. Dafür braucht diese Methode etwa 1000ms. Jetzt kann es aber passieren, dass die gleiche Methode vor Ablauf der 1000ms nochmal aufgerufen wird, weil ein zweiter Spielstein ausgefaded werden will. Der erste Stein stoppt also einfach und der zweite Stein macht weiter.
Wie bekomme ich es nun hin, dass die Methode auf jeden Fall zu Ende laufen kann und eine zweite nicht ausgebremst wird? Es müssten also mehrere dieser Methoden gleichzeitig laufen können.
Ich will nicht eine ganze Klasse dafür erzeugen, das wäre zu aufwendig, sonst könnte ich ja jedesmal eine neue Instanz erzeugen. Das geht sicher einfacher oder?
-
Threading braucht man dafür sicherlich nicht. Du mußt halt einen Counter in deinen Spielstein einbauen, und der wird dann runter gezählt. Und du gehst dann halt eh alle Spielsteine in deiner Gameloop durch. Der eine Stein hat den Counterwert 50 (muß noch faden), der andere 1 (ist gleich fertig mit fading).
Ein Spiel kommt praktisch ohne Threads aus.
-
Dann sollte ich doch dabei sagen, dass ich Coin3D benutze und meine besagte Methode von einem AnimationSensor abhängt. Ich kann nicht 8800 Steine in 1/16 Sekunden durchrechnen hmmmmm....
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Spiele-/Grafikprogrammierung verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
JPSelter schrieb:
Dann sollte ich doch dabei sagen, dass ich Coin3D benutze und meine besagte Methode von einem AnimationSensor abhängt. Ich kann nicht 8800 Steine in 1/16 Sekunden durchrechnen hmmmmm....
Brauchst doch nur die animierten Durchrechnen.
Bye, TGGC