Я хочу реализовать какое-то время пули для моего приложения box2d, погуглив, я нашел сообщение, в котором они предлагают изменить временной шаг (примерно с 1/30 до 1/60), но это быстро помечено как плохая практика, все, что мне нужно это базовый триггер включения / выключения для замедленного движения, есть идеи?
Как реализовать пулевое время в Box2d?
comment
Моделирование менее точное, я думаю, что расчет aabb будет неправильным для нескольких временных шагов и может позволить пробивать туннели даже телам пуль, а также, возможно, такие вещи, как теплый запуск, будут немного испорчены. Но в случае с Рикардо это может быть просто нормально, я бы сказал, попробуйте и беспокойтесь о любых проблемах, если они действительно появятся.
- person iforce2d   schedule 04.09.2011
comment
Круто попробую, посмотрим что получится спасибо
- person Ricardo Sanchez   schedule 06.09.2011
comment
Ну, технически для пулевого времени шаг по времени был бы короче и, следовательно, вычисления стали бы более точными, но суть в том, что поведение всего изменится (иногда незаметно и иногда заметно), потому что, изменяя временной шаг, вы меняете характер симуляции. Это похоже на изменение скорости света во всей Вселенной. Это будет #*$& вещи вверх. Если, конечно, вы этого не хотите.
- person Steven Lu   schedule 22.07.2014
Ответы (2)
Начиная с Box2D 2.0+ изменение временного шага не оказывает негативного влияния на моделирование, поэтому просто используйте меньший шаг времени.
person
ClassicThunder
schedule
21.07.2014
Работает впритык. Выбрасывает детерминизм из окна в лавовую яму.
- person Steven Lu; 22.07.2014
Это можно сделать, изменив временной шаг.
Изменение временного шага немного изменит симуляцию и сделает ее менее детерминированной.
Приемлемо ли это, зависит от того, насколько важно, чтобы ваша физическая симуляция была детерминированной.
Если это однопользовательская игра, а не хардкорная, вам, вероятно, не о чем беспокоиться.
Я использую пулевое время в одиночном шутере для iOS, и все в порядке. Вселенная не коллапсирует.
person
DylanVann
schedule
22.07.2014