Добрый день. Используется Unity2d. Работаю над реализацией следующего процесса. Есть персонаж. Он ходит по карте (tilemap2d). При перемещении его скорость может меняться в зависимости от типа тайла.
Пытался реализовать двумя путями: 1. Добавил box collider 2d, флаг is trigger НЕ ставил. Поставил обработчик OnCollisionEnter2D Он ловится когда персонаж касается тайла. Но пройти по нему не может.
2. Добавил box collider 2d, проставил флаги is trigger. Поставил обработчик OnTriggerEnter2D(Collider2D collider) Персонаж проходит по тайлам, событие срабатывает. Но коллайдер - не конкретного тайла, а всего tilemap. Нашел несколько описаний как найти конкретный тайл ( из коллайдера получить точки пересечения, дальше у tilemap запросить по координатам конкретный тайл) Выглядит громоздко.
Возможно есть какое-то более аккуратное и красивое решение?