Chcę zaimplementować pewien rodzaj czasu na pocisk dla mojej aplikacji box2d, googling dookoła znalazłem post, który sugerował zmianę timestepu (coś jak od 1/30 do 1/60), ale szybko został oznaczony jako zła praktyka, wszystkie Potrzebuję podstawowego wyzwalacza włączania/wyłączania w zwolnionym tempie, wszelkich pomysłów?Jak zaimplementować czas wypunktowania w Box2d?
Odpowiedz
Od Box2D 2.0+ zmiana czasu nie ma negatywnego wpływu na symulację, więc po prostu użyj mniejszego kroku czasowego.
Działa w szczyptę. Wyrzuca determinizm z okna i do dołu lawowego. –
Zostanie to wykonane poprzez zmianę czasu.
Zmiana czasu spowoduje nieznaczną zmianę symulacji i sprawi, że będzie mniej deterministyczny.
To, czy jest to dopuszczalne, zależy od tego, jak istotna jest symulacja fizyki.
Jeśli jest to gra dla jednego gracza, a nie gra hardcore, prawdopodobnie nie musisz się tym martwić.
Używam czasu postrzałowego w strzelance dla jednego gracza iOS i jest w porządku. Wszechświat się nie załamuje.
Dlaczego jest to zła praktyka? – Andrew
Symulacja jest mniej dokładna, myślę, że obliczenia aabb byłyby niewłaściwe przez kilka taktów i mogłyby pozwolić na tunelowanie nawet pocisków, a także, być może, rzeczy takie jak ciepły rozruch byłyby nieco pomieszane. Ale w przypadku Ricarda może to być po prostu w porządku, powiedziałbym, że powinienem spróbować i martwić się o wszelkie problemy, jeśli się pojawią. – iforce2d
Fajnie, spróbuję i zobaczę, co się stanie, dzięki –