CryENGINE

Русское сообщество

Глава 4: Создание окружающей среды

Глава 4: Создание окружающей среды

В этой главе мы рассмотрим:

  • Создание раннего времени суток с основными параметрами
  • Регулировка освещения местности
  • Использование в режиме реального времени Global Illumination
  • Регулировка освещения HDR и эффектов для огней
  • Создание объёмного тумана
  • Создание ночной сцены с параметрами времени суток
  • Цветокоррекция вашего уровня
  • Создание реалистичного океана
  • Улучшение неба с облаками
  • Создание дождя на вашем уровне

Введение

В этой главе мы рассмотрим некоторые из экологических улучшений и дополнений, которые Вы можете сделать в CryENGINE 3 Sandbox с уровнями.

Много инструментов используемых здесь будут применимы для атмосферных явлений, однако при использовании их в комбинации с элементами игры, они  могут создать совершенно уникальный и захватывающий игровые ощущения для игроков.

Создание раннего времени суток помощью основных параметров

В этом рецепте, мы будем создавать основное Время дня для вашего уровня.

Общий дневной свет окружающей среды может быть легко созданы с помощью ярко желтого солнечного света, ярко-синий цвет неба, который будет использоваться для освещения окружения, и, наконец, углоВые направление солнца, чтобы получить некоторые интересные тени.

Готовимся

Для этого урока, Вы должны открыть уровень с лесом (forest.cry). Этот уровень установлен автоматически в качестве образца при установке SDK.

Как правило, при создании собственного времени суток, Вы должны использовать фото эталоны или довольно специфический изображения. Экспериментирование позволит вам найти интересное сочетание , но в конце концов Вы сможете достичь определенного вида. Итак, перед началом установки времени суток рекомендуется.

Как это сделать...

1. Откройте Time Of Day в диалоговом окне View | Open View Pane | Time Of Day.



Обратите внимание, когда Вы Выделите любой из основных параметров от TimeofDay диалог уже содержит ключевые кадры показанные на временной шкале. Этот график представлен в виде 24 часового ползунка в верхней части интерфейса. Поскольку лучший способ научиться управлять временем суток это создание собственных настроек, давайте продолжим, сбросим все значения.

2. Чтобы сделать это, нажмите кнопку Reset Values (Сбросить значения) в окне Time of Day Tasks (Задачи Времени Дня).



Это позволит эффективно удалить все ключевые точки кроме значений, по умолчанию 0000 и 2400.

3. Перед тем, как настроить параметры, чтобы применить желаемые настройки, установить Force Sky Update (Значение Обновление Неба) True (Правда) и применить кнопку записи.




Далее, давайте установим текущее время, так что бы мы смогли видеть солнце по горизонту.
4. Чтобы сделать это, нажмите и перетащите бегунок ближе к вечеру. Если у Вас есть

трудности в получении точного текущего времени, Вы можете ввести текущее время.

5. Установите текущее время на 1600 .

[ - При пересечении солнца и некоторых геометрических объектов позволит показать солнечные лучи более четко.]



Первый параметр который мы будем корректировать будет цвет солнца. Солнце в CryEngine 3 является передовым динамическим светом. Регулировка цвета солнца, простыми словами, это регулирование диффузного цвет этого света.
6. Для настройки общего цвета, сначала щелкните поле цвета(sky-sun color) sampler box click-and-drag (сэмплер и нажмите и перетащите) черный указатель в ваше предпочтительное значение. В нашем случае, давайте попытаемся, приблизимся к реалистичному освещению этого уровня и установим на солнце ярко желтые цвета RGB 235, 230, 190.



7. После нажатия кнопки OK, Вы увидите, что новые ключевые точки уже созданы на временной шкале.



[- Вы можете задать точные значения от 0000 до 2400. Это будет использоваться в случае, если у вас анимированное время дня.]

8. Следующим параметром мы будем корректировать цвет для солнца, который мы установили ранее. Установить Sun color multiplier (Множитель цвета солнца)  до уровня 8.

[- Хотя параметр называется called sky color (цвет неба), это цвет даёт освещение окружения для всего уровня.]

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

Давайте сначала установим цвет видимых в данный момент элементов неба:

1. Чтобы сделать это, нажмите в поле “Sky”(“Небо”) “Sky Color” («Цвет неба») в параметре палитры цветов нажмите на “пипетку”.



2. Затем щелкните где-нибудь на небо, в окне перспективы, это будет образец цвета неба.
3. Для этого урока, установите цвет неба RGB 150, 200, 210.



Множитель цвета неба работает как множитель цвета окружения. Так как мы собираемся сделать более реалистичное Время дня, установим до 0,8.

Далее идет спойлер Fog(туман) подраздела time of day (Время дня). В нашем случае, нам нужно только настроить значение globaldensity (глобальная плотность).

[- При использовании динамического неба, некоторый туман уже рассчитывается по модели неба. Указанный цвет тумана будет добавлен к этой дымке. Во многих случаях, дымки будет достаточно, чтобы правильно раскрасить туман в течение заданного времени.]

Так как нам не требуется большое количества тумана для приятной реалистичные сцены, давайте установим global density (глобальную плотность) до значения 0,02.Следующей настройкой мы будем корректировать параметры спойлера Sky Light(Свечение Неба). Мы можем использовать удобную функцию в диалоге Time Of Day (времени суток) скопируйте и вставьте RGB значения цвета неба.


Используйте различные цвет солнца, чтобы придать карте более тёплые или холодные цвета:

1. Выделите значение  sky color  (цвет неба) щелкните правой кнопкой мыши и Выберите копировать.
2. Далее, Выделите значения интенсивности солнца щелкните правой кнопкой мыши еще раз и Выберите вставить.
3. Вы также можете ввести значение RGB используя цвет неба или солнца. В нашем случае, мы будем использовать RGB 150, 200, 210.
4. Регулировка Sun intensity multiplier (множитель интенсивности солнечных лучей) немного Выше, чем обычный объем тумана, используйте множитель 50.

