Добрый день, не могу понять почему игра зависает когда у игрока OnTriggerEnter.
Передвигаю игрока на большой скорости:
void FixedUpdate() {
if (currentWalk != Direction.NONE)
{
checkDirection(); // когда distance <0.1f условие выше не сработает, останавливаю движение
transform.position = Vector3.MoveTowards(transform.position, nextPosition, speed * Time.fixedDeltaTime); //speed = 25f;
}
}
nextPosition = Vector3(0f,0f,7f); // изначально объект на точках 0,0,0, тоесть просто двигаем его на 7 едениц по Z
Объект isKinematic - true, коллайдер есть, не триггер
Объект триггер - isTrigger - true, тэг - finish
void OnTriggerEnter(Collider collider)
{
if (collider.tag == "Finish")
{
success.SetActive(true); //Пробовал сюда любой GameObject, передаю по ссылке в редакторе
}
}
Просто ужасно зависает при столкновении (только на дроид телефоне), почему это может быть?
Пробовал двигать объект и через Rigidbody и в Update, и делать его физическим (убирать кинематику и тп) в любом случае игра зависает на 0.5-1 секунду
Подскажите пожалуйста, как с этим бороться ?
Вообще, даже если делать не SetActive, а выводить в логи, все равно зависает.
Уменьшил скорость с 25 до 5 (speed), все хорошо, но эта скорость обязательна, что можно в этом случае сделать?