Уроки по CryENGINE®3

CryENGINE®Free SDK Version: 3.5.4

Основные инструменты построения уровня в CryENGINE®Free SDK

Создание растительности в CryENGINE®Free SDK помощью инструмента Vegetation

В Данном уроке мы рассмотрим, как можно добавить растительность на ваш уровень. В этом вам поможет инструмент Vegetation, с помощью которого вы сможете оживить ландшафт, добавляя объекты растительности, такие как деревья, трава, различные кусты и прочие.

Итак, для начала откройте тот уровень, на котором вы будете размещать деревья и прочую растительность. Далее переходим во вкладку RollupBar и открываем вкладку Terrain, после чего нажимаем на кнопку Vegetation.

Далее, для того, чтобы вы смогли наносить растительность на поверхность земли, нужно сначала добавить те объекты, которые вы хотите использовать в качестве растительности. Для этого нужно создать новую категорию, в которую затем мы добавим желаемые объекты, своего рода палитру из объектов, вместо красок в которой будут используемые в дальнейшем растения.

Итак, нажмите на кнопку «Добавить категорию растительности» Add Vegetation Category которая находится в меню инструментов сразу под названием свитка Vegetation и является четвертой. У вас откроется диалоговое окно, в которое нужно ввести название категории. В данном случае назовем ее "Trees" (деревья) и нажмем ОК.

Теперь, чтобы добавить в эту категорию нужные объекты, выбираем эту категорию в окне Object кликом мышки и нажимаем на кнопку «Добавить объекты растительности» Add Vegetation Object, которая находится в том же меню инструментов под названием свитка Vegetation и является первой. После этого у вас откроется диалоговое окно, в котором вы и будете выбирать нужные вам объекты. Теперь вам нужно прейти по пути .../Objects/Natural/Trees/river_tree. и в открывшейся папке выбрать те объекты, которые вам нужны. Вы можете выбирать по одному объекту, добавляя каждый раз, или выбрать несколько, зажав кнопку Ctrl и кликая по нужным объектам, или выделить рамкой (если хотите загрузить все объекты, как я и сделал в моем примере), после чего нажимаем на кнопку Open.

Теперь все деревья, которые вы загрузили, находятся в вашей категории Trees в окне Objects и вы можете наносить их на ландшафт. Для этого выберите всю категорию, кликнув по ней, или несколько деревьев с помощью клавиши Ctrl и кликом мышки, затем установите нужный вам размер кисти, установив необходимое значение параметра Brush Radius. После этого нажмите на кнопку Paint Objects и, зажав кнопку мыши на местности вашего ландшафта, можете расставлять деревья автоматически, или же по отдельности, просто кликая в нужном месте.

В конечном итоге у вас должен получится примерно такой результат — небольшая роща деревьев.

Таким же образом можно создать и другие категории (например, траву и кусты), добавить в них нужные объекты, после чего скомпоновать кисть и расставлять одновременно (например, деревья с кустами и травой).

Vegetation parameters

Теперь разберем более подробно некоторые параметры растительности:

Size: Этот параметр определяет размер объекта (значение 1 - это размер объекта по умолчанию).

SizeVar: Это вариации в размерах, своего рода колебания размеров от одного значения до другого. Например, параметр Size = 2, SizeVar = 0,3. Окончательный размер объектов будет варьироваться от 1,7 до 2,3.

RandomRotation: Этот параметр отвечает за разнообразие вращения вокруг оси роста, то есть поворачивает на различные углы, чтобы деревья не стояли одинаково и смотрели в разные стороны.

AlignTo Terrain: Параметр отвечает за выравнивание объектов к нормали поверхности ландшафта.

UseTerrainColor: Этот параметр применяет цвет местности поверх основного цвета объектов (этот параметр хорошо применять для травы).

Bending: Параметр позволяет изогнуть объект (если объект допускает это), можно сделать легкие покачивания, как на ветру.

Hideable: Контролирует, как ИИ будет использовать этот объект: например, чтобы спрятаться за ним.

PlayerHideable: Если игрок находится в пределах ограничительной рамки объекта, это определяет, скрывается ли он из поля зрения ИИ.

GrowOn Voxels/Brushes: Если стоит true, то при покраске кистью объекты будут пытаться присоединяться к Voxels/Brushes.

Pickable: Судя по всему, если стоит флажок, то этот объект можно взять или поднять.

Brightness: Добавляет дополнительную яркость объекту.

Density: Задает расстояние между объектами (значение 1 = 1 метру между объектами).

ElevationMin/Max: Это минимальная и максимальная высота (в метрах), на которой этот объект может быть нарисован.

SlopeMin/Max: Это минимальный и максимальный угол наклона местности, на которой объекты могут быть нарисованы.

CastShadow: Этот параметр определяет, отбрасывает ли объект тень.

RecvShadow: Отвечает за то, отображает ли объект тени от других объектов (рекомендуется выключать из соображений производительности.)

SpriteDistRatio: Насколько понял, это значение расстояния, на котором объект будет переходить из состояния объекта в состояние спрайта.

LodDistRatio: Расстояние, на котором объект переключится на отображение в более низком уровне детализации, то есть переключится на lod.

MaxViewDistRatio: В зависимости от размера ограничивающего прямоугольника, этот параметр определяет Максимальный коэффициент расстояния, на котором игрок сможет увидеть этот объект вообще.

Material: Указывает путь к материалу объекта. Например, если необходим нестандартный или другой материал.

UseSprites: Ставим галку, если объект должен отображать спрайты вообще.

MinSpec: Насколько понял, это минимальные системные требования для отображения объекта.

 

На этом все, удачи в творчестве и читайте далее!
Вопросы, отзывы и предложения оставляйте в комментариях.
Если вам понравился урок, поделитесь с друзьями!