Первые шаги

Published
Итак, ваш выбор пал на Unity3d? Здорово! Тогда я постараюсь описать всё, что вам понадобится для работы на первых этапах.

Создание проекта

Как только вы впервые запустите Unity, вас попросят создать новый проект, или открыть существующий. Мы поступим первым способом. Вот такое окно вы будете созерцать:
  1. Путь для создания проекта.
  2. Стандартные архивы, которые можно залить как сначала создания, так и во время работы с проектом. Разберём подробнее каждый из них :
  • Character Controller: в этом архиве содержится всё необходимое для создания вашего персонажа в 3D пространстве, как от первого так и от третьего лица.
  • Light Cookies: Набор изображений масок для световых эффектов.
  • Light Flares: Небольшой набор из текстур для создания эффектов свечения солнца/бликов и т.д.
  • Particles: Содержит несколько примеров создания частиц/партиклов.
  • Physic Materials: Примеры физических материалов, для наложения характеристик на объекты. (прим. упругость)
  • Projectors: Название говорит само за себя - инструменты для создания прожекторов.
  • Scripts: Стандартный набор скриптов.
  • Skyboxes: Текстуры неба.
  • Standart assets(Mobile): Джойстики/Тачпады - всё для мобильных игр вы найдёте здесь. Лично я этот пак не исползую, ибо там довольно кривые примеры, но ознакомиться стоит.
  • Terrain assets: Текстуры и прочие штуки для создания ландшафта.
  • Tesselation assets(DX 11): Шейдеры тесселяции(способ, с помощью которого возможно увеличить количество полигонов в трёхмерной модели).
  • Toon Shading: Шейдеры для создания эффектов "мультяшности".
  • Tree Creator: Инструмент для создания деревьев на ландшафте. Если вы не собираетесь пользоваться ландшафтом - это вам не пригодится.
  • Water(Basic): Вода. В стандартной версии она выглядит убого, поэтому я не советую даже прикасаться к этому паку.
  • Water(Pro): Улучшенная и реалистичная вода, но доступна только в купленной версии.
Так-же, если вы будете импортировать сторонние архивы, они будут включены в данный список при создании нового проекта.
  1. Этот параметр переключает инспектор из режима 2D в 3D и наоборот. Иными словами, вы выбираете тот параметр, который соответствует задумке игры: 3D или 2D.
Если вы выбрали всё, что вас интересует и создали проект - переходим к следующему этапу.

Обзор

Давайте изначально договоримся, что мы будем работать в режиме 2 к 3(Windows -> Layouts -> 2 by 3). Этот режим наиболее удобен и менее глючный.
Не пугайтесь, что много пунктов, сейчас всё доступно объясню.
1. Как полагается - меню. Состоит из:
  • File: Манипуляции с проектом. Создание/Cохранение/Параметры построения проекта - всё здесь.
- Edit: Основные манипуляции с действиями, как в любой другой программе.
  • Assets: управление "активами" или просто игровой ресурс/ассет. Ассетом можно назвать компонентами для создания игровых объектов, это как атомы и молекулы.
  • GameObject: Вкладка для создания игровых объектов.
  • Components: Компоненты для игровых объектов.
  • Window: Вкладка управления окнами.
  • Help: Важная вкладка для начинающих. Здесь вы найдёте быстрый доступ к базе данных Unity.
2. Панель действий на сцене. (Просмотр, Перемещение, Вращение, Масштабирование).
3. Кнопки, влияющие на способ отображения сцены. Я лично никогда не использую.
4. Кнопки старта/паузы/шага. Первая отвечает за запуск сцены, вторая ставит на паузу, третья запускает в режиме 1 fps/в секунду.
5. Layers: Контролирует отображение объектов по признакам. Layouts: способ расстановки окон(то, что я просил сделать вначале).
6. Фильтры отображения объектов. (Может показать объекты без текстур/только полигоны, итд).
7. Кнопка переключения сцены в 2D/3D.
8. Кнопка включения/выключения освещения на сцене.
9. Кнопка включения/выключения звука на сцене.
10. Фильтр отображения неба/тумана/вспышек/анимированных материалов.
11. Меню 2д значков.
12. Строка поиска объектов по названию.
13. Иерархия объектов на сцене.
14. Файловый менеджер вашего проекта.
15. Инспектор. Здесь отображаются все данные объекта, который вы на данный момент выбрали на сцене.
16. Эмуляция игрового разрешения. Здесь вы можете поэкспериментировать с разрешением, таким образом протестировав отображение игры на разных экранах.
17. Кнопка, включение которой увеличивает игровую сцену во время старта проекта.
18. Статистика, отображающая интернет-соединение, задержу, фпс, и т.д.
19. Собственно сцены, игровая и сцена редактора.
Теперь подробнее о важном:
Иерархия
Это окно отображает всё, что находится на сцене. Что нужно знать здесь - присваивание родительского объекта. Это происходит тогда, когда в инспекторе название одного объекта перетаскивается на название другого, отображается стрелочкой слева. Эти объекты будут двигаться синхронно в игровом пространстве и получать доступ к скриптам.
Файловый менеджер/Project
Окно файлов. Этим всё сказанно.
Инспектор
В основном можно разбить на Transform(Координаты объекта, его масштаб), на Collider(Объект, отвечающий за столкновения), и на Mesh Renderer(Натягиваемая текстура).
Здесь у нас всё. Конечно, я рассказал не всё, к примеру, иконки замочков, и прочие детали, но они не особо вообще нужны, и не заслуживают особого внимания.

