Создание и дизайн уровней с использованием стандартных ресурсов UNITY3D. Онашев Алекасндр Сергеевич Волжский политехнический институт (филиал) ФГБОУ ВПО" Волгоградский государственный технический университет " Волжский, Россия CREATING AND LEVEL DESIGN USING STANDARD RESOURCES OF UNITY3D. Onashev A.S. Volzhskiy Polytechnical Institute, branch of the Volgograd State Technical University Volzhskiy, Russia Сейчас существует множество сред программирования и различных движков, которые могут быть использованы для разработки приложений и игр. Многие из них уже содержат стандартный набор инструментов, которые можно использовать для создания приложений. Например в Unity3D есть замечательный набор инструментов terrain assets.unitypackage, с помощью которого можно создавать замечательные карты для ваших игр. Использование Terrains Новые местности могут быть созданы из Terrain-> Создать местности. Это позволит добавить местности в проект и иерархии представлений. Новый Terrain будет выглядеть в сцене Вид: Для разнличного размера местности, выберите Terrain-> Установить разрешение из меню. Есть ряд параметров, которые связаны с Terrain размер, который можно изменить из этого диалога. Навигация Terrain Инструментарий ландшафта. The terrain toolset. Давайте рассмотрим доступные инструменты по созданию ландшафта и их функции. После того как создан ландшафт (terrain), он должен быть выбран в окне Иерархии (Hierarchy). Terrain Script. В инспекторе свойств (Inspector) инструментарием ландшафта (terrain toolset) является компонент Terrain (Script). Он дает возможность использовать различные инструменты и задавать параметры ландшафта, в дополнение к функциям, доступных из меню Terrain, описанным выше. На рисунке ниже, можно увидеть, что это второй из трех компонентов игрового объекта (game object) . Компонент Terrain (Script) имеет семь секций, которые легко доступны с помощь кнопок в верхней части компонента. Вот их краткий обзор: Raise/Lower Terrain. Этот инструмент позволяет ‘рисовать’ рельеф на ландшафте. Левой кнопкой мыши увеличиваем значения высот ландшафта, если зажать Shift высота будет уменьшаться. Однако сделать высоту ландшафта отрицательной не получится, для создания таких элементов как овраг, русло реки и т.п., необходимо увеличить высоту всего ландшафта, используя инструмент меню Terrain-> Flatten Heightmap, а уже потом создавать нужные элементы рельефа. Так же присутствует возможность определить стиль кисти (Brush), а с помощью параметров Size и Opacity определить площадь и силу деформации. Paint height. Этот инструмент схож с предыдущим инструментом, только он имеет дополнительный параметр Height. Это означает, что можно указать ограничение по высоте (height), т.е. когда область ландшафта, которая изменяется, достигнет высоты указанной в параметре Height, действие инструмента прекратится – это удобный способ для создания такого плато: Smooth height. Это дополнительный инструмент, служит для сглаживания резких элементов рельефа. Например, после создания, у плата получились острые края, которые нужно сгладить: Paint Texture - инструмент, который в качестве кисти (brush) использует текстуру для нанесения ее на ландшафт. Чтобы начать наносить текстуру, она вначале должна быть добавлена в палитру поля Textures этого инструмента. Следующий рисунок, пример этого инструмента с тремя текстурами в палитре. Первая текстура, которая будет добавлена, будет нанесена на весь ландшафт по умолчанию. Далее, используя другие текстуры, можно создать реалистичную поверхность Что бы выбрать текстуру для рисования, просто выберете ее в палитре Textures, выбранная текстура отмечена синим подчеркиванием. Place Trees. Этот инструмент позволяет быстро и легко размещать на ландшафте деревья, указав какие ресурсы (assets) будут для этого использованы. Точно так же, как были добавлены текстуры в инструменте Paint Texture, так и тут для этих целей существует кнопка Edit Trees, с помощью которой можено добавлять, редактировать или удалять ресурсы (assets) из палитры. В настройках(Settings) Place Trees можно указать: • Brush Size: количество деревьев(trees) размещаемых за клик; • Tree Density: плотность расположения деревьев; • Color Variation: применяется случайное изменение цвета деревьев; • Tree Width/Height: размер ресурса (asset) размещаемого на ландшафте; • Tree Width/Height Variation: дает вам случайное изменение в размере деревьев. Этот инструмент использует клавишу Shift, что бы убрать внесенные им изменения, т.е. стереть деревья с ландшафта, в сочетании с клавишей Ctrl стирает только выбранные в палитре деревья. Paint Details. Этот инструмент работает по аналогии с инструментом Place Trees, но предназначен для работы с detail objects (объектами деталей), такими как камни, трава, кусты и т.п. Terrain Settings в Terrain (Script) содержит различные настройки отображения ландшафта. Здесь можно задать различные параметры, влияющие на LOD (Level of Detail — уровни детализации). LOD (Level of Detail) приём в разработке игр, заключающийся в изменении уровня детализации в зависимости от расстояния объекта до игрока. Base Terrain (базовые настройки): • Pixel Error: количество допустимых ошибок в отображении геометрии ландшафта. По существу, это настройка LOD; • Base Map Distance: расстояние, на котором текстуры ландшафта будут отображаться в высоком разрешении; • Lighting: Метод освещения ландшафта: Vertex, Lightmap, Pixel; • Cast Shadows: Определяет, отбрасывает ли ландшафт тени. Tree & Detail Settings (настройки деревьев и деталей): • Draw: Если включено — все деревья, трава и детали отрисовываются; • Detail Distance: Дистанция, на которой отрисовываются детали; • Tree Distance: Дистанция, на которой отрисовываются деревья; • Billboard Start: Расстояние от камеры, на котором деревья начнут отображаться, как Billboards вместо Meshes; • Fade Length: Диапазон, который будут использовать деревья для перехода от Billboards к Meshes; • Max Mesh Trees: Общее количество мешей деревьев, которым позволено отображаться на ландшафте. Wind Settings (настройки ветра): • Speed: Скорость, с которой ветер дует на траву (прим. пер.: больше подойдет термин – частота ветра); • Size: Определяет области травы, которые реагируют на ветер асинхронно; • Bending: Сила воздействия на траву - значение, на которое она согнется под действием ветра; • Grass Tint: Общий оттенок для всей травы (Grass) и мешей деталей (Detail Meshes). На рисунке, для наглядности, показан ландшафт с низким значением Base Map Distance СПИСОК ЛИТЕРАТУРЫ 1. Обучающие материалы по всем направлениям в UNITY3D https://unity3d.com/ru/learn/tutorials/modules