Сейчас, мы не будем устанавливать параметры для night sky (ночного неба) и night sky multiplier (множитель ночного неба), мы обсудим это позже.

Для окончательной настройки мы будем корректировать в основном окне

time of day (Время дня) спойлер Sun rays Effect (эффект солнечных лучей).

5. Это значение управляет видимостью солнечных лучей. Более Высокие значения будут Вызывать яркие лучи вокруг Солнца, низкие значения стилизованные, но более похожи на реалистичное освещение. Установите на 2,0.
6. Последние три параметра настройки цветовых фильтров применяются в окне Time Of Day (Время дня). Правда, для этого процесса, гораздо лучше использовать цветокоррекцию,о которой будет рассказано позже.
7. Оставьте цвет настройки фильтров по умолчанию, и Вы получите следующую картинку

Как на следующем скриншоте:



Как это работает...

Солнце в CryENGINE распространяет направленные лучи света без затухания. Это важно, чтобы понять, как его свойства схожи с постоянным источником света и свойства такие как цвет и блеск на уровне могут быть скорректированы. Однако, есть важное различие солнца и других источников света в CryENGINE, для солнце используется технология каскадная карта теней.

Солнечные тени, получаемые при визуализации путем разделения на несколько усеченных частей, в CryENGINE эти части обрабатываются отдельно, они также известный как Cascaded Shadow Maps(каскадные Карты теней).Кроме того, Variance Shadow Maps (Разница карты Тени) используются также для придания более низких(тёмных) теней от рельефа местности.

Параметры Sky light (свет неба) используются исключительно для (применения)Вычисления внешнего вида атмосферы динамического неба. Они не влияют напрямую на изображение объектов в мире (например, цвет освещения и интенсивность). Тем не менее, они используются системой для Вычисления приближенного цвета тумана и автоматическому приданию туману, по всей сцене, соответствующих цветов.

