Подскажите, пожалуйста, как лучше всего решить вот такую задачу:
есть gameobject, например, кирпич - длинной примерно 12 м.,
есть камера, размещена перпендикулярно кирпичу:
- пользователь может менять FoV камеры (10 > FoV< 60);
- камера неподвижна, но может поворачиваться на определенный угол по ости Y, так, чтобы границы (начало, конец) кирпича, камера никогда не видела,
фактический угол поворота камеры влево или вправо определяется длинной объекта т.е. кирпича.
Суть в чем, определить угол поворота камеры в зависимости от объекта, который находится перед камерой. Камера должна смотреть всегда на этот объект и может поворачиваться влево или вправо, в зависимости от длинны объекта и как только камера "подходит" к какому-то из краев объекта - должна останавливаться, чтобы объект попадал целиком в камеру, т.е. не выходить за границы объекта.
Решение такое пришло, пустить два луча (в зависимости от текущего FOVa камеры) по оси Z камеры в сторону кирпича и как только один из лучей увидит "конец" объекта, останавливать камеру.
Возможно как-то по-другому решить данную задачу?