Основные компоненты и понятия

Collider - Компонент, отвечающий за столкновения. Если, к примеру у объекта нет коллайдера - персонаж сможет проходить сквозь него.
Rigidbody - Компонент, отвечающий за физическую составляющую. Если у объекта не будет этого компонента - объект не будет подвержен физическим законам.
Prefab - Это, скажем, куча всего, сложенного в один объект, т.е. предустановка.
Light - освещение. Имеет 4 вида: Directional(Глобальное освещение, направленное), Point(Точечное), Spotlight(прожектор), Area(Честно говоря я пока не пользовался этим, но могу точно сказать, первых трёх вам пока хватит).
Audio Listener - компонент-ухо, без него звук просто не будет проигрываться на сцене. Присутствовать должен только один компонент на сцену
Audio source - источник звука.
Particle system - источник частиц. Используется для создания спецэффектов.
GuiTexture - Объект-текстура, располагающийся поверх всех объектов. Используется для создания интерфейса.
GuiText - текст, располагающийся поверх всех объектов. Используется для создания интерфейса.

Заключение

А вот теперь возникает вопрос: а дальше? А дальше, к сожалению, вам помочь сможет только ваш мозг, ибо в Unity, как и в программировании в целом, есть миллионы способов как начать создавать игру. Всё зависит от вашего выбора: жанр, масштаб, особенности игры. Мой совет: Для начала просто пробуйте сделать что-нибудь. Вопрос варкрафтерам: что вы делали как только открывали WE? Пытались что-то сделать, правильно. Так и здесь, пробуйте!

Домашнее задание

» Как создать бродилку от третьего лица
  • Создайте проект, предварительно импортировав Character Controller. (Assets -> Import package)
  • Создайте плоскость для персонажа. (GameObject -> Create Other -> Plane)
  • Найдите в нашем менеджере префаб персонажа. (Assets -> Standart assets -> 3rd character controller)
  • Перетащите префаб на сцену.
  • Убедитесь, что коллайдер(зелёная оболочка) не касается пола, в противном случае персонаж провалится в бесконечность.
  • Вуаля! Можете нажимать на кнопку старт и играть!)
» Шурикам-ландшафтерам посвящается
  • Создайте проект, предварительно импортировав Terrain assets и Tree creator. (Assets -> Import package)
  • Создайте ландшафт. (GameObject -> Create other -> Terrain)
  • Выберите ландшафт, и разберитесь с инструментами.
  1. Кисти повышения/понижения уровня.
  2. Подгоняет кисть под определённый уровень ландшафта.
  3. Сглаживание.
  4. Текстурирование.
Для добавления текстуры нажмите на Edit textures -> add texture.
  1. Деревья.
Для добавления дерева нажмине на Edit trees -> add tree -> щелчок на кружок справа от None(Game Object) -> щелчок на BigTree.
  1. Кусты.
  2. Общие настройки ландшафта.
  • Флаг в руки, рисуйте! Так-же вы можете добавить воду и создать речушку, правда, повторюсь, вода действительно убогая.


Views: 19 899

» Лучшие комментарии


RSQR #1 - 8 years ago 1
Голосов: +2 / -1
Прошу оценить статью =)
Опрос: Оценка
Всего проголосовали: 71

