2016-04-08 3 views

Antwort

0

Ich nehme an, Sie haben einige Frame-Update-Methode, die jeden Frame aufgerufen wird, und Sie können auch berechnen, wie viel Zeit (Sekunden) seitdem verstrichen ist. Dann können Sie wie folgt vorgehen:

  1. -Setup eine Flag-Variable namens contactInProgress, auf false.
  2. Legen Sie eine Zählervariable mit dem Namen contactDuration fest, und setzen Sie sie auf 0.0.
  3. Wenn Sie eine Kollision feststellen, setzen Sie contactInProgress auf true und contactDuration auf 0.0.
  4. Wenn Sie keine Kollision mehr feststellen, setzen Sie contactInProgress zurück auf false und setzen Sie contactDuration auf 0.0 zurück.
  5. Überprüfen Sie in der Rahmenaktualisierungsmethode, ob contactInProgresstrue ist. Ist dies der Fall, aktualisieren Sie den Wert contactDuration, indem Sie die seit dem letzten Frame verstrichene Zeit hinzufügen. Überprüfen Sie abschließend, ob contactDuration größer als gleich 2.0 ist. Wenn ja, mach dein Ding.
Verwandte Themen