Как реализовать пулевое время в Box2d?

Я хочу реализовать какое-то время пули для моего приложения box2d, погуглив, я нашел сообщение, в котором они предлагают изменить временной шаг (примерно с 1/30 до 1/60), но это быстро помечено как плохая практика, все, что мне нужно это базовый триггер включения / выключения для замедленного движения, есть идеи?


person Ricardo Sanchez    schedule 02.09.2011    source источник
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
comment
Работает впритык. Выбрасывает детерминизм из окна в лавовую яму. - person Steven Lu; 22.07.2014

Это можно сделать, изменив временной шаг.

Изменение временного шага немного изменит симуляцию и сделает ее менее детерминированной.

Приемлемо ли это, зависит от того, насколько важно, чтобы ваша физическая симуляция была детерминированной.

Если это однопользовательская игра, а не хардкорная, вам, вероятно, не о чем беспокоиться.

Я использую пулевое время в одиночном шутере для iOS, и все в порядке. Вселенная не коллапсирует.

person DylanVann    schedule 22.07.2014