Как сгладить грани в 3ds max
Перейти к содержимому

Как сгладить грани в 3ds max

  • автор:

Как сгладить грани в 3ds max

В этом уроке, предметами нашего изучения станут закруглённые края/галтели (Fillets) и фаски/скосы (Chamfers), а также различные приёмы, с помощью которых они моделируются. Для начала – что такое фаска и галтель? В мире математически идеальной компьютерной графики грани объектов ровные, точнее жёстко-очерченные или так называемые «твёрдые грани» (hard edges). Когда вы создаёте куб, все его грани являются остроконечными, в реальности, практически все предметы имеют закруглённые грани (иногда, конечно, едва заметные). Взгляните на это фото стола :

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

Фаска это когда грань срезается (например) на 45 градусов. Галтель почти то же самое, но срез граней делается с закруглением. Более понятно, на приведённой ниже диаграмме :

Исходная модель
Вот наша исходная модель, со всеми идеально прямыми гранями. Модель в формате obj можно загрузить здесь.

Полигональная модель, 50 многоугольников в видовом окне, и 50 после рендера.

Попробуем разные возможные способы снятия фаски и закругления краёв для данной модели. Вот список всех приёмов в 3DStudio MAX, которыми мы воспользуемся :

  • 3DStudio MAX
    • Фаска в Edit Poly
    • Многократное создание фаски в Edit Poly
    • Создание фаски сегментами в Edit Poly
    • Meshsmooth с дополнительными замкнутыми контурами (Loops)
    • Meshsmooth с загибами/складками (Creasing)
    • Meshsmooth с методами Quad (четырёхугольника) и Classic (классическим)
    • Meshsmooth с EdgeChEx
    • Power Solids
    • Закруглённые углы (Round Corners) в mentalray

    3DStudio MAX

    Фаски в Edit Poly

    Для начала, используем встроенный в модификатор Edit Poly метод создания фаски (модификатор можно использовать и с Edit Mesh и с Editable Poly). Применяем к объекту модификатор Edit Poly, выделяем все твёрдые грани и нажимаем Chamfer.

    chamfered

    Polys (полигональная модель), 324 многоугольника в видовом окне и при рендере.

    Выглядит гораздо лучше, обратите внимание на появившиеся едва заметные блики на этих гранях, модель стала реалистичнее и визуально интересней. Единственный минус, количество многоугольников возросло с 50-ти до 324-ёх. Однако, так как созданная фаска является частью модификатора edit poly, его можно отключить в случае, когда объект будет находиться достаточно далеко от камеры, или включить расчёт изменений модификатора только при рендеринге, в результате чего окна просмотра не будут перегружены дополнительными многоугольниками. И если нужно будет изменить геометрию объекта до того, как был применён модификатор, можно отключить (или совсем удалить) его, чего нельзя получить если моделировать фаску на исходном объекте. На самом деле, это весьма знáчимая особенность стека модификаторов в max-е.

    Многократное создание фаски в Edit Poly.

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

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

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

    Срезанные грани (несколько раз), 932 многоугольника в видовом окне и при рендере.

    Создание фаски с помощью сегментов в Edit Poly

    Max 2008 дополнил модификатор edit poly новым параметром, воспроизводящим предыдущий метод (многократную фаску) полуавтоматически. Создавая фаску, просто установите значение «Segments» выше, чем 1.

    Полученный результат при близком рассмотрении:

    И рендер:

    Срезанные грани по сегментам, 562 многоугольника в видовом окне и при рендере.

    Здесь имеем те же преимущества и недостатки, что и при использовании метода многократного снятия фаски. Хотя, всё же есть несколько различий, например, данный способ : 1) легче создаётся, 2) уменьшает (и оптимизирует) количество получаемых многоугольников и 3) углы сглаживаются более продуманно, хотя треугольники всё же присутствуют, как можно заметить на предпоследней картинке.

    Meshsmooth с дополнительными замкнутыми контурами (Extra Loops)

    Двигаемся дальше и рассмотрим закруглённые грани (галтели). Предположим, мы будем рассматривать данный объект с достаточно близкого расстояния, сравнивая эффект закруглённых граней с эффектом фасок.
    Начнём с секций или сабдивов (subdiv=subdivision – подраздел(ение), секция). Получить сабдивы в 3ds max можно, используя модификатор meshsmooth (или turbosmooth, у которого меньше настроек, но который и памяти использует меньше). Вот пример :

    Meshsmooth, 708 многоугольников в видовом окне, 11328 многоугольников при рендере.

    Выглядит даже лучше, чем объект с фасками, однако, заметьте увеличившееся количество многоугольников в видовом окне, и значительно бóльшее их количество при финальном просчёте (рендеринге). Это обусловлено двумя причинами. Количество многоугольников в видовом окне выросло из-за того, что при использовании этого метода округления граней необходимо создание дополнительной геометрии вокруг граней. Без дополнительной геометрии, грани станут слишком сглаженными. Вот пример такой дополнительной геометрии, которую нужно добавлять. Как добавить дополнительные грани такого рода (к уже имеющейся геометрии), более подробно по этой ссылке на Sub-Division Primer.

    Хотя добавление дополнительных сечений заняло у меня больше времени (что означает больше времени на моделирование модели в целом), и в результате стало больше многоугольников, конечный объект выглядит лучше, чем объект с фасками. Другой недостаток в том, что в 3ds max, сабдивы рассчитываются отдельным шагом. Другие рендеринг-алгоритмы способны рассчитывать сабдивы во время рендера, и добавлять столько дополнительных многоугольников, сколько требуется для получения конечной поверхности. Так, если объект находится вдали от камеры, он сглаживается меньше, а большие плоские площади не сглаживаются так, как будут сглаживаться грани объектов. В max-е плоские поверхности, которые не нуждаются в сглаживании всё равно будут сглаживаться, вот почему (частично) количество многоугольников при рендере может быть достаточно большим.

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

    quadcorner

    Meshsmooth с загибом (Creasing)

    А как насчёт опции загиб/складка в Meshsmooth? В модификаторе Meshsmooth есть опция, называемая складка или загиб (у Turbosmooth-а такой опции нет, и для данного способа он не подойдёт). Вместо добавления дополнительной геометрии для сглаживания граней в сетке объекта, вы указываете насколько грань будет загнута, точнее натянута (с прилегающими к ней многоугольниками внутри модификатора meshsmooth), указывая значение для грани: 0 – без натяжения, 1 – величина полного натяжения, и промежуточные величины. Вот результат :

    crease

    Загиб (натяжение) граней в Meshsmooth, 50 многоугольников в видовом окне, 1600 при рендере.

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

    Meshsmooth-методы: четырёхугольника (Quad) и классический (Classic)

    В модификаторе Meshsmooth есть ещё пара методов сглаживания кроме NURMS-сглаживания. Попробуем классический (Classic), установим параметр Strength меньше 0,5, например 0,1. Этот метод сглаживания создаёт результат, похожий на создание фаски в ручную, с той лишь разницей, что с некоторыми гранями «происходит что-то странное», как на картинке ниже :

    classic

    Meshsmooth Classic, 50 многоугольников в видовом окне, 1596 при рендере.

    При использовании другого метода – Quad Output, применённого к модели с твёрдыми гранями, также получаем не те результаты, которые хотелось бы.

    quad

    Meshsmooth Quad Output, 50 многоугольников в видовом окне, 1600 при рендере.

    Meshsmooth с EdgeChEx

    Этот метод очень похож на метод Meshsmooth с использованием дополнительных замкнутых контуров, за исключением того, что мы используем плагин-модификатор EdgeChEx для создания дополнительных контуров, вместо создания их вручную. Плагин можно скачать здесь.
    Возьмём наш объект, применим модификатор (EdgeChEx), затем применим Meshsmooth. Возможно, нужно будет немного понастраивать параметры модификатора, и затем, может даже преобразовать объект в editable poly и подрегулировать полученные с помощью модификатора грани, но всё равно это на много быстрее, чем добавлять дополнительную геометрию вручную. Вот результат рендера :

    EdgeChEx

    Meshsmooth, 900 многоугольников в видовом окне, 14400 при рендере.

    Вот некоторые настройки плагина :

    edgplagui

    Power Solids

    Другой метод – это использовать PowerSolid. Плагин PowerSolids от npowersoftware это тип геометрии, которую можно обозначить как «что-то переходное между многоугольной сеткой (Polygon object) и сеткой NURBS».
    Как и в методе Meshsmooth с загибом (Creasing), создаётся поверхность, и для выделенных граней устанавливается величина их закругления. Для большей скорости, есть автоматическое закругление граней, в котором задаётся величина закругления для любого угла (не затрагивая граней, существующих на плоских поверхностях объекта). Взгляните на результат:

    powersolids

    PowerSolids, 1900 многоугольников при рендере.

    Выглядит превосходно и это при среднем количестве многоугольников. Кроме того, если объект становится меньше, powersolids автоматически уменьшит величину аппроксимации сетки объекта (tesselation). Единственным недостатком powersolids является то, что их нельзя деформировать, применяя к ним модификаторы подобные bend, twist или skin; сначала нужно преобразовать powersolids в полигональный объект, после чего, получим те же ограничения полигонального объекта .

    Закруглённые углы в mentalray

    В свойствах материала mentalray есть параметр (bump-карты), создающий иллюзию закруглённых углов (краёв). Назначим объекту материал Arch and Design, переходим в Special Effects и включаем свойство Round Corners. Вот его настройки:

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

    roundcorner

    Закруглённые углы в mentalray, 50 многоугольников в видовом окне и при рендере.

    Пара проблем лишь в том, что 1) рендер только через mentalray и 2) поскольку используется bump-карта, этот метод хорошо работает только на большом расстоянии, если приблизиться, иллюзия исчезает. Посмотрим на угол и грани объекта крупным планом :

    Ребра и группы сглаживания

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

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

    Итак, видимые ребра — это те, которые изображаются в составе сетки сплошными линиями, а невидимые — те, которые в нормальном режиме не видны, а в специальном режиме отображаются пунктиром.

    Понятие видимости ребер должно еще соотноситься с понятием их сглаживания при отображении сетки в виде сплошной поверхности или в тонированном виде. Сетчатая оболочка любого объекта (скажем, простой сферы) состоит из треугольных граней. Но мы видим на экране гладкую, а не ребристую поверхность сферы, так как при отображении тонированной сетчатой оболочки программа автоматически выполняет сглаживание ребер между гранями, принадлежащими к одной и той же группе сглаживания (smoothing group). В итоге далеко не все видимые ребра сетки оказываются видны в виде линий излома поверхности объекта. Например, у сферы все грани сетки принадлежат к одной группе сглаживания, а у цилиндра грани боковой поверхности принадлежат к одной группе сглаживания, а грани оснований — к другой. В связи с этим при визуализации цилиндра ребра между гранями боковой поверхности не видны, а между боковой поверхностью и основаниями — видны.

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

    Fore kc .ru
    Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий

    Жесткие грани объекта с модификатором CreaseSet. 3ds Max

    Для хорошего моделирования жестких поверхностей (hard surface) необходимо сочетать закругления и резкие переходы. Создание ребер жесткости с помощью Swift Loop не всегда может дать подходящий результат. Более того, новые ребра строятся там, где они не нужны. Поэтому для удобного управления жестким и не очень поверхностями есть модификатор CreaseSet.

    Сначала выберем модификатор через Modify – Modifier List – CreaseSet. Применять его лучшего всего в связке с модификаторами Turbosmooth или OpenSubdiv.

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

    Modify – Modifier List – CreaseSet

    1. Меню Selection

    Это меню очень похоже по функциям на одноименное меню в Edit Poly и Editable Poly.

    Sub-Object Level – позволяет выбрать точки (Vertex) и ребра (Edge) для придания им жесткости.

    Ignore Backfacing – не видит и не выделяет элементы на задней поверхности. Крайне рекомендую всегда нажимать эту галочку. Без нее выбирать элементы становится очень неудобно.

    Shrink и Grow – уменьшают и расширяют области выбранных объектов.

    Ring и Loop – выбирают новые ребра параллельно или последовательно уже выбранным.

    Select by Face Angle – выбирает ребра по углу между парами прилегающий ребер. Можно выбрать угол и его отклонение в обе стороны (режим +/-) или диапазон с минимальным и максимальным значением (режим A/B). Кнопка Select производит выделение подходящих по параметрам ребер.

    Меню Selection

    2. Меню Crease Set

    В этом меню формируются «сеты» и настраивается их жесткость. Как только элементы будут выбраны, нажмите кнопку Create Set. Она объединяет все выбранные ребра в набор и задает им общий параметр жесткости. Перед созданием можно ввести свое название в поле рядом с кнопкой, но не обязательно. Все наборы выделяются своим цветом, который можно выбрать из палитры. Для каждого набора отдельно настраивается жесткость. При этом наборы можно выбирать и редактировать совместно. Relative Adjust изменяет значение жесткости выбранных наборов. Кнопки All, None и Invert позволяют выбрать все наборы, снять выделение и инвертировать.

    Меню Crease Sets

    Кроме того, если нажать кнопку ПКМ на каком-либо наборе, откроется дополнительное меню взаимодействия.

    Select Elements in Set – выбирает ребра и точки, принадлежащие данному набору.

    Add Selection to Set – добавляет выделенные элементы к набору, если новые элементы одного типа с уже добавленными.

    Subtract Selection from Set – удаляет выбранные элементы из набора.

    Update Set from Selection – заменяет содержимое набора на элементы, которые выбраны в данный момент. Подходит только для выбора того же типа элементов, что и были в наборе.

    Set Information — показывает имя набора, тип и количество элементов.

    Rename – открывает окно для переименования набора.

    Delete – удаляет набор.

    Delete Selected Sets – удаляет все выделенные наборы.

    Delete Empty Sets – удаляет все наборы, в которых нет точек или ребер.

    Вызывается ПКМ

    3. Меню Option

    Это меню практически не имеет важных функций, но слегка упрощает работу.

    Open Crease Explorer – открывает диалоговое окно модификатора, в котором можно увидеть полную информацию по наборам и настроить их.

    Crease Set Display – подсвечивает ребра из наборов соответствующим цветом. Чем выше значение Crease, тем интенсивнее цвет.

    Select All Nodes – выбирает все объекты, скопированные типом Instance и имеющие на себе этот модификатор.

    Auto-Selected All Nodes – делает то же самое, что и предыдущая кнопка, только автоматически при выборе объекта. Однако, она не всегда работает корректно. Для автоматически выделения приходится наводить мышью на объект.

    Auto-Generate Crease set – генерирует наборы из элементов, которые уже имеют какое-то значение Crease. Оно может быть настроено с помощью одноименного модификатора, Edit Poly и Editable Poly.

    Tolerance — задает диапазон значений Crease элементов для объединения в наборы. Если разница между значениями Crease двух элементов больше Tolerance, они помещаются в разные наборы. Если меньше или равно, то в одном наборе.

    Keep Existing Sets – если функция включена, то при автоматической генерации элементы добавляются в уже существующие наборы. Происходит добавление так же при совпадении значения Tolerance.

    Меню Options

    Модификатор CreaseSet очень сильно расширяет возможности функции Crease. Пускай он не вводит каких-то принципиально новых функций, но настройка жесткости становится намного проще и быстрее. Все наборы удобно отображаются и не приходится вспоминать, какие ребра настраивались. Ну и, конечно, влияние модификатора на результат сглаживания можно увидеть на картинке.

    Возможности

    Освойте профессию визуализатора

    Научитесь создавать крутые рендеры, панорамы 360, виртуальные туры и анимационные ролики.

    Скругляем углы объектов в 3d max

    В природе не существует строго прямых углов. Это нужно помнить при моделировании, чтобы 3d модели получались красивыми и реалистичными. Поэтому важно научиться скруглять углы объектов. Рассмотрим 2 способа скругления углов: с помощью модификатора MeshSmooth и инструмента Chamfer (Фаска).

    Модификатор MeshSmooth

    Для примеры мы создали пару кубов, поделив их гранями.

    ugly01

    Во вкладке Modify в листе Модификаторов (Modifier List) находим MeshSmooth. Щелкаем и применяем к нашим объектам.

    ugly1

    Разбираемся в параметрах.

    • Iterations — число проводимых действий. Чем выше показатель повторений модификатора, тем плотнее сетка.
    • Smoothness задает гладкость. Лучше оставить это значение = 1. Это даст более точною сетку.

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

    ugly2

    ugly3

    Также остроту и форму углов можно подредактировать, работая с отдельными точками. Нажимаем на модификатор, выбираем Vertex. Меняем расстояние и положение ключевых точек так, как нам нужно.

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

    Создание фаски

    ugly5

    Конвертируем нашу модель в Editable Poly, вызвав панель ПКМ.

    Переходим во вкладку Modify. Выбираем грань, которую нужно скруглить. Чтобы сделать фаску, воспользуемся инструментом Chamfer.

    ugly6

    Нажимаем на квадратик возле кнопки Chamfer. Открывается панель параметров. Задаем нужные значения.

    Фаска готова. Нажимаем зеленую галочку, чтобы сохранить результат, или крестик, чтобы снять фаску.

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

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

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