В Houdini 17 SideFX представил некоторые новые инструменты и усовершенствовал другие, чтобы расширить диапазон возможностей для художников, создающих полностью процедурные ландшафты или добавляющих детали к модели на основе реального мира. Например, расширенный узел Erode имитирует эрозию более научно обоснованным способом и имеет гораздо больше элементов управления, чем раньше. Основные параметры узлов HeightField теперь могут быть замаскированы, и есть кнопка мгновенного рисования, которая автоматически устанавливает соответствующие узлы для рисования.
Научный подход к нашим пейзажам компьютерной графики всегда поможет нам достичь лучшие результаты, поэтому мы не просто знакомимся с новыми возможностями рельефа, но также смотрим на некоторые базовые научные аспекты и исследуем некоторые новые методы, такие как набор инструментов Vellum для имитации тектонического сжатия.
Загрузите ресурсы для этого урока.
Также прочитайте: Наш обзор Houdini 17 Banshee.
Содержание статьи
- 1 01. Изучите основы
- 2 02. Понимать геологию
- 3 03. Создайте сцену с песочницей
- 4 04. Начало работы с узлами
- 5 05. Основная причина и следствие
- 6 06. Используйте Vellum tectonics
- 7 07. Импорт DEM
- 8 08. Используйте узел MapBox
- 9 09. Используйте узел эрозии
- 10 10. Изучите вкладку Коренные породы
- 11 11. Distort by layer
01. Изучите основы
Чтобы эффективно использовать систему высотных полей Гудини, мы должны сначала изучить ее основные принципы. Когда SideFX представил этот набор функций в версии 16, как обычно, они сделали видео мастер-класса (см. Выше). Я рекомендую это для тех, кто не знаком с основами.
В основном модуль Terrain в Houdini состоит из группы узлов SOP, каждый из которых имеет HeightField в своем названии. Они создают особый вид геометрии: двумерную объемную сетку, которая больше похожа на двухмерное изображение с пикселями, но Houdini отображает / отображает его как поверхность.
Аналогично тому, как в файлах DEM хранятся данные о высоте, каждый пиксель хранит значение высоты и с этой величиной толкает конкретный участок поверхности вверх, именно так работают текстуры смещения. Эти узлы предназначены для рабочих процессов генерации рельефа, поэтому, даже если мы используем другие инструменты для создания ландшафтов, это наиболее удобный и эффективный способ во многих случаях.
02. Понимать геологию
Исследовательская наука Геология Земли имеет решающее значение для точного моделирования реальных процессов в компьютерной среде. В наиболее упрощенном виде мы можем думать о Земле как о большой капле жидкости и относительно мягкой материи, просто капельке с точки зрения вселенной, с твердой кожей, как виноград. Иногда кожа этой капли шириной 12 750 км разбивается на куски, подобно тому, как кожа на поверхности горячего молока или пудинга разрывается на части, когда она нагревается и начинает кипеть.
Эта затвердевшая оболочка магмы, кора, тоньше под океанами и образует базовые слои ландшафтов и многих геологических процессов. Некоторые из них разрушаются силами тектонических движений. Эти изначально магматические породы трескаются, распадаются, разлагаются, а иногда и за тысячи миль от них оседают и снова слипаются, образуя осадочные породы. Воздействие атмосферных воздействий и атмосферных воздействий со временем вызревает на поверхности, что приводит к различным формам и текстурам.
03. Создайте сцену с песочницей
Learning через игру — это всегда хороший способ познакомиться с инструментом компьютерной графики. Даже если вы уже использовали инструменты ландшафта, стоит создать сцену с песочницей с простой геометрией и опробовать новые инструменты и параметры в H17. Поместите несколько полигональных примитивов вокруг, как на этом изображении, и включите их в систему полей высоты, сначала создав узел HeightField, а затем используя узел проекта HeightField, который печатает геометрии в поле высот.
Теперь мы можем начать пройти через различные узлы HeightField и применить их к этой простой сцене. Намного проще и понятнее понять влияние этих узлов, чем использовать произвольные и сложные формы. Главным узлом эффектов эрозии является HeightField Erode, который был обновлен в версии 17 с новыми функциями и оптимизациями.
04. Начало работы с узлами
Мы можем погрузиться в этот узел, чтобы понять, как оно работает. Поскольку он автоматически погружается в более глубокий узел, мы должны перейти на один уровень после команды погружения. Как мы видим, в конце трубопровода находятся три основных узла эрозии: тепловой, осажденный и гидро. Стоит создать их вне этого контекста с тем же порядком, чтобы наблюдать их эффекты.
Тепловой узел имитирует механические эффекты выветривания поверхностей на базовом уровне. В действительности существуют различные причины, которые приводят к разложению и распаду горных пород: тепловое расширение и сжатие, замерзание, разрушение под давлением (защитное покрытие), рост кристаллов соли, биологическая активность, истирание и так далее. Они разбивают камень на все более мелкие кусочки и накапливаются на дне склонов.
Узел осаждения создает слой воды и разбрасывает на нем капли. Они не предназначены для того, чтобы быть связанными с дождевыми каплями — они запускают симуляцию и добавляют изменения, которые сделают эрозию более неровной.
Этот слой воды необходим для узла Hydro, который содержит узел Slump внутри, наиболее сложный узел нижнего уровня моделирования эрозии.
05. Основная причина и следствие
Обычный первый шаг генерации рельефа — если он должен быть полностью процедурным — это добавить случайный образец на пустую начальную поверхность. В природе, пожалуй, вообще нет случайных процессов, так как все зависит от предыдущих событий. Таким образом, вместо использования узла HeightField Noise, мы можем установить более физически правдоподобную модель массирования, используя универсальные возможности моделирования Houdini.
Однако главное преимущество высотных полей состоит в том, что мы можем обрабатывать большие ландшафты с более мелкими деталями по сравнению с другими типами геометрии. Использование узлов моделирования делает объем памяти еще больше, чем сами эти геометрии, поэтому мы всегда должны заботиться о том, сколько деталей мы поместим на этом этапе. Позже мы должны добавить дополнительные детали с полями высоты, которые в противном случае были бы слишком тяжелыми.
06. Используйте Vellum tectonics
Мы можем фактически создать этот шаг в реальном мире используют несколько слоев толстой ткани. Если сверху положить слой слегка влажного песка или более мелкозернистого порошка, такого как гипс, а затем начать раздавливать ткань, мы можем наблюдать, как ведет себя верхний слой порошка. Я рекомендую проводить практические эксперименты — даже играть с песком и водой на пляже — поскольку это дает нам тактильные ощущения, недоступные в программном обеспечении 3D.
Для подобных эффектов мы можем использовать симуляцию ткани Vellum в Гудини. В этой сцене есть три слоя геометрии плотной ткани друг на друге. Под ними находятся два поликуба, каждый из которых модулируется узлом Горного шума для неровных поверхностей. Я анимировал их движением закрытия и сдвига, чтобы имитировать тектонические плиты. Они подключены к входу статической геометрии Веллума. Я использовал Vellum Drape вместо узла Vellum Solver для симуляции, потому что он больше похож на новый узел Erosion, так как в нем есть опция стоп-кадра.
В этом узле статическое трение установлено на низкое значение, например, 0,1; в природе с такими масштабами все имеет тенденцию вести себя плавно и скользко, очень медленно по сравнению с человеческими временами. Однако шкалы динамического трения рекомендуется устанавливать на противоположное, намного выше 1, например 3-4, чтобы получить достаточное трение между тканью и тектоническими плитами, и они могут образовывать складки. Я использовал относительно высокие значения демпфирования, чтобы преодолеть взрывное поведение, и самое главное, чтобы включить все параметры пластичности, так как они являются «эффектами памяти» моделирования ткани: они сохранят морщины и предотвратят их сглаживание во время моделирования ,
Я начал с одного слоя ткани, поскольку было проще и быстрее играть с параметрами, но затем продублировал их друг над другом с небольшими различиями вращения, чтобы уменьшить любые помехи разрешения сетки во время симуляции. Использование нескольких слоев делает моделирование более похожим на естественные процессы, так как обычно разные слои породы располагаются друг над другом. Это также необходимо для добавления достаточной толщины к моделированию, поскольку использование одной ткани с такой же толщиной может значительно замедлить моделирование.
07. Импорт DEM
Другой способ получить Более реалистичной моделью массирования является импорт реальных данных. Если у нас есть файл DEM, мы можем напрямую использовать файл HeightField для импорта. При настройках по умолчанию он сохранит исходное разрешение файла DEM, которое может быть огромным, поэтому рекомендуется обрезать интересную часть для экспериментов, а затем использовать всю область только изредка. Это хорошая идея, чтобы установить реальные масштабы здесь, потому что узлы моделирования будут нуждаться в этом.
08. Используйте узел MapBox
Я рекомендую установить Game Tools for Houdini, так как он имеет инструменты, которые могут быть полезны для работы на местности. Возможно, наиболее интересным является узел MapBox, который позволяет нам непосредственно просматривать Землю внутри Гудини, затем мы можем выбрать конкретную область и загрузить модель рельефа и ее спутниковую фототекстуру. У него есть опция вывода поля высоты, поэтому вся планета в наших руках.
09. Используйте узел эрозии
Давайте использовать узел эрозии на настоящей горе. Эти данные о высоте получены с Аляски, вокруг водохранилища Голубого озера, которое имеет красивый горный ландшафт. Как мы видим, просто используя настройки по умолчанию, мы можем достичь довольно реалистичных результатов — они улучшили этот узел во многих аспектах. Существует новый переключатель Freeze at Frame, поэтому после того, как мы удовлетворены результатом, мы можем отметить это, но это также хорошо для интерактивного опробования эффектов различных параметров. Обрежьте меньшую, но релевантную часть ландшафта и отметьте ее, затем установите меньшее значение, например 5, и поиграйте с параметрами. Вы можете видеть, что он обновляется более или менее в интерактивном режиме, однако некоторые имитации внутри не обновляются хорошо, поэтому вы должны нажимать Сбросить симуляцию каждый раз для полной обратной связи.
Описание новых функций этот узел находится далеко за пределами этого урока, поэтому я рекомендую вторую часть официального видео мастер-класса H17 Terrain (см. выше), посвященную новым функциям инструментов ландшафта.
10. Изучите вкладку Коренные породы
В документации еще есть отсутствие информации о вкладке Bedrock, однако стоит использовать эту функцию, если цель состоит в том, чтобы включить в симуляцию какую-то трехмерную структуру горных пород. Мы можем ввести вторичное поле высоты во второй вход узла Erode, который определяет «доисторическую» структуру ландшафта в этом случае. Мы можем легко добиться эффекта страты, включив функцию Adjust Erodability от Strata.
Глубина пласта определяет диапазон глубины горизонтальной оси редактора рампы относительно высоты основного слоя. Отрицательное значение инвертирует все это и помещает слои выше этого слоя. Как вы можете видеть на этом скриншоте, я использовал узел «Искажение по шуму», чтобы получить неровные поверхности пластов, а также повернул геометрию, чтобы разрезать ландшафт под небольшим углом наклона. В редакторе рампы мы можем добавить страты, определив относительную твердость коренной породы в зависимости от глубины, каждая из которых имеет разные полосы эродируемости. Отключение зажима в Strata Bounds зацикливает этот паттерн, поэтому независимо от глубины эрозии мы получим повторяющиеся вертикальные паттерны после достижения конца рампы.
Единственная неутешительная сторона этой функции — ограничение полей высоты, как будто мы наблюдаем эти явления в реальности, особенно на смелых скалах, страты имеют сильные рельефные узоры, которых мы не можем достичь с полями высоты. Тем не менее, преобразование этих частей в многоугольник или VDB SDF позволит нам добавить эти детали.
Переключатель «Регулировка высоты путем изменения коренной породы» должен оставаться выключенным для такого рода эффекта, но в противном случае он позволяет нам использовать анимированный базовый слой, который обновляет вход для этого узла в каждом кадре.
11. Distort by layer
Наконец, давайте поговорим об этом узле, как это совершенно новое в H17. Имеет два входа. Первый ввод обычен для самой геометрии. Второй может содержать слой направления для искажения, аналогично тому, как эти виды узлов работают в программном обеспечении на основе узлов.
Эта статья была первоначально опубликована в выпуске 243 из 3D World самый продаваемый в мире журнал для художников компьютерной графики. Купить номер 243 здесь или подписаться на 3D World здесь .
Статьи по теме: