Суть задания заключается в визуализации такого физического процесса, как полет мяча по параболе. Визуализация строится на основе данных, которые были просчитаны в математической модели. Исходные данные хранятся в папке Ways
.
- Сцена содержит объект Ball, который представляет из себя сферу. При запуске сцены, Ball находится в поле видимости камеры. Каждый раз, по нажатию на Ball, он должен проследовать по траектории указанной в файле
ball_path.json
. - Запуск движения должен работать только если Ball находится в состоянии покоя, т.е. если он еще не начал или уже закончил движение, но не во время движения. Скорость движения Ball по траектории должна быть выбрана по вашему усмотрению.
- Камера должна всегда следовать за Ball и должна быть сфокусирована на нем.
- Во время движения Ball по траектории отображать слайдер на экране. Предоставить с помощью него возможность регулировать скорость движения Ball по траектории. Когда значение слайдера 0, движение Ball должно быть приостановлено и продолжено при значении слайдера > 0. При значении 1, скорость движения Ball будет максимальной.
- Нарисовать траекторию движения Ball. Траектория рисуется, по мере движения Ball. То есть должна быть отрисована только та часть пути, которую прошел Ball до текущей точки. Когда Ball находится в начальной точке, траектория его движения не рисуется.
- При двойном нажатии на Ball он перемещается в начальную точку траектории движения. Двойное нажатие работает как в момент движения, так и в момент покоя Ball. Если Ball был в движении, то движение отменяется.
- Добавить в сцену еще 3 объекта Ball, каждый из которых будет двигаться по траектории указанной соответственно в файлах
ball_path2.json
,ball_path3.json
,ball_path4.json
. - Добавить возможность вращать камеру по орбите вокруг Ball с помощью мышки (macOS/Windows) или на тач дисплее (iOS/Android).
- Добавить возможность переключать камеру между всеми объектами Ball в сцене. Переход осуществляется с помощью 2-ух кнопок
Left
иRight
на экране. Если переключение камеры происходит во время движения того Ball, на котором сфокусирована камера в текущий момент, скорость движения этого Ball становится равна 0.
- Материалы хранятся в папке Materials
- Префабы в папке Prefabs
- В папке Scripts находятся 3 скрипта: BallMove.cs отвечает за движение Ball, ChangeCamera.cs отвечает за смену камеры, RotateCamera.cs отвечает за поворот камеры вокруг орбиты Ball
- Были выполнены все требования
- Проект был реализован под платформу Windows.
- Версия Unity 2018.2.16f1
1)Следование камеры за Ball и вращение вокруг него
2)Движение всех 4 Ball по своим траекториям, а также визуализации каждой траектории цветом материала этого Ball
3)Возвращение Ball в начальную точку, как в движении, так и в покое по даблклику
4)Переключение камеры и изменение скорости на ноль Ball, на котором была сфокусирована камера.
5)Изменение скорости движения сферы с помощью слайдера. При значении слайдера 0 движение Ball останавливается, а при положительном возобновляется.