🤔 Загадка: почему быстрый персонаж проваливается сквозь пол?
Коллайдеры настроены правильно. На низкой скорости всё работает.
Но разогнать персонажа — и он прошивает платформу насквозь.
Пауза — подумай секунду.
...
Ответ: Tunneling (туннелирование).
Физика в играх дискретная: каждый кадр объект перемещается на velocity * deltaTime.
Если объект за один кадр перемещается дальше, чем толщина коллайдера —
движок просто не замечает пересечения. Объект был над полом, стал под ним.
Столкновения не было.
Три решения:
1. Continuous collision detection (CCD) — движок проверяет весь путь, не точку.
Дорого по производительности.
2. Ограничить максимальную скорость так, чтобы за кадр объект не мог
пролететь сквозь коллайдер.
3. Raycast в направлении движения перед шагом — рукопашная CCD.
Знал о туннелировании раньше? 👇
#мат_геймдев #физика #коллайдеры #ОшибкаНедели
Post #13
293
- 🔥 5
- ❤🔥 2