Создание ландшафта в 3d max

Иллюстрация к статье о способабх построения ландшафта в 3ds Max

Недавно мне пришлось прочитать несколько уроков на тему построения ландшафта в 3ds Max. Помню, что тогда меня удивила неспособность встроенного инструментария 3ds Max быстро и внятно создать имитацию земной тверди, всегда встречались какие-нибудь неудобства. Поэтому я решил провести ревизию основных методов моделирования рельефа и вывести наиболее удобный с точки зрения создания и дальнейшего редактирования. И, понятное дело, если надо получить точную модель реальной земной поверхности, за основу в любом случае придется брать горизонтали высот как на географической карте.

Сплайны-горизонтали для пострения земной поверхности в 3ds Max
Набор сплайнов-горизонталей для построения рельефа

1. Составной объект Terrain

Построение ландшафта объектом Terrain в 3ds Max
Поверхность Terrain: слева несглаженная, справа после Turbo Smooth

Первый и самый очевидный способ, который, к сожалению, дает не самый лучший результат. Поверхность строится на основе набора сплайнов-горизонталей, причем расстояние между вертексами непосредственно влияет на форму поверхности. Чаще всего сетка получается слишком грубая, а встроенные в параметры Terrain переключатели дают слишком скромный эффект, поэтому приходится к исходным сплайнам добавлять вертексы вручную или с помощью модификатора Normalize Spline.

2. Плагин Populate:Terrain

Построение ландшафта плагином Populate: Terrain в 3ds Max
Результат работы плагина Populate: Terrain в 3ds Max

Аналогично предыдущему способу строит рельеф на основе набора сплайнов-горизонталей, но на выходе мы получаем идеальную четырехугольную сетку, которую легко редактировать на следующих этапах. Результирующий объект представляет собой сплайн с наложенным сверху модификатором EditPoly (в стеке отображается как Populate:Terrain). Плагин предназначен для версий Autodesk 3ds Max от 2010 до 2012 (32 и 64 бит) и абсолютно бесплатен для коммерческого использования. Скачать Populate:Terrain можно с официального сайта разработчиков.

3. Модификатор Displace.

Построение ландшафта модификатором Displace в 3ds Max
Поверхность из плоскости модификатором Displace и картой Noise

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

4. Paint Deformation в Edit Poly

Построение ландшафта с помощью Paint Deform в 3ds Max
Поверхность получена из Plane с помощью Paint Deform

Плоскость преобразуем в полигональную сетку и рисуем нужный рельеф мышкой (кнопка Push/Pull в свитке Paint Deformation на командной панели). Cпособ идеально подходит для быстрой прорисовки почти произвольной поверхности, поскольку вы можете строить горы и впадины прямо в окне проекции . В этот же раздел можно записать и другие похожие способы создания произвольного рельефа из плоскости: модификатором Noise, Wave…

5. Модификатором Surface из сплайнов.

Построение ландшафта с помощью Surface в 3ds Max
Пример рельефа Surface по сплайнам

Этапы работы этим способом: сплайны-горизонтали собираем в один объект-сплайн, применяем модификатор CrossSection, модификатор Surface — получаем сглаженную поверхность. Сложность этого способа заключается в необходимости добиваться одинакового количества вершин на горизонталях — абсолютно нереальное требование на сложных поверхностях.

Можно подобрать еще какие-нибудь экзотические способы, моделить нурбсами, полигонами и еще много чем, но думаю, что оптимальный результат с точки зрения скорость-качество дает плагин  Populate:Terrain. Конечная поверхность легко редактируется, замечательно сглаживается, при этом за основу можно брать готовые горизонтали с топоосновы в AutoCAD, что гарантирует точность построений.