Audes #2 - 8 years ago (изм. ) 0
Голосов: +1 / -1
А насчёт 3rd character controller, это скрипт на камеру от 3 лица и управление вшито в игровой объект или что? Разве это не моделька?
RSQR #3 - 8 years ago -1
Голосов: +0 / -1
Audes:
А насчёт 3rd character controller, это скрипт на камеру от 3 лица и управление вшито в игровой объект или что? Разве это не моделька?
Это префаб. Т.е. несколько объектов сложенных воедино.
П4ела #4 - 8 years ago 0
Голосов: +1 / -1
Нужно скачать и опробовать его
Audes #5 - 8 years ago (изм. ) 0
Голосов: +1 / -1
Rescuer, значит его можно редактировать? Ну скрипты и т.д.
RSQR #6 - 8 years ago (изм. ) 2
Голосов: +3 / -1
Audes:
Rescuer, значит его можно редактировать? Ну скрипты и т.д.
Смотри: у тебя на сцене есть куб, просто куб, созданный в GameObject. Затем ты цепляешь на него скрипт управления(пишешь сам или копируешь). далее цепляешь модель и скрипт управления камерой. Потом берёшь этот куб и сохраняешь как префаб, в дальнейшем чтобы заного не создавать этот куб, ты просто его перенесёшь из файлов на сцену, уже готовенький.
А редактировать да, конечно можно. Я бы посоветовал для совсем начала тупо прикрепить ему анимации, это не сложно. Дело в том, что префабы не сохраняют данные инспектора, и расставлять приходится вручную. Когда ты выбираешь человечка на сцене - в инспекторе появится скрипт Third person controller - вот там есть 4 строчки с названиями анимаций. просто туда нужно вставить нужные анимации, всё =) Главное это практика.
P.s. а вообще кто хочет получить консультацию и заинтересовался движком - пишите в скайп, смогу провести что-то вроде онлайн уроков =)
Audes #8 - 8 years ago 0
Голосов: +1 / -1
Rescuer, спасибо.
lentinant #9 - 8 years ago (изм. ) 0
Голосов: +1 / -1
В основном можно разбить на Transform(Координаты объекта, его масштаб), на Collider(Объект, отвечающий за столкновения), и на Mesh Renderer(Натягиваемая текстура).
Можно обойтись одним "на", перед Transform. И пробелы между скобками.
И вообще, какое "разбить на"? А если это материал? Скрипт? Что-то еще? Инспектор - просмотр и редактирование свойств выбранного элемента. Компоненты там отображаются исключительно когда выбран gameObject.
И перед тем, как писать основные компоненты, можно было бы расписать хотя бы саму концепцию объектов как совокупности различных компонентов.
RSQR #10 - 8 years ago 0
Голосов: +1 / -1
lentinant:
В основном можно разбить на Transform(Координаты объекта, его масштаб), на Collider(Объект, отвечающий за столкновения), и на Mesh Renderer(Натягиваемая текстура).
Можно обойтись одним "на", перед Transform. И пробелы между скобками.
И вообще, какое "разбить на"? А если это материал? Скрипт? Что-то еще? Инспектор - просмотр и редактирование свойств выбранного элемента. Компоненты там отображаются исключительно когда выбран gameObject.
И перед тем, как писать основные компоненты, можно было бы расписать хотя бы саму концепцию объектов как совокупности различных компонентов.
Зануда.
ehnaton #11 - 8 years ago 0
Голосов: +1 / -1
Rescuer, между тем lentinant, дело говорит.
TheDragon #12 - 8 years ago 0
Голосов: +1 / -1
Хорошая статья, основы описаны как надо)
WarSC #13 - 8 years ago -9
Голосов: +0 / -9
Играл я в данный продукт, скачал на движке Юнити 2 игры и! Они обе глючат когда игры на порядок выше по графике по типу крайзис или же Анриал на своих движках идут куда лучше и графика там глаз радует. Юнити тянет потому что относительно бесплатна. Скажу честно Unrel 4 учите. Юнити не трогайте, думаю тоже умрет также и варкрафт))).
ehnaton #15 - 8 years ago 2
Голосов: +3 / -1
WarSC, сразу видно специалист.
TheDragon #16 - 8 years ago 0
Голосов: +1 / -1
Играл я в данный продукт, скачал на движке Юнити 2 игры и!
2 игры
Всё с тобой ясно.
ehnaton, согласен.
GeneralElConsul #17 - 8 years ago 0
Голосов: +1 / -1
WarSC:
Играл я в данный продукт, скачал на движке Юнити 2 игры и! Они обе глючат когда игры на порядок выше по графике по типу крайзис или же Анриал на своих движках идут куда лучше и графика там глаз радует. Юнити тянет потому что относительно бесплатна. Скажу честно Unrel 4 учите. Юнити не трогайте, думаю тоже умрет также и варкрафт))).
NFS World сделана на Unity. Там графа довольно неплохая.
lentinant #18 - 8 years ago 0
Голосов: +1 / -1
Зануда.
Первое предложение (насчет "на") - может быть. Однако насчет инспектора у тебя абсолютно недостоверная информация, которая подходит лишь под частный случай. А инфа, которая вводит в заблуждение, в статье не нужна.
RSQR #19 - 8 years ago 1
Голосов: +1 / -0
lentinant:
Зануда.
Первое предложение (насчет "на") - может быть. Однако насчет инспектора у тебя абсолютно недостоверная информация, которая подходит лишь под частный случай. А инфа, которая вводит в заблуждение, в статье не нужна.
Вместо того чтобы публично обсуждать, мог-бы намекнуть об этом в лс, однако, я обьяснил довольно доступно начинающему пользователю, далее человек разберётся сам.
Audes #20 - 8 years ago 0
Голосов: +0 / -0
WarSC, я играл на планшете в игру (название не помню, но по типу Gravity) на юнити, нормальная игра с нормальной графикой и физикой, не одного глюка не было найдено.
lentinant #21 - 8 years ago 0
Голосов: +1 / -1
я обьяснил довольно доступно начинающему пользователю
Начинающий пользователь выделит что-то, не являющееся геймОбжектом, и окажется в недоумении - а где же Transform, Collider, Mesh Renderer?
RSQR #22 - 8 years ago (изм. ) 1
Голосов: +1 / -0
lentinant:
я обьяснил довольно доступно начинающему пользователю
Начинающий пользователь выделит что-то, не являющееся геймОбжектом, и окажется в недоумении - а где же Transform, Collider, Mesh Renderer?
Я сейчас материться начну. Всё, что находится на сцене ИМЕЕТ Transform, В большинстве случаев Mesh Renderer, и Collider по обстоятельствам. А теперь не позорься и уйди в UDK.
Audes #23 - 8 years ago 0
Голосов: +0 / -0
Знаю, что не та тема, но ответа не нашёл: велика ли разница между free и pro?
lentinant #24 - 8 years ago (изм. ) 0
Голосов: +0 / -0
Всё, что находится на сцене ИМЕЕТ Transform
Начинающий пользователь выделит что-то, не являющееся геймОбжектом
Мне эту строчку выделить жирным шрифтом? Человек всегда будет выделять только то, что есть на сцене (да, кстати, все, что есть на сцене - это и есть геймОбжекты, включая камеру и источники света)?
Вот. Припустим, неопытный пользователь необдуманно клацнул куда попало, не увидел знакомого Transform и впал в когнитивный диссонанс.
Rescuer:
А теперь не позорься и уйди в UDK.
Ну, не я же размещаю недостоверную информацию, чего это я позорюсь? А если тут и дальше будут подобные моменты, то мне в этом проекте реально делать нечего.
RSQR #25 - 8 years ago 1
Голосов: +1 / -0
Audes:
Знаю, что не та тема, но ответа не нашёл: велика ли разница между free и pro?
Для начинающего - нет.
lentinant:
В этом несомненно мой косяк: я не разделил инспектор на выделение игровых объектов и на ресурсы проекта, тем не менее, как я уже и писал выше, написать мне в лс о том, что-бы можно было исправить, было бы корректнее.
WarSC #26 - 8 years ago -3
Голосов: +0 / -3
Видео ролик с игры Game about Vehicles на основе Unity3D, забавная рекомендую, есть над чем подумать.
Прикрепленные файлы
ehnaton #27 - 8 years ago 0
Голосов: +0 / -0
WarSC, интересно, над чем?
WarSC #28 - 8 years ago 0
Голосов: +0 / -0
Над глобальными внедрениями игры в массы, и о печеньках))
Raised #29 - 7 years ago 0
Голосов: +0 / -0
Вчера открыл юниту. Нужно еще статью вроде "Как запилить свою Action RPG самостоятельно? - туториал с пошаговыми инструкциями". Статья кул, но тут только перевод названий вкладок на английском. Да и справка есть по движку.
RSQR #30 - 7 years ago 0
Голосов: +0 / -0
RiseD_Konst:
Вчера открыл юниту. Нужно еще статью вроде "Как запилить свою Action RPG самостоятельно? - туториал с пошаговыми инструкциями". Статья кул, но тут только перевод названий вкладок на английском. Да и справка есть по движку.
Щито поделать, пишу статьи как умею.
Raised #31 - 7 years ago 0
Голосов: +0 / -0
RSQR, о скайпе ты не шутил?
RSQR #32 - 7 years ago (изм. ) 0
Голосов: +0 / -0
RiseD_Konst:
RSQR, о скайпе ты не шутил?
Нет, не шутил. Однако я даже не знаю когда появится возможность такая.
Nerevar #33 - 7 years ago 1
Голосов: +1 / -0
"Как запилить свою Action RPG самостоятельно? - туториал с пошаговыми инструкциями"
так будет вернее в данном случае =)
вообще вряд ли будут такие специализированные статьи - но есть куча статей по разным аспектам,составляющим твою рпг,тебе останется изучить их и применить на практике
Raised #34 - 7 years ago 0
Голосов: +0 / -0
Нужно сделать адекватную боевую систему. У меня такое чувство что это не легко.
Эт. такое дело - скайп. Мне нужно еще в движке полазить чтобы не задавать глупых вопросов.

С моделями чую будет трудно.