Лаборатория • Свободный Эксперимент

Большая Физическая Песочница

Все рассмотренные концепции в одном месте. Спавните твердые тела, желейные кубы, верёвки и капли жидкости. Меняйте вектор гравитации, включайте замедление времени (Slow-Mo) и хватайте любые объекты курсором!

🧪 Интерактивный Полигон

Кликните по пустому месту холста выбранным инструментом, чтобы создать объект, или перетаскивайте существующие тела мышкой.

🖱️ Клик по пустому месту — спавн | Зажмите и тяните объект — бросок
Объектов на сцене: 0
Инструмент создания (Клик)
Физические условия
Скорость времени 1.00x
Оверлеи отладки

Архитектура 2D физического движка

Внутри главного игрового цикла (Game Loop) каждый кадр физики строго разделен на три этапа:

  1. Интеграция сил: прикладываем гравитацию, сопротивление воздуха и импульсы управления к скоростям тел ($v += a \cdot dt$).
  2. Обнаружение столкновений (Detection): находим все пересекающиеся пары и строим список контактных манифолдов (нормаль, глубина).
  3. Решатель связей и контактов (Solver): за несколько итераций расталкиваем тела (депенетрация) и рассчитываем импульсы отскока с трением.

Чек-лист для собственной реализации:

  • ✅ Используйте фиксированный шаг по времени (Fixed Timestep dt = 1/60) с интерполяцией рендера, чтобы физика вела себя детерминированно независимо от FPS.
  • ✅ Для твердых тел (машин, ящиков, бильярда) выбирайте Semi-Implicit Euler + Impulse Resolution.
  • ✅ Для мягких тел, волос, канатов, мостов и одежды выбирайте Verlet Integration + Distance Constraints.
  • ✅ Для воды комбинируйте пружинную сетку высот для волн с силой Архимеда.
← Назад: 2D Жидкости Вернуться в начало: Основы →
init