Создание ландшафта в 3d max: 18 комментариев

  1. Добрый день, Константин. Скажите,пожалуйста, как установить этот плагин и где он появляется в максе? Я его уже скачала. А что делать дальше?

    1. Добрый вечер. Запустите файл, который вы скачали с сайта разработчика, и он сам все установит. Чтобы начать творить, в 3ds Max создайте набор сплайнов-горизонталей, объединенных в один сплайн, выделите и запустите команду Populate: Terrain… из меню Tools. Откроется окно, в котором вы можете задать плотность сетки и запустить просчет поверхности кнопкой Process. Вот, собственно, и все — земная твердь готова!

  2. Спасибо, Константин! Получилось установить. Но опять какие-то проблемы. Делаю сплайны, применяю Populate: Terrain и получается какое-то кривое уродство, на землю совсем не похожее, скажите, пожалуйста, в чем может быть моя ошибка?

    1. Форма вашей земли зависит от формы и взаимного расположения по высоте сплайнов, установленной плотности сетки и флажков в разделе Processing Options. Для сохранения точной формы горизонталей поставьте флажки на Keep Original Border и Contour Lines. Подберите желаемую плотность конечной сетки в разделе Grid: чем меньше будет каждый полигон, тем точнее форма, но дольше просчет. Для удобства можете выбрать переключатели в разделе Mode: Subdivs — на сколько клеток будет поделен объект по длине и ширине, Size — размер полигонов выставляете вручную в единицах вашей программы (мм, см, м, км…), Percent — в процентном отношении (например 50% — объект поделится пополам по длине и ширине, 10% — на 10 частей…).

  3. скажите, долго ли делается процесс построения рельефа ( грузится просчёт
    )?

    1. Зависит от плотности сетки, которую вы поставили в разделе Grid. Попробуйте для начала поставить Subdivs 10, посмотрите, что получится, удалите модификатор, попробуйте значение больше или меньше, не подошло — снова удалите модификатор и попробуйте другое значение. Так понемногу повышая или понижая плотность, добейтесь оптимального вида поверхности за разумное время.
      Если вы сразу поставите очень большую плотность, то просчет займет очень много времени, а объект получится очень «тяжелым».

  4. спасибо, Константин. Но опять получилась переломанная остроугольная форма, вместо холмика! Можно я вам пошагово напишу,что я делаю, может быть, станет понятно в чём ошибка.
    У меня мах2011(64б),p.terrain 1.3. Я создаю (в проекции топ) line(closed)(как у вас на верхнем рисунке на этой странице), поднимаю их на разные уровни в боковой проекции, выделяю все, convert to editable spline, потом приаттачиваю все друг к другу, и делаю p.terrain — и ничего не получается!

    1. Остроугольная форма может появиться, если вы задали слишком маленькую плотность сетки, например 50%. Сами по себе полученные полигоны не могут гнуться, поэтому для сглаженной поверхности нужно задавать соответствующее разбиение.
      Не могу предположить других вариантов, поскольку плагин корректно отрабатывает даже пересекающиеся и закрученные в спираль сплайны. Разве что вы перепутали вид сверху с видом спереди, и рельеф выдавливается боком).

  5. Спасибо!!!Я ,оказывается, перепутала вид с верху с видом спереди.
    Теперь что-то получается!

  6. Добрый вечер, Константин. Помогите ,пожалуйста, справиться с ошибкой в файле. У меня файл 5 млн полигонов. На первый взгляд нормально работает, но когда пытаюсь, примёрджить его в другую сцену где 2 млн полигонов, всё зависает, хотя другие файлы легко примёрдживаются.Что это может быть? Есть ли какие-то плагины для лечения? именно этот файл часто выдаёт ошибку и макс закрывается, и периодически очень плохо двигается в проекциях.вообщем , с ним точно что -то не так. комп. мощный,другие файлы такого объёма тянет.

    1. Добрый вечер. Предлагаю такие пути решения проблемы:
      1. Вставлять не через Merge, а как xRef.
      2. Попробовать конвертировать все объекты в Edit Mesh.
      3. Оптимизировать сцену — сократить количество полигонов.
      3. Методом исключения найти объекты, которые вызывают ошибку и заменить их.
      4. Радикальный — сохранить как 3ds и вставить через импорт.

  7. Еще есть способ Cloth > Silk. Накидываем ткань на сплайны-горизонтали как скатерть на стол, сажаем траву и получаем ландшафт

  8. Константин Спасибо! Установил, проверил, отличный способ построения ландшафта!

  9. Добрый день!
    Скачала данный плагин,открыла автокадовский файл с горизонталями,но после применения populate terrain весь рельеф становится черным и ничего не видно.Как можно решить данную проблему?

    1. Здравствуйте. Присвойте рельефу какой-нибудь материал, и он перестанет быть черным (если, конечно, материал не черный). Чтобы поменять цвет сетки объекта в режиме wireframe, щелкните по цветному квадратику справа от названия объекта на командной панели и выберите желаемый цвет.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *