Важной частью физического движка являются столкновения. Когда два объекта сталкиваются друг с другом, движок должен определить действие, такое как остановить объект или оттолкнуть один от другого.
Box2D выполняет столкновений на основе форм. Форма должна быть установлена во время инициализации, то есть, в начале кадра, или когда объект создается. Box2D работает только с одной формой для одного объекта: он не очень хорошо понимает, когда форма объекта изменяется в середине игры. Поэтому Clickteam Fusion 2.5 определяет форму объекта в физическом мире, как только объект создан.
Вы можете выбирать между 3 различными формами для ваших объектов:
- Box
Форма объекта простая коробка. Размером коробки будет размер первого изображения (кадра) объекта. Вы, возможно, должны использовать эту форму, если вы хотите, чтобы объект можно идеально сбалансировать на каждой стороне его центра тяжести: с помощью формы построенный Clickteam Fusion 2.5 может не дать полностью симметричный вид. - Circle
Форма объекта круг. Радиус окружности вычисляется по ширине и высоте первого изображения. Форма Круг позволит вашему объекту прекрасно катиться по земле. - Shape of first image
С этой опцией, Clickteam Fusion 2.5 анализирует первое изображение объекта, и преобразует его в форму, которая может быть понятна Box2D. Чтобы избежать замедления движка, количество точек, определяющих эту форму ограничивается 8, так что сложная форма объекта может быть оценена грубо в качестве формы физического мира.
Box2D не принимает вогнутые формы (когда вы делаете такую форму, это вызывает на верную обработку столкновений). Это является причиной того, что алгоритм, используемый Clickteam Fusion 2,5 для расчета формы объекта гарантирует, что окончательная форма выпукла. В результате, если объект вогнутый, то вычисленная форма не будет точно такой же, как форма объекта.
Для создания вогнутых объектов в вашем приложении, вы должны будете разделить вогнутый объект на несколько небольших выпуклых объекта.
Алгоритм обнаружения формы в Clickteam Fusion 2,5 может не оценить форму объекта точным образом в определенных случаях, как показано здесь:
- Speed
Box2D нацелен определить простую форму (квадрат или круг), а не форму многоугольника. Это позволит упростить расчеты, и ускорить работу движка. Поэтому, если вы планируете создать сложную игру с большим количеством объектов, необходимо решить вопрос о преобразовании объектов в форму квадрата или круга. И составлять сложную форму из простых
мне все нравиться