@Dcat_me
обесняйте по-проще пойжалуйста.

Как узнать нормаль поверхности на которой стоит персонаж?

У меня есть персонаж:
64c139217efaa563599227.jpeg
Мне нужно найти нормаль или нормали на которых он стоит, сейчас использую один raycast, но он не всегда подходит(как тут):
64c13a67b5f65943306074.jpeg
И тут:
64c13b1058b2c769651541.jpeg
И мне нужно другой способ(например находить точки коллизии) или просто выпускать его в правильном месте.
  • Вопрос задан
  • 182 просмотра
Пригласить эксперта
Ответы на вопрос 1
WNeZRoS
@WNeZRoS
У Collider2D есть метод GetContacts.

Результатом этого метода будет массив или список ContactPoint2D.
У ContactPoint2D есть поле normal - нормаль поверхности в точке коллизии.

Collider2D collider;

var contacts = new List<ContactPoint2D>();
collider.GetContacts(contacts);

foreach (var contact in contacts)
{
    var surfaceNormal = contact.normal;
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы