Вопрос

У меня есть проблема, похожая на http://farseerphysics.codeplex.com /Thread/View.aspx?ThreadId=72364

У меня есть геометрическая фигура игрока-прямоугольника, и многие геометрические фигуры прямоугольника выстроены рядом друг с другом.

Иногда, когда геом игрока пересекается между ними, он, кажется, обрезает углы гема плитки и в результате поворачивается.

Даже при переключении момента инерции на бесконечность, который препятствует вращению, игрок делает "прыжки" когда он обрезает край.

Вот снимок экрана с отключающим изображением http://notspike.com/PrototypeG/trip. PNG

Есть ли какое-то решение для этого? Я пробовал форумы Farseer, но это кажется довольно неактивным

Вот ссылка на видео с использованием круга для игрока

http://www.notspike.com/PrototypeG/trip.avi

Это было полезно?

Решение

Я бы посоветовал вам избегать использования маленьких плиток, расположенных рядом друг с другом, для геометрии столкновения уровня. Например, хотя визуально ясно, что вы используете плитки, слово " floor " из видео лучше всего описать как длинный непрерывный прямоугольник. Таким образом, у вас вообще нет этой проблемы ... математика с плавающей запятой уже достаточно неточна, а геометрия мозаичного столкновения просто просит, чтобы это пошло не так: -)

Другие советы

У меня такое уже было, когда мои фигуры были достаточно маленькими или движения были достаточно быстрыми для интервала между физическими вычислениями " тики " быть достаточным, чтобы позволить объектам перекрываться до того, как обнаружится столкновение.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top