Вопросы с тегом «collision-detection»

12
Что такое «поля расстояния» и как они применимы к обнаружению столкновений?

Я искал несколько эффективных методов обнаружения столкновений в сцене со статическими и динамическими объектами, когда натолкнулся на «поля расстояния». Я пытался найти и понять эту концепцию, но я мог найти только статьи, написанные на очень сложном языке. Может ли кто-нибудь объяснить простыми...

12
Есть ли хороший способ получить пиксельное обнаружение столкновений в XNA?

Есть ли хорошо известный способ (или, возможно, многократно используемый фрагмент кода) для идеального пиксельного обнаружения столкновений в XNA? Я предполагаю, что это также использовало бы полигоны (прямоугольники / треугольники / круги) для первого прохода, быстрого теста на столкновения, и...

11
Показывает ли столкновение в замедленном режиме вычислительную релаксацию?

Во многих гоночных играх (например, Burnout Paradise ), когда должно произойти столкновение, игровой процесс автоматически переключается на медленное движение и продолжается в медленной последовательности до тех пор, пока столкновение не будет завершено. Я всегда думал, что это для эффекта. Вы не...

11
Изометрическое обнаружение столкновений

У меня возникли проблемы с попыткой обнаружения столкновения двух изометрических плиток. Я попытался нанести линии между каждой точкой на плитке, а затем проверить их на перехват, однако это не сработало (возможно, из-за неправильной формулы). Поразмыслив сегодня, я верю, что думаю об этом, и...

11
Почему Unity OnCollisionEnter не дает мне поверхностные нормали, и какой самый надежный способ их получить?

Событие Unity по столкновению дает вам объект Collision, который дает вам некоторую информацию о произошедшем столкновении (включая список ContactPoints с нормалью попадания). Но то, что вы не получаете, это поверхностные нормали для коллайдера, который вы ударили. Вот скриншот для иллюстрации....

11
Как я могу предотвратить скольжение колес автомобиля raycast вбок?

Я писал нереалистичный автомобильный физический движок в качестве учебного упражнения, используя эту статью в качестве справочного материала. У меня есть машина, которая правильно сталкивается с рельефом и применяет правильные силы подвески для каждого колеса. Моя следующая проблема - предотвратить...

11
Пример Microsoft XNA Platformer, правильно ли реализовано обнаружение столкновений?

Пример, предоставленный Microsoft, выглядит так, как будто обнаружение столкновения (из того, что я вижу) будет иметь небольшую ошибку. Когда пользователь сталкивается с непроходимой плиткой, вычисляется глубина пересечения. Меньшее из значений глубины X и Y используется, чтобы зафиксировать...

11
Как отделить сталкивающиеся объекты, не создавая больше столкновений

Предположим, я использую простую дискретную систему обнаружения столкновений, в которой я перемещаю все объекты, а затем проверяю наличие столкновений. Я хочу, чтобы любые сталкивающиеся объекты были отделены (конечно) и назначены соответствующие скорости реакции (отскок, скольжение, остановка и т....

11
Проблема обнаружения столкновения по окружности

В настоящее время я занимаюсь разработкой клона прорыва и столкнулся с препятствиями на пути обнаружения столкновения между шаром (круг) и кирпичом (выпуклый многоугольник), работающим правильно. Я использую тест обнаружения столкновения Circle-Line, где каждая линия представляет и край на кирпиче...

11
Как я могу реализовать быстрое и точное обнаружение столкновений 2D?

Я хорошо знаю, как определять, сталкиваются ли два или более 2D-объекта, но мне интересно, как решить, проверять ли столкновение. В предыдущих проектах я просто проверял каждый объект на предмет любого другого объекта (я знаю, уровень глупости O (n ^ 2)), и это создавало не очень плавный игровой...

11
2D пространственное разделение альтернатив пространственным хешам и квадродеревам

Я пытался реализовать алгоритм пространственного разделения в моей игре, но и пространственные хеши, и квадродерево - это не то, что я ищу. Размер моего уровня не должен иметь ограничения (только пределы Int32). Мне нужен алгоритм пространственного разделения, который не нуждается в «ширине уровня»...

11
Как сделать так, чтобы хорошие парни атаковали только плохих парней и наоборот?

В моей игре много разных хороших парней и много разных плохих парней. Все они будут обстреливать друг друга снарядами, но я не хочу, чтобы какой-либо случайный побочный ущерб был нанесен для любого выравнивания. Поэтому плохие парни не должны быть в состоянии ударить / повредить других плохих...

11
Как эффективно проверить, находится ли точка внутри повернутого прямоугольника?

Часть ради оптимизации, часть для целей обучения, я позволю себе спросить: как наиболее эффективно проверить, находится ли 2D-точка Pвнутри повернутого 2D-прямоугольника XYZW, используя C # или C ++? В настоящее время я использую алгоритм «точка в треугольнике», описанный в книге «Обнаружение...

11
Заставьте игрока бегать по лестнице плавно

У меня есть игра 2D-платформа, где игрок всегда бежит направо, но местность не всегда горизонтальная. Пример: Я реализовал систему столкновений с ограничивающим боксом, которая просто проверяет пересечения с боксом игрока и другими блоками, чтобы остановить бег игрока, если вы столкнетесь с большим...

11
Как определить направление столкновения двухмерных прямоугольных объектов?

После этого вопроса мне нужна дополнительная помощь. Как я могу узнать, с какой стороны прямоугольника произошло столкновение, и реагировать соответствующим образом? Синие стрелки - это пути, по которым будут следовать некоторые круглые объекты, если до и после столкновения с рамкой. Как я могу...

10
Столкновение прямоугольник ответ

У меня трудности с получением подвижного прямоугольника, который сталкивается с несколькими прямоугольниками. Я использую SFML, и у него есть удобная функция, intersectsкоторая вызывает 2 прямоугольника и возвращает пересечения. У меня есть вектор, полный прямоугольников, с которым я хочу, чтобы...

10
Экстраполяция разрывов обнаружения столкновений

До применения экстраполяции к движению моего спрайта, мое столкновение работало отлично. Однако после применения экстраполяции к движению моего спрайта (для сглаживания) столкновение больше не работает. Вот как все работало до экстраполяции: Однако после того, как я реализую свою экстраполяцию,...

10
Breakout Collision: обнаружение стороны столкновения

Я пишу клон с прорывом (моя первая игра) и совершенно не понимаю, как выяснить, какая сторона кирпича была поражена. У меня есть метод обнаружения столкновений, который выглядит следующим образом: DetectCollision(Object a, Object b) x = distance(a.x, b.x); y = distance(a.y, b.y); if (x is smaller...

10
Как я могу проверить, лежит ли точка между двумя параллельными линиями?

В игре, которую я разрабатываю, есть взрыв, который стреляет из начальной точки в направлении мыши. Ширина этого взрыва всегда будет одинаковой. Внизу экрана (то, что в данный момент) движутся квадраты, на которые должен воздействовать взрыв, контролируемый игроком. В настоящее время я пытаюсь...