Академический Документы
Профессиональный Документы
Культура Документы
Development
Senior
Урок 13
Space Simulator
2
Space Simulator
Space Simulator
На одном из занятий мы уже создавали город буду
щего. А сегодня займемся разработкой космического си
мулятора на Unity (рис. 1).
Рисунок 1
3
Урок 13
Рисунок 2
В дополнительных материалах у вас находится архив
Assets. Распакуйте его и перетяните содержимое папки
Assets в проект (рис. 3).
Рисунок 3
В PolygonSciFiSpace/Scenes откройте сцену Demo_Interior.
unity. Эта сцена содержит интерьер космического кора
бля (рис. 4).
4
Space Simulator
Рисунок 4
Если вы посмотрите на объекты, из которых состоит
сцена, то обнаружите, что не все они содержат коллайде
ры. Таким образом, если мы создадим персонажа, то он
будет проваливаться сквозь текстуры. Чтобы исправить
это, перейдем в Scripts и перетянем AddCollider на объ
ект Interiors (рис. 5).
Рисунок 5
5
Урок 13
Рисунок 6
Если все получилось, то перейдем к добавлению пер
сонажа. В папке Prefabs найдите префаб Player и перетя
ните его на сцену. Player уже содержит настроенную ка
меру, поэтому удалите оставшуюся на сцене Main Camera.
Сделайте активным объект Ceilings, который содержит
крышу космического корабля, а затем запустите уро
вень (рис. 7).
Теперь вы можете передвигаться с помощью клавиш
W A S D. Обратите внимание, что двери в некоторые от
секи закрыты и пройти туда нельзя. Так, например, игрок
не может попасть на капитанский мост. Давайте сдви
6
Space Simulator
Рисунок 7
Рисунок 8
Теперь игрок может попасть в это помещение. Кро
ме того, можно так же открыть доступ в ангар (рис. 9).
7
Урок 13
Рисунок 9
Добавим на мосту зону, зайдя в которую игрок полу
чит предложение начать управление кораблем. Создадим
объект ControlArea с Box Collider. В последнем отметим
галочку Is Trigger (рис. 10).
Рисунок 10
Далее добавим объект Text и назовем его ControlMsg.
Когда игрок наступит на коллайдер, в этом объекте будет
появляться текстовое сообщение (рис. 11).
8
Space Simulator
Рисунок 11
Если нажать на кнопку E, то откроется сцена Demo_
Exterior. Однако сперва ее нужно добавить в билд. Нажи
маем File — Build Settings — Add Open Scene и добавля
ем в билд текущую сцену. Затем открываем сцену Demo_
Exterior и добавляем ее таким же образом (рис. 12).
Рисунок 12
9
Урок 13
Рисунок 13
Следующий этап — заставить космические объекты
двигаться, а также добавить возможность управления ко
раблем. Перейдите в папку Prefabs и найдите префаб Ship.
Перетяните его на сцену. В нем уже содержится камера,
поэтому можете удалить со сцены объект Main Camera.
В подобъект Hull перетяните объект любого понравив
шегося вам корабля из Ships. Обнулите его координаты
и установите Rotation -90 по X (рис. 14).
Рисунок 14
10
Space Simulator
Рисунок 15
Сейчас вы можете пролететь сквозь объекты, поэтому
добавим им коллайдеры. Перетяните уже знакомый вам
скрипт AddColliders на Ships, Planets, Astroids и Debris.
Кроме того, не забудьте вручную добавить Mesh Collider
на объект с моделью корабля, который вы добавляли в
Hull. Установите ему галочку напротив Convex. Также пе
ретяните на Ships и Debris скрипт AddRigibody (рис. 16).
Рисунок 16
11
Урок 13
Рисунок 17
Теперь заставим космические объекты вращаться во
круг звезды. Выберите нужный объект и перетяните его
за пределы объекта Planets (рис. 18).
Рисунок 18
12
Space Simulator
Рисунок 19
Самостоятельно создайте аналогичные Pivot-объекты
для Astroids и Debris. Укажите им скорость 15 и 17 соот
ветственно. Помните, что координаты Pivot должны со
впадать с координатами звезды (рис. 20).
Рисунок 20
13
Урок 13
Рисунок 21
Запустите игру, попробуйте врезаться в планету или
астероид. Убедитесь, что все работает корректно (рис. 22).
Рисунок 22
14
Space Simulator
Рисунок 23
Рисунок 24
15
Урок 13
Space Simulator