[- Для статического skyboxes, используется только fog color (цвет тумана) в fog parameter's Group(группе параметры тумана).]

Диалог  Time Of Day (Время дня) имеет огромное разнообразие параметров для имитации реалистичных и нереальных эффектов освещения. Завершив настройку основных параметров будет значительно проще настроить дополнительные эффекты, time of day (Время дня) позволяет коректированием достичь фотореалистичных видов наружного освещения.

Узнайте больше...

Вы можете узнать, что заставляет небо обновляться, или записать и воспроизвести эти функций.

Используйте значение обновление неба истина

Установите значение True (Правда; флажок) Force sky update (Принудительное обновлений неба) в диалоге Time Of Day (Время дня) произведёт обновление неба для каждого кадра в перспективе. Если не будет установлено значение истинна(флажок), расчеты света неба будет произведён по нескольким кадрам и времени, во время которых происходит смена событий, сильно зависит от платформы, на котором работает “движок”. Вы должны знать это, когда будете редактировать некоторые параметры time of day( Время дня)так, как это может занять некоторое дополнительное время для обновления.

Значок записи
Значок записи будет Выделен по умолчанию. Кнопка записи позволяет сохранить изменения, внесенные в панели параметров, в окне time of day (времени суток). Это можно использовать для предварительного просмотра одного или нескольких измененных параметров одновременно, без боязни сохранения изменений в окне time of day (времени суток).



Значок воспроизведение
Значок воспроизведения начинает или возобновляет последовательное воспроизведение time of day(времени суток) в редакторе, если текущий момент не находится в указанном диапазоне времени (время начала и время окончания), покадровое воспроизведение начинается с указанного времени начала.



Смотритетакже

  • Рецепт регулировки освещения местности
  • Рецепт использования глобального освещения в режиме реального времени
  • Рецепт Создание ночные сцены в окне Time of Day(Время дня)

Регулировка освещения местности

Узнав, как настроить основные параметрыtime of day( времени суток), следующим шагом будет регулирование характеристик направленного и динамического освещения этого уровня помощью диалогового окна Terrain Lighting (освещения местности). Этот инструмент позволяет установить местоположение восхождения солнца, а также расстояние и ваше местоположение относительно Северного и Южному полюса.

Готовим

Для этого урока, Вы должны открыть уровень с лесом forest.cry. Этот уровень был установлен в качестве образца при установке CryENGINE SDK.

Как это сделать ...

Сейчас Мы будем изучать диалог освещения местности:

  1. Откройте Lighting Tool (инструмент освещения), кликните раздел Terrain (местность) на главной панели инструментов, а затем lighting(освещение).




2. В разделе Sun Settings (Настройки Солнца) есть два слайдера. Выставьте перВый слайдер Sun direction (map orientation) (направление Солнца; ориентация карты) по центру. Это Выставит солнце так, что оно буде восходить на востоке и заходить на западе.

[- За Север в CryEngine принят  у +]

3. Далее, установите второй слайдер NorthPole..Equator..SouthPole (Северный полюс .. Экватор .. Южный полюс) в положение центр.

Это изменит склонение солнца, когда установлен в центре, то в 1200 солнце, будет прямо над вами. Добавление склонения в любом направлении изменит расположение вашего уровня ближе к одному из полюсов планеты.

4. Сдвиньте слайдер немного к North Pole (Северному полюсу) ,так как эта среда Выглядит в стиле северных широт.

5. Нажмите кнопку ОК, чтобы сохранить изменения.

[- При использовании функции time of day(времени суток), рекомендуется не включать солнце в самом Высоком положении.]

Как это работает...

Terrain lighting(освещение местности) работает в совместно с time of day (временем суток), для изменения характеристик света на уровне.

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

Хотите знать больше...

Вы можете узнать больше о том как затмить солнце луной или как регулировать перекрытие в окружающей местности.

Перекрытие окружающей местности

Для настройки качества перекрытия местности, перемещайте ползунок в нижней части диалогового окна Terrain Occlusion(перекрытие местности). Увеличение Sky terrain occlusion quality (low..high) (перекрытие неба местности качество: низкое.. Высокое) будет регулировать количество света, перекрытия в реальном времени. Перекрытие местности часто используется для создания эффекта освещения.

Переход затенения от солнца к луне

Фундаментальный принцип time of day( времени суток), что может быть освещять солнце или луна, но не оба одновременно. Вам нужно настроить Moon/Sun Shadow Transition (advanced) (Луны / Солнце Переход тени (продвинутый)) параметры времени, когда солнце должно быть активными и когда освещение луны должно стать активным и наоборот.

  • Время рассвета: Устанавливает время восхода солнца
  • Продолжительность рассвета: изменяет продолжительность фазы перехода от лунного освещения к солнечному
  • Время заката: устанавливает время заката солнца
  • Продолжительность заката: изменяет продолжительность фазы перехода от солнечного освещения к лунному

SSAO screen-space-ambient occlusion 
(экран-космос-окружение перекрытие)

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

CryENGINE 3 использует технологию, которая подходит для реального времени и может поддерживать динамические сцены. Потому что она не должна быть предварительно Вычислена, для того чтобы не терять время когда Вы создаёте эффект.



С SSAO (экран-космической окружающих преграждений), Вы можете Выставить геометрические детали сцены и убедиться, что его воздействие сохраняется. Это эффект размером рабочего стола, поэтому производительность не зависит от сложности сцены.

Вы можете настроить множитель SSAO множитель в диалоговом окне Time Of Day (Время дня).

См. также

  • Generating a procedural terrainрецепт (процедура Создания местности) в главе 2, Sandbox Basics (ОсноВы песочницы)
  • Editing HDR lighting (Редактирование HDR освещения) и рецепт effects for Flares (эффектов для вспышек)

Использование глобального освещения в режиме реального времени

Global Illumination (GI) (Глобальное освещение) является неотъемлемой частью большинства нынешних игр следующего поколения и, несомненно, станет основной точкой интереса.

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

В этом разделе мы узнаем, как использовать Global Illumination(Глобальное освещение), поскольку оно используется для погружения в игровой процесс и увеличивает динамику игры.

Готовим

Вы должны открыть в редакторе Sandbox уровень с лесом Forest.cry. Под Options (параметры) в панели RollupBar, вы должны установить для Global illumination (глобальное освещение) значение истина / включено.



Как это сделать...

1. Откройте диалоговое окно Time Of Day (времея суток).

2. Теперь,  пройдём в первостепенные экологические параметры, нажмите кнопку Toggle Advanced (Дополнительное переключение) свойств. Это раскроет все свойства доступные диалогового окна Time Of Day (Время дня).

Единственный атрибут, с которым мы имеем дело , в данном примере, является Global illumination multiplier (Множитель глобального освещения).

3. Для наблюдения за изменёнными районами Global Illumination(Глобальное освещение), установите множитель до максимального значения 100.



4. Для завершения настройки нашего уровня, установите Global illumination multiplier (Множитель глобального освещения) обратно до значения 2. 

Как это работает...

Большинство современных игр и игроВых движков используют  различные подходы к глобальному освещению заранее настроенные или предварительно Вычисленные. Использование предварительно Вычисленного глобального освещение имеет множество ограничений. Одним из важных ограничений является то, что в большинстве ситуации, Вы были бы Вынуждены поддерживать статическое освещение и / или статических объектов, в противном случае предварительно Вычисленные текстура не будет соответствовать сцене.

Основной точкой CryEngine 3 является то, что она обеспечивает на основе физических явления, такие как Время дня , чтобы обогатить игровой процесс, а также упростить производственный процесс игры, что означает, что, используя многие из предварительно Вычислительные процессов не будет перегружать движок.

Хотите знать больше…

Вы наверняка хотите поэкспериментировать с некоторыми из более продвинутых консольных переменных, которые регулируют применение GI на вашем уровне.

Расширенный GI Cvars

Если Вы планируете включить GI для вашего уровня, важно, что бы Вы знали передоВые GI настройки, доступные в консоли и их использование:

  • e_GIAmount = (X):  будет умножаться с Global illumination(глобальным освещением) множитель установлен в диалоге Time Of Day(Время дня). По умолчанию 1.
  • e_GIMaxDistance = (X): Это будет расширить область эффекта Global illumination (глобального освещения) от камеры. Значение по умолчанию равно 50.

[- Чем ближе расстояние тем Выше качество.]

  • e_GIOffset = (X): GI смещение вперед от камеры до определенного увеличения. Может быть скорректирована до 0 с небольшим влияние на производительность.

 

Переходите к следующему рецепту для редактирования HDR освещения для вашего уровня.

См. также

  • Рецепт  по  редактированию HDR освещения и эффектов вспышек

Редактирование HDR освещения и эффектов для вспышек

HDR освещения является важным аспектом освещенности уровня. В этом рецепте мы будем корректировать переменные окружения, касающиеся некоторых дополнительных эффектов HDR доступных в движке.

В этом рецепте мы будем исследовать настройки Environment (окружающей среды), доступные в RollupBar.

Готовим…

Для этого рецепта должен быть открыт Forest.cry.

Как это сделать ...

Так Как мы в настоящее время используют HDR для уровня совмещающего небо в лесу, мы можем настроить HDR в диалоге Time Of Day (Время дня).

    1. Откройте time of day (времени суток) и самый верхний параметр HDR   Dynamic Power Factor (динамический коэффициент мощности).

В большинстве случаев, чтобы усилить освещение HDR в дневное время сцены, этого должно быть достаточно.
    2. Установить консервативное значение 2 для того чтобы сохранить реальные условия освещения.



[- HDR динамический коэффициент мощности освещения может быть увеличен ночью для улучшения эффектов отблеска.]

3. После регулировки множителя, давайте перейдем к параметрам Environment (окружающей среде), доступных нам в RollupBar. Откройте следующий RollupBar:



































































  4. На самой нижней части этого свитка в разделе HDRSetup. BloomMul (множитель цвета)будет регулировать контрастность HDR. В целом, увеличение контрастности HDR может усилить восприятие интенсивности пользователями. Снижение также может быть полезно в экстремальных условиях освещения. Установите его на уровне 1,1 для этого примера.

  5. Мы не будем корректировать цвета для смены HDR Blue shift или BloomColor так как значения по умолчанию вполне достаточно для наших нужд.

  6. Откорректируйте множитель цвет (BloomMul) до 5 и обратите внимание на эффекты. Часто тяжелый цвет используется, чтобы Вызвать эффект сна для игрока. Это увеличивает видимость вспышек.

  7. Так как цвет вспышки очень сильно зависит от точки зрения игрока, рекомендуется использовать параметр, который имеет довольно яркий, но нейтральный цвет. В нашем случае, давайте Выберем цвет RGB 24, 220, 185.

  8.Окончательный свойство, для настройки это множитель вспышек. Оно позволяет контролировать общую интенсивность вспышек. Так как эта сцена в середине дня с приличным количеством HDR освещения, мы должны Выставить его довольно маленьким. Отрегулируйте FlaresMul (множитель вспышек) ,как более реалистичное значением возьмём 0,07.

Теперь Вы настроили параметры HDR  time of day (Время дня) в RollupBar(развёрнутый свиток)!

Как это работает...

Эти параметры будут сохранены в. cry файл и таким образом в игре, когда она будет экспортироваться в движке.

С помощью этих настроек Вы можете дать игроку динамически освещенную, реалистичную или даже стилизованную окружающую среду, изменив несколько значений, таких как bloom multiplier (множитель цвета), в экстремальных значений.

Хотите знать больше...

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

Свет с эффектами вспышки
 
При свете объект находится на уровне, он способен производить эффект отблеска. Тем не менее, это требует материал с правильным шейдером Light.Flare(свет.вспышки).

Эффект Свечение текстуры производит цвет и вспышки

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



Это изображение показывает крайние значения в настройках HDR, но сообщается также причина, по которой разработчик должен проверить различные активы в рамках уровня, для корректировки настроек освещения. 

См. также

  • Рецепт создания ночной сцены с параметрамtime of day (Время дня)
  • Рецепт создания объемного тумана

Создание объемного тумана

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

Готовимся

Вы должны открыть в редакторе уже отредактированный ранее уровень Forest.cry

How to do it...

Как это сделать ...

Так как мы скоро будем регулировать цвет тумана, чтобы легче увидеть изменения, поставим максимальный множитель дымка созданная HDR неба, мы должны установить его множитель:

1. Откройте диалог Time Of Day (Время дня) и проверьте, что расширенные параметры time of day (Время дня) отображаются на дисплее.

2. Установить FogColorMultiplier (множитель цвета тумана) до 10, так что бы мы могли легко увидеть изменения.

3. Далее, Выберите цвет для тумана.

[- Хороший способ, чтобы согреть карту скопировать цвет солнца или цвет неба, чтобы охладить её.]

4. В следующем скриншоте, я использовал для тумана RGB 150, 200, 210.

5. Далее, давайте отрегулируем Высоту атмосферы. Этот параметр определяет Высоту атмосферы над уровнем моря. Таким образом, как и в реальности, чем Выше атмосфера, тем будет меньше видимый эффект слоев тумана.

6. Давайте установим нашу атмосферу до 8000. Так как мы подняли атмосферу, туман на Высоте будет слишком ярким и нам нужно будет настроить его.

7. Установим FogColorMultiplier(множитель цвета тумана) до более комфортного значения 5.

[- Если Вы все же обнаружили, что плотность туман слишком Высока, то регулируйте глобальную плотность.]



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

Как это работает...

Глобальный объём тумана в CryENGINE позволяет моделировать практически все аспекты атмосферы Aerial Perspective (воздушной перспектиВы). Она имитирует равномерное распределение частиц / аэрозолей вдоль плоскости земли и экспоненциальное изменение с Высотой (на основе Высоты над уровнем моря).

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

Хотите знать больше...

Вы должны были заметить другие параметры кроме Fog(туман) в диалоге Time Of Day( Время дня), такие как Density offset(компенсация плотности). Вы также можете узнать, как включить и отключить отображение тумана для удобства редактирования.

Density offset (компенсация плотности)

Параметр Density offset (компенсация плотности) сдвигает плотность тумана на пиксель, на заданную величину. В результате объекты, близкие к зрителю кажутся менее туманными.

[- Регулирование этого эффекта следует использовать осторожно, чтобы не потерять реалистичные черты этим визуальным эффектом.]

Включение и отключение тумана в Render Settings(Параметрах отображения)

Вы можете легко отключить отображение тумана в редакторе без изменения параметровtime of day(времени суток). Для этого необходимо перейти на вкладку Display(Дисплей) в RollupBar и убрав Fog(туман).

См. также

  • Рецепт вернитесь ранее к Terrain Lighting(Освещение местности) в этой главе, чтобы увидеть эффекты освещения солнцем при настройках тумана
  • Перейдите к следующему рецепту для создания пользовательского скайбокса для вашего уровня

Создание ночной сцены с параметрами
time of day(Время дня)

В этом рецепте мы будем создавать ночные сцены с использованием дополнительных параметров time of day(времени суток).

Готовим

Вы должны открыть в редакторе Forest.cry.

Как это сделать...

Давайте создадим атмосферу ночного времени для нашего уровня:

1. Откройте редакторtime of day(Время дня).

[- Вы можете создать резервную копию вашего time of day(времени суток) как файл .tod  инструментом экспорта time of day(Время дня).]

Как только будете беспокоиться о важных моментах, которые относятся к созданию Ночной сцены, сможете восстановить текущие значения.

2. Нажмите кнопку reset values(сброса значения).

3. Установите Время дня 21:00, которое мы можем смело назвать ночью.

Вы заметили, что солнце заходит за горизонт, но теперь мы можем отрегулировать положение, текстуру Луны, которая - будет использоваться в качестве «солнца» в наших ночных сценах.

4. Первое значение которое мы должны изменить это светимость луны Night Sky Multiplier(множитель ночного неба) в части диалога time of day(Время дня).

5. Установить светимость луны =2. Теперь, когда Луна видна мы должны отрегулировать положение Луны и размера.

6. Откройте вкладку Environment(окружающая сред) в RollupBar и найдите свойства Луны в окружающей среде.



7. Отрегулируйте долготу и широту, чтобы изменить положение Луны на небе, куда Вы хотите, или Вы можете копировать параметры как в изображении.

8. Теперь, когда у нас есть базоВые настройки, мы должны регулировать общую окраску и освещение сцены.

[-Не стесняйтесь варьировать эти значения, поскольку не все доступные опции используются.]

9. Установить множитель цвета неба до 0,4, которое будет тусклым по всей карте окружающего освещения.

10. Далее установите цвет Zenith(Зенит) в параметре Night Sky(ночное небо) в подходящий цвет для неба ночью RGB 40,54,51.

11. Теперь мы можем добавить некоторые звезды на сцене за счет увеличения интенсивности свечения Star (звезд) в Night Sky (ночном небе) увеличением параметра до максимального, 3.

[-Если у Вас есть глубина резкости позволяет может быть трудно увидеть звезды время от времени.]

12. Так как мы не хотим прямого освещения, давайте установим множитель солнечного цвета на 0.

Последним штрихом мы сделаем, добавим некоторый тумана на сцену, чтобы Выделить силуэты объектов на расстояние.

13. Установите цвет тумана на довольно темные цвета 61,80,84.

14. Теперь измените множитель цвета тумана 1.

15. Наконец, чтобы сохранить силуэты объектов установить global density (глобальная плотность) до 0,2.

[-Если Вы считаете туман слишком ярким на вашем конкретном мониторе или гамма-установки, Вы можете настроить множитель цвет тумана ниже до 0,5.]

Теперь у Вас есть реалистичное ночное Время дня!

Хотите знать больше...

Есть много других свойств, доступных при настройке ночных сцен. Некоторые из них следует объяснить .

SSAO контрастность и количество

Для усиления ночных сцены Вы, вероятно, захотите увеличить SSAO (экран-космической окружающей окклюзии) количество и соответствующий контраст.

HDRSetup параметры ночью

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

Луны и крона цвет и размер

Если Вы хотите иметь более сюрреалистические сцены, Вы можете настроить цвет луны в различные экстремальные цвета, следует отметить, что этот цвет просто умножается на цвет текстуры луны. Масштаб и цвета кроны позволит вам подчеркнуть вашу Луну и окружающую его область неба освещением.

См. также

Уже имея целую атмосферу, перейдите к главе 3, Basic Level Layout(основная схема уровня) начните закладывать ваше ночное время на уровне.

Переходите к следующему рецепту Цветность всей ночной сцены, чтобы подчеркнуть определенные цвета или стиль.

Цветокоррекция вашего уровня

Цветкоррекция эффектом постобработки, который принимает кадр, оказывает движком и меняет цвета на Выходу по-разному.

Этот эффект обычно используется в кино для улучшения сцен с эффектами, такими как тон и насыщенность, яркость и контрастность, криВые яркости и цвета, и так далее.

Готовим

Возьмите эталонное изображение, которые еще не были скорректированы по цвету и показывают широкий диапазон цветов на открытом уровне. Избегайте использования изображения Высокого разрешения, хотя, они не будут улучшать качество коррекции цвета, а только увеличат время обработки при сохранении. В этом примере я использовал 1280x720 TGA изображения.

Скопируйте / Вставьте THE COLOR CORRECTION LOOKUP REFERENCE CHART (Просмотр справочной таблицы цветокоррекции) этот эталон изображения в Photoshop. Важно использовать диаграмму цвета поставляетмую Crytek, так как компилятору ресурсов понадобится этот файл, чтобы обнаружить и извлечь график.

Сведите все слои и сохраните файл перед началом обучения

Как это сделать...

Давайте узнаем, как цвета изменяют наш уровень.

Сначала сделаем необходимые изменения цвета в Photoshop. В данном примере используем градиент постепенного обесцвечивания цвета к моей сцене:

1. При коррекции цвета эталонного изображения, убедитесь, что изменения, затрагивают добавленную THE COLOR CORRECTION LOOKUP REFERENCE CHART (Просмотр справочной таблицы цветокоррекции).

2. Как только желаемый изменения были внесены, Вы можете сохранить ноВые изображения в качестве CryTIFF файл в корневом каталоге Textures \ colorcharts \ Очень важно, что бы Вы следовали примеру имени:

имяфайла + _cch.tif.

3. После того как создали нашу THE COLOR CORRECTION LOOKUP REFERENCE CHART (Просмотр справочной таблицы цветокоррекции), давайте интегрируем её в нашей сцене.

4. Во-перВых, установим переменную в консоли r_ColorGrading 1.

5. Далее, установите cvar r_ColorGradingCharts2.

6. Установка r_colorgradingcharts до 2 работает так же,как и при установке её на 1, но кроме того, она отображает отладочную информацию в левом верхнем углу вида перспектиВы с поиском таблицы диаграммы цвета, смешивает информацию и имя любой статической графики цветов, которые будут загружены.

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

Например: r_ColorGradingChartImage textures/colorcharts/filename + _cch.dds

Как это работает...

Цветовая коррекция в CryENGINE 3 имеет эталонное изображение, которое получает цвет исправленный художником или дизайнером. Это изображение включает в себя поиск графика цвета по умолчанию, так что все шаги преобразования применяемые к изображению в дальнейшем могут быть восстановлены на сцене через эффект пост цветокоррекции.

При активации через консоль параметра r_ColorGradingChartImage, он загружает определенный цвет изображения карты.

Хотите знать больше...

Вы можете узнать больше о том, почему конвенция имени _CCH должна быть использована или как захватить кадр непосредственно с движка для коррекции цвета.

_CCH наименования

Если Вы будете следовать этой схеме наименований, компилятор ресурсов должен автоматически Выбрать ColorChart как предустановленный и будет использовать его. Убедитесь, что изображение не является плиткой в компиляторе ресурсов. Если Вы хотите, Вы можете генерировать Выходной файл вручную, для того чтобы создать файл с расширением. DDS.

Захват TGA изображения в качестве эталонных изображений

Так как некоторые художники предпочитают использовать несжатые TGA изображения для настройки параметров, они могут быть Выведены из редактора с помощью команды захвата кадров:

  • Установите capture_file_format to tga
  • capture_frames_once до 1
  • capture_frames до 1

Это позволит сохранить TGA скриншот окна перспектиВы в CaptureOutput папку по умолчанию. Она может быть изменена с помощью команды capture_folder в консоли.

Отладка визуальных глюков

Если Вы столкнулись с визуальным сбоями на ПК, убедитесь, что у Вас не перезаписаны настройки 3D для любого редактора или игра запускается в панели управления вашего видео драйвера.

Это может быть одним из основных источников визуальных артефактов.

См. также

Перед цветокоррекцией, Вы должны быть удовлетворены общими параметрами time of day (Время дня). Рецепт создания первого time of day (Время дня) Выше в этой главе, если Вы хотите, провести дополнительные корректировки.

Создание фотореалистичного океана

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

Готовим

Уровень Live_Create_Small должен быть открыт в редакторе. Диалог Time Of Day(Время дня) должен быть открыть в редакторе. Установите время 0630. Вы должны также установить очень Высокую спецификацию для наблюдения расширенных возможностей тесселяции.

Как это сделать...

Давайте создадим ноВые фотореалистичный океан на уровне:

1. Во-перВых, чтобы увидеть применённый в настоящее время материал океана, откройте вкладку Environment(окружающая среда) в RollupBar.

2. Под параметрами Ocean(океан) Вы увидите четыре параметра.

3. Во-перВых, давайте применим наш собственный материал.

4. Нажмите на кнопку browse(Обзор) в параметре Ocean material(материала океана). Это откроет применённый в настоящее время материал океана.

5. Создайте ноВый материал и назовите его my_ocean.mtl и сохранить его в корневой каталог /materials/ocean/.

6. Затем нажмите apply (применить) в параметрах Ocean material(материала океана) в RollupBar. Вы заметите, что воды нет. Это потому, что океан требует специализированных шейдеров для визуализации.

7. Чтобы установить шейдер Вы должны отредактировать ваш вновь созданный материал my_ocean.mtl, и установите параметр шейдера в этом материале к воде.

Теперь у нас есть некоторая основа воды, мы должны применить карту рельефа для создания мелкой ряби и волны на поверхности воды. Это позволит происходить некоторым преломлениям,для поВышение общего эффекта.

1. На данный момент используйте текстуру расположенную textures/defaults/oceanwaves_ddn.dds

2. Для завершения материала убедитесь, что Sunshine(свечение солнца) поставленна галочка в Shader Generation Parameters

[-Поэкспериментируйте с различными настройками шейдеров для более стилизованных и экстремальных типов воды.]

3. Теперь, давайте регулировать настройки Ocean(океана), доступные нам в диалоге Time of Day( Время дня).

4. Затем найдите дополнительные параметры. Отрегулируйте цвет океана замутнения, в приятный голубой, для этой сцены 107, 217, 241 RGB.

[-Ocean Fog Color(Цвет замутнения океана) общая настройка цветов океана, Вы можете установить темно-синий для более глубокой воды и даже зеленый для загрязненной воды.]

5. Легко заметить изменения множителя цвета замутнения и плотность тумана и его общее влияние на видимость, перемещая перспективный вид под водой.

6. После перемещения камеры, поменяйте color multiplier(множитель цвета) тумана и fog density(плотность тумана) до 0,1 и 0,02, соответственно. Эта настройка дает достойные цвета на поверхности воды, а также хорошее подводное замутнение.

Наша последние изменения будут привязка материала к океану в окружающей среде нашего уровня, который мы применяли ранее.

Под вкладкой Environment(окружающая среда) в RollupBar, найдите параметры Ocean Animation(анимация океана):

1. Сначала мы должны отрегулировать направление виртуального ветра применённого к нашей воде. Для этого сначала установите WindSpeed(скорость ветра) до 8 так, чтобы быть в ясно видеть, в каком направлении ветра происходит анимации воды.

2. Далее, установите направление ветра на желаемое значение, в данном случае установить его на 4.

3. Измените скорость ветра ближе к реальности около 3.

4. Наконец, мы будем корректировать размер волн.

5. Экстремальные настройки будут Вызывать искажения у волн, так что наблюдать эти изменения неприятно.

6. Для наших целей, несколько Выше, чем нормальная Высота волны может быть достигнуто путем установки Waves Size(размер Волн) до 0,5 и, установив Waves Amount(Сумма волн) 1.

[-Если Вы хотите достичь колебаний воду у пирс, просто увеличить количество волн.]

Как это работает...

Параметры окружающей среды, воды, соответствующее time of day(Время дня) сохраняются в пределах уровня.

Использование новейших графических программируемых карт шейдеров, CryENGINE не страдает от пересечения оси Z с местностью, а получает хорошую пену на пляже и подводное замутнение.

Хотите знать больше...

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

Анимация параметров воды

Параметр time of day(Время дня) Ocean(океана) может быть анимирован, как и любое другое значение в time of day (Время дня).

Caustics (Каустика)

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

  • Очень важно для реалистичного вида воды
  • Дополнительные рендеринг, может обрабатывать непрозрачные / прозрачные, может быть сделан отдельно, но нам не хватает некоторых данных, таких как на пиксель нормалей, чтобы дать интересный взгляд
  • На основе реальных направление проекций Солнца
  • Процедура создается с использованием трех слоев
  • Использование хроматической дисперсии
  • Темнее слегка имитирует мокрую поверхность
  • Трафарет предварительного прохода помогает немного увеличить производительность

Свободные преобразования FFT воды

CryENGINE 3 анимирует воду через алгоритм FFT на процессоре. Существует уникальное преимущество этого,так как мы получим даже физику взаимодействия, лиц или предметов, плавающих на волнах, реагирует, когда Вы прыгаете на них, и это работает очень правдоподобно.

  • Используется статистическая модель анимации Tessendorf
  • Хорошие результаты для разнообразия использование: спокойный, рывками, и т.д.
  • Рассчитанный на процессор для 64x64 сетка, Пираты Карибского моря 3, которые используются 2k х 2k
  • Ø Загрузить результаты в объемную текстур
  • Ø Vertex смещения на GPU

[-Нижняя функция HW используются простая погрешность сумму волны.]

 

Кроме того, карты нормалей перевод - четыре нормальных слоя карты

  • Высокие частоты / низкие частоты
  • Анимация по направлению потока воды

Улучшение неба с облаками

Облака лишь один из примеров различных типов объектов и функций, поддерживаемых в CryENGINE 3.

Готовим

Вы должны открыть уровень live_create_small.

Как это работает…

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

1. Перетащите объект Cloud (облако) на уровень.

2. Поместите его на уровне Выше 1000 метров (Z value = 1000).

3. Убедитесь, что объект Cloud (облако) Выбран так, что его свойства отображаются в RollupBar, затем нажмите на значок MTL <No Custom Material>.

4. Это откроет Material Editor(Редактор материалов), где Вы сможете Выбрать желаемый материал облака.

Убедитесь, что Shader Common.Cloud Выбран в настройках материала.

5. Масштабируйте его, Выбрав инструмент масштаб(ScaleTool) из панели инструментов, убедитесь, чтобы Выбрано масштабирование по все трем осям.

6. Для того чтобы установить движение облаков Выставьте значение AutoMove True( Правда) и установить расстояние исчезновения до 100, чтобы сделать их невидимыми, когда они достигнут края окна, в котором они движутся.

7. Затем, вам нужно определить размеры (SpaceLoopBox) -коробка в которой они движутся от одного конца до другого - должно быть 2000, значение по умолчанию для всех трех осей.

8. Наконец, вам нужно установить скорость, с которой они будут двигаться. Для нормального облака, Вы можете использовать 5, и туч, около 15. Немного поэкспериментируйте, но помните, что если Вы хотите Выделить облако Выключите AutoMove: в противном случае, может быть трудно Выделить облако.

Distance Cloud Tool(Инструмент Расстояние облаков) позволяет размещать самолеты в небе, похожие на облака, если правда текстура назначается. Они прекрасно подходят для создания реалистичного удалённого неба настройте для вашего уровня, не Вызывает огромных проблем замедления визуализации. Расстояние облаков в основном помещается в горизонтальной плоскости в небе. В отличие от других типов облаков они не могут пересекать друг друга и, таким образом, они в основном подходит для заполнения небо на большом расстоянии (горизонт) или больших Высотах. Тем не менее, эти ограничения также позволяет для более продвинутых затенения с низкими затратами (нет необходимости замены простым одношейдерным проходом).

1. Перетащите объекты DistanceCloud на уровень.

2. Масштабируйте его с scaletool(инструментом Масштаб) до 100. Затем назначьте один из материалы на расстояние облаков (могут быть использованы все материалы с шейдерами для расстояния облаков в папке materials/clouds). Расстояние облака 2D, так что они должны быть размещены дальше или Выше, так чтобы игрок не видел, что они плоские.

3. И, наконец, поставить облако с хорошим затенением и перетащите на уровень.

4. Множество VolumeObjectFile в Libs/Clouds/Default.xml, Выберите материал облака в Material Editor. Убедитесь, что Shader установлен в VolumeObject. Теперь можно масштабировать облако по мере необходимости.

Разница между нормальным 3D облаком и VolumeObject в том, что объемные облака имеют правильное расположение себя. Не ставьте слишком много объемных облаков, так как они сильно влияют на производительность.

[-Если назначить ноВый материал, убедитесь, что к нему применяется правильный шейдер. Для объёмные облаков, Вы должны назначить шейдер VolumeObject.]

Как это работает...

Есть четыре различных способа для визуализации облаков в движке. Это потому, что часто есть требования для сочетания разных типов для достижения определенных эффектов или если бы некоторые виды не могли бы быть использованы. Четыре способа визуализирования облака в CryENGINE:

  • Рисование облака в skybox, управляем художниками. Этот метод хорош для медленной графической карты, так как требуется только текстурирование, но это только для статических изображений и она не будет реагировать на изменения time of day (Время дня).
  • Imposter (Псевдо облака) оказываются в промежуточных 3D текстурах и требуют обновления каждые несколько кадров. Они медленнее и потреблять больше или меньше памяти во время Выполнения, в зависимости от вида.
  • distance (Периодические облака), которые делаются быстрее, имеют постоянные требования к памяти, поддерживают time of day (Время дня) затенение, но не реальное 3D. Игрок, который будет рядом с ними увидит, что они плоские.
  • volume (Объемные) облака настоящий 3D, они даже правильно пересекаются с геометрией и имеют постоянное требование к памяти. Недостатком их применения является то, что они медленнее, чем остальные, и в Выглядят немного размытыми.

Хотите знать больше...

Вы можете узнать как создать тени облаков моделируемые в вашем уровне.

Тени Облаков

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

Используйте текстуры тени облаков по умолчанию (textures | clouds | cloud_pattern.dds) и настрйте его в Photoshop, рисуя его в местах белого цвета , где Вы не хотите чтобы были тени.

Установите Cloud Shadow Speed (скорость тени облака) до 0,001 для быстро движущихся облаков и 0,0005 для нормально движущихся облаков.

См. также

  • Переходите к следующей главе, главе 5, ОсноВы искусственного интеллекта, чтобы сделать дождь на вашем уровне, который будет исходить из облаков.

Создание этого дождя на вашем уровне

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

Есть два различных метода для получения дождя CryENGINE. В следующем примере рассмотрим, только технику частиц и воздействие на объект.

Готовим

Вы должны открыть уровень forest.cry

Как это сделать...

Мы начнем с использования техники частиц, чтобы создать наш перВый дождь:

1. Перетащите и поставьте объект ParticleEffect для вашего уровня,view/open view/pane/ вкладка DataBase View вкладка Particle. Эти частицы называются следующим образом:

rain.rain.space_loop = (libName).(subfolderName).(effectName)

2. Параметры, такие как функция rain.rain.space_loop, можно регулировать с помощью своих данных настройки в Particle во вкладке DataBase View.

3. Выставьте значение Countscale эффект Particle(частицы) до 4 (помните, что это значение перемножается с графой значение частицы).

4. Далее, установите размер до 0,5 для меньших и более реалистичных капель дождя.

5. Далее, давайте ограничим этот эффект в определенной области нашего уровня.

6. Во-перВых, убедитесь, что используется инструмент Выбора формы в RollupBar для Выбора системы spaceloop частиц, мы только что создали.

7. Это приведет к атрибуту эффекта частиц активного включения и Выключения при пересечении границы области.

[-Возможно, вам придется установить active(активность) значение ложь для отключения частиц, когда Вы входите в игру изначально.]

Следующий эффект, который мы будем использовать PostEffect Rain(Пост эффект дождя), что является ноВым для CryENGINE 3. Это объект эффект дождя, который будет работать и по истечении его радиуса. Эти объекты расположены так же, как нормальные объекты:

1. Удалите эффект частиц, который мы создали ранее, чтобы отключить только частицы дождя.

2. Перетащите Rain(Дождь) Entity | Environment в RollupBar.

3. Вы можете регулировать количество. Хороший сильный дождь 3

4. Теперь, измените цвет на темно-синий или серый. Если белый, то он может быть ошибочно принят за снегом.

5. И, наконец, настроить puddles amount(сумму луж) до 5 и волны до 4; это даст драматический, но и реалистичной эффект сырости.

Этот тип лучше всего подходит для больших, безвыходных типов настроек

Как это работает...

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

Преимущество этого эффект в том что он зацикливает пространство эффекта частиц или применяет мокрый слой на объектах ,все объекты в радиусе объекта влияют и могут быть изменены или динамическое изменение в реальном времени. Объекты могут быть даже наполовину помещены в область дождя. Crytek разработала гениальное решение в CryENGINE 3, где области под объектами, которые будут препятствует "реальному" Дождю действительно окклюзирует мокрый эффект. Полный эффект дождя на экране автоматически отключается, если объекты видны на экране, чтобы дождь был Выше чем игроки, которые закрывают от дождя.

Хотите знать больше...

Вы, возможно, заметили некоторые другие атмосферные объекты доступные вам. Ниже объясняется, некоторые из тех, которые относятся непосредственно к ураганной или дождливой среде.

Объект молния

Добавите объект Lightning(Молния)в ваш уровень из разделаEntity/Environment. Это позволит поВысить эффекта дождя и грозы путем добавления процедурных частиц и световой эффектов, которые могут быть отрегулированы в соответствии с большинством ситуаций.

Ветер

Глобальная скорость ветра может быть скорректирована путем ввода числа (значения в м / сек) в Environment (окружающую среду) в параметрах ветра векторного поля (положительные значения ‘у’ определить быстрый ветер на севере, ‘у’ отрицательных на юг, положительных ‘х’ на восток, и отрицательные ‘х’ на западе).

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

Объем тумана

Объект туман, используется для перезаписи эффект тумана в конкретных областях. Вне помещений, тонкий эффект тумана может быть добавлен, чтобы имитировать пыльное месте. Чтобы использовать, создайте Area Box и примените к Area Box объекте Fog(туман). Когда в игровом режиме, Вы идёте в область и просматриваете, как туман получает совершенно другую внутренность. За пределами поля, туман не видно.

Вышло обновление CryENGINE 3 - 3.4.4
FlowGraph. Простые уроки для новичков