• Как я могу создать несколько рэйкастов для одного объекта?

    PragmaGames
    @PragmaGames
    Увлекаюсь Unity.
    Ты можешь использовать Physics.OverlapSphere. Дальность рейкаста будет дальностью видимости персонажа в твоем случае. После из всех полученных объектов найдешь тех которые попадают в поле видимости.

    private bool IsVisibleTarget(Vector3 target)
    {
           directionToTarget = (target - myTransform.position).normalized;
           return Vector3.Angle(entityTransform.forward, directionToTarget) < _viewAngle / 2;
    }


    _viewAngle угол обзора твоего персонажа.

    Я думаю такой метод самый оптимальный.

    Если говорить про твой метод то тебе через цикл нужно пускать лучи с определенным смещением. Минус твоего метода в том что чем дальше объект и больше обзор тем больше лучей придется выпустить с меньшим смещением.
    Ответ написан
    Комментировать