- •1. Преимущества, недостатки Unity. Примеры игр на основе Unity
- •Описание интерфейса главного окна Unity. Вкладка Scene, вкладка Game и панель инструментов.
- •Работа с мышью и клавиатурой. Навигация. Преобразование объектов. Вкладка Hierarchy, Project, Console и панель Inspector
- •4. Поддержка языков программирования в Unity. Сценарии. Компоненты. Методы Start() и Update(). Вывод информации в консоль.
- •5. Планирование трехмерного проекта fps. Трехмерное координатное пространство. Правая и левая системы координат.
- •6. Размещение объектов на трехмерной сцене. Понятие GameObject. Масштабирование объектов.
- •7. Источники света и камеры. Типы осветителей. Коллайдер, типы коллайдеров и точка наблюдения игрока в проекте fps.
- •3.3.3. Слежение за состоянием персонажа
- •14. Увеличение количества врагов: шаблон экземпляров, создание шаблона врага, сценарий SceneController, порождающий экземпляры врагов.
- •3.4.1. Что такое шаблон экземпляров?
- •3.4.2. Создание шаблона врага
- •3.5.1. Шаблон снаряда
- •3.5.2. Стрельба и столкновение с целью
- •3.5.3. Повреждение игрока
- •16. Типы игровых ресурсов. Создание геометрической модели сцены. Назначение геометрической модели. Наложение текстур. Выбор формата файла
- •4.1. Основные сведения о графических ресурсах
- •4.2. Создание геометрической модели сцены
- •4.2.1. Назначение геометрической модели
- •4.3. Наложение текстур
- •4.3.1. Выбор формата файла
- •17. Импорт файла изображения. Назначение текстуры. Создание неба с помощью текстур. Скайбокс. Создание нового материала для скайбокса
- •4.3.2. Импорт файла изображения
- •4.3.3. Назначение текстуры
- •4.4. Создание неба с помощью текстур
- •4.4.1. Что такое скайбокс?
- •4.4.2. Создание нового материала для скайбокса
- •18. Выбор формата файла для экспорта трехмерных моделей. Экспорт и импорт модели.
- •19. Системы частиц. Редактирование параметров эффекта. Новая текстура для пламени. Присоединение эффектов частиц к трехмерным объектам.
- •20. Подготовка проекта Memory. Понятие спрайт. Анимированные спрайты. Переключение камеры в режим 2d. Интерактивные объекты. Создание объекта из спрайтов.
- •21. Проект Memory: открытие карты по щелчку. Сценарий. Программная загрузка изображений. Выбор изображения в невидимом компоненте SceneController. Сценарий, реализующий эти методы.
- •28. Игра в стиле jetpack joyride в Unity 2d. Передвижение мыши вперед (скрипт). Создание бесконечного уровня в Unity: создание префаба, генератор комнат (скрипт).
- •29. Игра в стиле jetpack joyride в Unity 2d. Анимация персонажа: покадровая анимация, создание анимационных переходов, добавление параметров перехода.
- •31. Игра в стиле jetpack joyride в Unity 2d. Добавление лазеров в игру. Скрипт для включения, выключения, переключения и вращения лазеров. Настройка параметров этого скрипта.
- •32. Игра в стиле jetpack joyride в Unity 2d. Реализация скрипта, описывающего смерть мыши. Добавление анимаций Fall и Die, переходы между ними, триггер при смерти мыши.
- •33. Игра в стиле jetpack joyride в Unity 2d. Добавление монет. Использование тегов для различия в игре монет и лазеров. Обновленный скрипт контроллера персонажа.
- •Добавление метода для добавления нового объекта
- •Генерация и удаление объектов
- •Настройка параметров скрипта
- •35. Игра в стиле jetpack joyride в Unity 2d. Скрипт для добавления счётчика монет на экране. Скрипт для отображения кнопки на экране и возможности перезапуска игры.
- •Звук для лазера
- •Звук сбора монет
- •Звуки шагов и реактивного ранца
- •Добавление Audio Sources
- •Переключение между звуком шагов и реактивного ранца
- •Задание переменных сценария «Шаг» и «полет»
4.4.2. Создание нового материала для скайбокса
Сначала создайте новый материал (как обычно, щелкнув правой кнопкой мыши и выбрав команду Create или выбрав эту же команду в меню Assets). Его параметры отобразятся на панели Inspector. Первым делом нам нужно поменять раскраску материала. В верхней части списка настроек находится меню Shader, показанное на рис. 4.11. В разделе 4.3 мы не обращали на него внимания, так как раскраска, предлагаемая по умолчанию, подходит большинству стандартных текстур, но скайбокс требует другого варианта.
ОПРЕДЕЛЕНИЕ Раскраской (shader) называется короткая программа с инструкциями, описывающими способ рисования поверхности. В ней указываются, в частности, используемые текстуры. Компьютер задействует эти инструкции для вычисления пикселов в процессе визуализации изображения. В наиболее распространенной раскраске цвет материала затемняется в соответствии с освещенностью. Раскраски применяются для всех видов визуальных эффектов.
Каждый материал имеет раскраску, которая определяет его вид (можно представить материал как экземпляр раскраски). Новому материалу по умолчанию назначается раскраска Standard. Она отображает цвет материала (включая назначенную текстуру), одновременно применяя к поверхности основные настройки теней и освещенности.
Для скайбоксов используется другая раскраска. Щелкните на этом меню, чтобы открыть выпадающий список с перечнем доступных раскрасок. Выделите строку Skybox и выберите в появившемся дополнительном меню вариант 6 Sided, как показано на рис. 4.11.
Теперь в настройках материала появилось шесть ячеек для текстур (вместо одной маленькой ячейки Albedo, которую мы видели у стандартной раскраски). Эти шесть текстур соответствуют шести сторонам куба. Они должны совпадать друг с другом в местах стыка, чтобы картинка получилась бесшовной. Например, рис. 4.12 демонстрирует изображения для солнечного скайбокса.
Импортируйте в Unity изображения для скайбокса тем же способом, которым импортировалась текстура кирпича: перетащите файлы на вкладку Project или щелкните правой кнопкой мыши на вкладке Project и выберите команду Import New Asset. Впрочем, в данном случае есть одно небольшое отличие; щелчком выделите импортированную текстуру, чтобы увидеть ее свойства на панели Inspector, и поменяйте значение параметра Wrap Mode с Repeat на Clamp (рис. 4.13); не забудьте после этого щелкнуть на кнопке Apply. Обычно текстуры укладываются на поверхность как плитки, а чтобы результат такой укладки выглядел бесшовным, противоположные края изображений накладываются друг на друга. Но в случае неба подобная операция может привести к появлению небольших линий, поэтому значение Clamp (аналогичное знакомой вам по главе 2 функции Clamp()) очертит границы текстуры и уберет результат их наложения.
Теперь можно перетащить изображения на ячейки для текстур. Имена изображений должны совпадать с именами ячеек (например, left или front). Как только все текстуры окажутся на своих местах, можно использовать материал для скайбокса. Снова откройте окно с параметрами освещенности и перетащите новый материал на ячейку Skybox или щелкните на маленьком кружке с точкой в центре, расположенном справа от ячейки, чтобы открыть окно выбора материала.
СОВЕТ По умолчанию Unity отображает скайбокс (или, по крайней мере, его основной цвет) на вкладке Scene редактора. Если это мешает редактированию объектов, видимость скайбокса можно отключить. В верхней части вкладки Scene располагаются кнопки, управляющие видимостью различных элементов; щелчок на крайней правой кнопке, которая называется Effects, открывает меню, через которое можно отключить видимость скайбокса.