Как на самом деле создаются игры. Как сделать игру интересной и реализовать технически. А главное причём тут математика?
Разборы на пальцах, рабочий код, интерактивы. dev-math.ru
Сотрудничество: @it_bizdev
Post #12
300
📊 AABB — прямоугольник против прямоугольника без тригонометрии
AABB (Axis-Aligned Bounding Box) — прямоугольник, стороны которого
параллельны осям координат. Никакого поворота.
Проверка столкновения двух AABB — четыре сравнения чисел:
Никакого корня квадратного, никаких синусов. Четыре сравнения.
Это причина, по которой большинство игровых движков используют AABB
для первичной проверки (broad phase) даже у сложных объектов.
Минус: не работает если объект повёрнут. Для поворота — OBB или SAT.
Но для большинства платформеров и top-down игр AABB хватает с головой.
#мат_геймдев #МатРазбор #физика #коллайдеры
AABB (Axis-Aligned Bounding Box) — прямоугольник, стороны которого
параллельны осям координат. Никакого поворота.
Проверка столкновения двух AABB — четыре сравнения чисел:
struct AABB
{
public float minX, maxX, minY, maxY;
}
bool Overlaps(AABB a, AABB b)
{
return a.maxX > b.minX && // a не левее b
a.minX < b.maxX && // a не правее b
a.maxY > b.minY && // a не ниже b
a.minY < b.maxY; // a не выше b
}
Никакого корня квадратного, никаких синусов. Четыре сравнения.
Это причина, по которой большинство игровых движков используют AABB
для первичной проверки (broad phase) даже у сложных объектов.
Минус: не работает если объект повёрнут. Для поворота — OBB или SAT.
Но для большинства платформеров и top-down игр AABB хватает с головой.
#мат_геймдев #МатРазбор #физика #коллайдеры
- 🔥 10
- ❤🔥 1