Displacement Grass

From Valve Developer Community
< Ru
Jump to navigation Jump to search
English (en)Русский (ru)Translate (Translate)
Broom icon.png
Эта статья или раздел требует доработки, чтобы соответствовать более высокому стандарту качества.
Для получения помощи, обратитесь к руководству по редактированию на VDC и процессу очистки на Wikipedia. Также не забудьте проверить наличие заметок, оставленных отмечающим на странице обсуждения этой статьи.

Без вхождения в детали, этот туториал ведёт речь о создании травы в разных местах на поверхности при помощи образцового проекта, где 3 браша были созданы для того, чтобы показать как смешанные текстуры могут работать. Эта статья имеет примеры для HL2(en), HL2DM(en) и CS:S(en)ource. Примерные карты доступны для скачивания снизу страницы.

WiseGrass01.jpg

Создание деформированой поверхности

Чтобы создать траву, сначала нужно создать поверхность. В этом примере будут использованы поверхности с силой 2 и 3. Поверхность с силой 4 не особно нужна для вещей вроде таких, она нужна только если вы собираетесь сделать что-то очень мягкое и округлое.

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

В Face Edit Dialog(en), откройте Displacement меню (показано ниже) затем выбирете браш, который вы хотите деформировать и нажмите Create.

Именно здесь нужно выбрать 2, 3 или 4 силой будет обладать ваша поверхность. Заметьте, что поверхость браш слева имеет силу 3, в то время как центральный имеет силу 2.

Чтобы иметь смешанную траву, всё что вам нужно сделать-поставить поверхности силу 2, скомпилировать карту. Вы не увидите траву в Хаммере, но она появится в игре.

У браша слева будет поставлена сила 3 , и как только поверхность будет создана, будет добавлено немного неровностей.

Нажмите Noise и задайте ей настройку Min 0.5 и Max 3.0, теперь примените настройки и посмотрите на поверхность. Теперь она имеет рандомные аккуратные кочки. После использования Noise, вы можете использовать Sew.

Вот объяснение Noise от Valve:

Добавьте неровностей на выбранную поверхность. The Min значение ставит насколько далеко вниз уйдёт неровность относительно нормальной поверхности. Max ставит насколько высоко уйдёт неровность относительно нормальной поверхности. Нажатие ОК рандомизирует расположение точек подобных неровностей на поверхности где-то между этими двумя значениями.
WiseGrass03.jpg

Ещё одна фишка, Paint Alpha, использована на браше слева.

WiseGrass04.jpg

С этим инструментом вы можете добавить немного пустынной территории на левый браш, в них трава расти не будет. Вам действительно стоит поэксперементировать с этим инструментом и размерами брашей. Для этого примера были использованы только опции Raise/Lower от 1 или 2 и радиусами от 25.0 и 117.0.

Текстурирование

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

  • HL2 - nature/blendgrassgravel001b
  • CS:S - nature/blendgrassgravel003a

Если вы ищите смешанные текстуры для вашей карты, то используйте слово-фильтр blend и вы найдёте смешанные текстуры травы, песка и гальки. Не стесняйтесь эксперементировать с ними.

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

Всегда текстурируйте ваши поверхности со всех сторон, тогда вы не получите ошибку nodraw on displacement surface. Кроме того, компилятор отбросит эти стороны, только деформированные поверхности будут созданы.

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

Дорабатываем окружающий мир

Заметьте, как хорошо эти три браша подходят друг к другу.

В примерной карте было добавлено несколько пропов чисто для того, чтобы показать, как простые вещи вроде зарослей могут быть добавлены. Есть очень много подобных SDK моделей для использования на ваших картах. Использованные модели:

  • models/props_foliage/cattails.mdl
  • models/props_foliage/Shrub_01a.mdl
Collisions: Not Solid
Disable Shadows: Yes

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

Небольшой камень был добавлен при помощи Noise с Max 7.0 и Min of 0.5 настройками чтобы добавить каменную зону (это было сделано только для HL2 версии, но это так же работает и в CS:S). Это может быть очень полезным для того, чтобы спрятать что-то некрасивое позади, плюс камни всегда подходят для открытой местности и они врятли когда будут выглядеть излишне.

Посмотрите далее