Wpis z mikrobloga

#matematyka #gamedev #cpp
jak rozwiązywać kolizje prostokątów w 2d?

wykrywanie kolizji mi działa bez zarzutu, ale jeżeli chodzi o rozwiązywanie ich, to albo prostokąty nie mogą się do siebie dosunąć, albo się w sobie blokują i tyle wychodzi z kolizji.
Patrzyłem na sci-hubie za jakimiś papierami z tym, ale nie znalazłem nic interesującego
  • 4
@RedveKoronny: zerknij na to.
Nie jest to może kod napisany najlepiej, ale idea implementacji jest tam (imo) oddana dobrze. Patrz funkcja MoveBox. Zauważ, że przemieszczenie jest rozbite na wiele bardzo małych przemieszczeń (Fraction). I po każdym takim przemieszczeniu sprawdzana jest kolizja (TestBox). To właśnie minimalizuje takie "niedosunięcia". Tutaj też dodali odbijanie się przy zderzeniu (Elasticity).