Wpis z mikrobloga

#naukaprogramowania #cpp
mam silnik gry, i funkcję która aktualizuje pozycje wszystkich obiektów, ale wymaga do tego informacji ile czasu minęło od ostatniego wywołania tej funkcji.

W jaki sposób to zmierzyć?
miałem pomysł:
static timestamp t1
elapsed = duration_cast(t2 - t1)
static timestamp t2
update(elapsed)

ale nie umiem tego zakodować. Jak inaczej to można rozwiązać?
  • 8
@RedveKoronny:
def update():
elapsed = datetime.now() - last
...
last = datetime.now()

jak ma być od wywołania a nie wykonania to
def update():
now = datetime.now()
elapsed = now - last
last = now
...
@RedveKoronny: możesz sobie last zdefiniować gdzie ci sie podoba i przekazać wskaźnik jako parametr do funkcji, w jakim języku to piszesz to już sam musisz wiedzieć ()
zrób sobie klasę wrappera, która będzie zapisywać timestampa ostatniego wywołania i do doczytaj sobie o perfect forwardingu, bo taki wrapper dobrze, żeby był generyczny, czyt. żebyś mógł go z dowolną funkcją wywoływać.