Не работают группы сглаживания
Приветствую! Вопрос от новичка к специалистам.
На всякий случай продублирую свой вопрос в отдельную тему.
Столкнулся с производственной необходимостью сделать рендеры из 3д моделей, созданных в AutoCAD. Модели — это мебельные фасады. Выбор пал на 3ds MAX. Изучил основы, материалы, освещение, камеры, настройки Corona — всё что нужно для получения изображений. В процессе работы столкнулся с проблемой — радиусные элементы в модели при рендере получались гранёными. Настройки импорта сделаны правильные. Здесь посоветовали изучить группы сглаживания. Изучил, применил — проблема оказалась решена лишь отчасти. Возможно в описанной ниже ситуации нужно использовать другой инструмент.
Итак, имеем модель радиусного мебельного фасада с фрезеровкой:
Ткакя гранёность недопустима. Назначаем группы сглаживания на плоскую (нефрезерованную) часть рамки, филёнку и наиболее глубокую выборку во фрезеровке, т.е. — везде, где проходят не нужные грани. Результат получаем странный:
Во-первых, грани убрались только на рамке — во фрезеровке и на филёнке остались — это хорошо видно.
Во-вторых, материал стал отображаться очень странно — так не должно быть.
Прошу специалистов мне помочь! Возможно проблема как-то связана с тем, что те плоскости, которые должны быть гладкими в рендере, в Edit Poly отображаются как один полигон (скорее всего я неправильно изъясняюсь — в общем радиусная поверхность выделяется целой, никаких переходов образующих грани в модели нет)?
Источник
Не работают группы сглаживания
Solinvictus
У вас на скрине в диалоге импорта не стоят галочки Weld nearby vertices и Auto-smooth adjacent faces. Включите их для начала. Затем в объекте проверьте как выделяются части объекта используя субуровень Elements. Если выделяется только лишь одна грань в таком режиме, то все грани каждого фасада это отдельные элементы. Они всегда будут рендериться угловато (нужно свелдить вертексы). Если же выделяется весь фасад, то вертексы в порядке (спаяны) и проблема в группах сглаживания или в парах нормалей из каждого вертекса вместо одной. В этом случае должен помочь мой вариант унифицирования нормалей модификатором Edit Normals.
И где же тут норм?))
Хотя филёнка и рамка на глухом фасаде действительно как надо получились. Тот что справа — витрина и то что в центре — стекло. На нём кстати сглаживание нормально у меня работает — в отличии от всего остального.
И где же тут норм?))
Та везде, группы сглаживания-то робят ))
Я просто не правил модель, пишу же — просто импорт по дефолту и рендер )
Выберете Border в свитке подобъектов и нажмите ctrl+a если ни чего не выделиться то ОК, если есть то в тех местах точки не сварены
inetmarko
Спасибо за уточнения!
Капустка
xyla
Попробую и так, спасибо.
Итак, есть 4 понятных на моём уровне выхода из положения. Сейчас поэкспериментирую.
Solinvictus
В бамп засуньте RoundEdges, я так понимаю фрезеровки всё равно не в голом виде нужны, а под плёнкой\эмалью. А значит будет малый радиус(фаски). Если же нужно голую фрезу — просто уменьшить радиус.
Импортировал так — взял ваш dwg, в меню импорта в Максе — снял галку в максе Rescale и Maximum surfaces deviation for 3D solids — на минимум.
Конечно можно накидывать Smooth, но при сглаживании по углу(автосмуф) — он вам смажет не нужные участки, с RoundEdges такого не будет.
Evilis
Сброс и переназначение групп сглаживания ни к чему не привело.
inetmarko
Унифицирование нормалей помогло сгладить лицевые радиусные поверхности, но напрочь убила всю остальную геометрию объектов, превратив её в месиво(( С нормалями нужно в данном случае работать выборочно — вручную, а не через Ctrl+A. Но и это не избавляет от проблемы некорректного отображения материала.
Капустка
Проверил — всё соединено как надо.
МюФ
Использование RoundEdges к решению описанной проблемы не привело, но взял на вооружение этот инструмент, т.к. он повысил реалистичность рендера фрезеровки — теперь места стыка фрез отображаются близко к реальному их виду — слегка закруглёнными, т.к. фасады будут в эмали, вы верно заметили.
По итогу обсуждения в моей ситуации прав оказался Lekson
Необходимо было воспользоваться модификатором Turn to Poly, чтобы преобразовать объект в полигональный (Я до этого случая и не знал что может быть как-то иначе — и не случайно удивился что в Edit Poly радиусные поверхности, которые состоят явно не из одного полигона, при клике на них выделялись как одно целое). В модификаторе выполнить триангуляцию сетки, сделав размер полигонов минимальным + отметить верхнюю галочку о сохранении выпуклости полигонов. Затем накинуть Smooth. Вопреки опасениям МюФ, сработал он как надо, сгладив только то что было нужно — вручную группы назначать не пришлось.
А вот собственно и результат:
Друзья! Спасибо огромное всем кто участвовал в обсуждении, всем кто давал советы. Надеюсь, этот опыт пригодится не только мне. Проблема решена, но если у кого есть ещё мысли по ней — делитесь).
Источник
Группы сглаживания
Моделер в 3D Studio MAX, особенно занимающийся низко-полигональным моделированием, должен чётко представлять себе, что такое группы сглаживания (Smoothing Groups). Понимание и использование групп сглаживания — есть большой шаг новичка моделера к профессионалу.
Группы сглаживания — это свойство, которое имеет каждый треугольник (face) любой полигональной модели в 3D Studio MAX. Знакомство с группами сглаживания лучше всего провести на примере Editable Mesh.
Создайте любой примитив, например, Box, и преобразуйте его в Editable Mesh. В закладке Modify выберите любой подобъект поверхности (Face, Polygon или Element), например, Face. При этом в свиток добавится дополнительная панель свойств поверхности (Surface Properties). Здесь нас интересует раздел, называющийся Smoothing Groups. Этот раздел как раз и работает с группами сглаживания.
С помощью кнопок с числами от 1 до 32 мы можем строить различные комбинации группы сглаживания для выделенных треугольников редактируемой полигональной модели.
Выделяя различные треугольники на сторонах Box’а, можно заметить, что каждая сторона имеет свою группу сглаживания. Кнопки на панели, соответствующие битам группы сглаживания, находятся в нажатом состоянии.
Почему именно из 32-х значений строятся группы сглаживания в 3D Studio MAX?
Ответ прост. Для хранения информации об одном совпадении группы сглаживания достаточно одного бита. Для комбинации таких совпадений используется одно 32-х битовое число (DWORD). Кнопка на панели, например, с номером 18 отвечает за 18-й бит этого числа. Больше никаких ритуальных соображений по этому поводу не существует.
Отсюда можно заметить, что сами числа на кнопках ничего конкретного для моделера не символизируют, используются они только для ориентира.
В чём же смысл групп сглаживания?
Рассмотрим изображение трёх сфер. Эти сферы различаются только группами сглаживания для своих треугольников, всё остальное, например, материал и количество полигонов, у них одинаковое. Как же можно достичь такого эффекта?
Рассмотрим два треугольника, не лежащих в одной плоскости, то есть нормали у этих треугольников не совпадают. Но во время просчёта нам часто необходимо, чтобы не было видно чёткой границы между этими двумя треугольниками. То есть во время закрашивания, произошло сглаживание. Так вот, это сглаживание происходит между треугольниками с общими вершинами, у которых хотя бы один бит в группах сглаживания совпадает.
Посмотрим ещё раз на рисунок с тремя сферами. Первая сфера здесь во всех полигонах имеет одинаковую группу сглаживания с выделенным общим (любым) битом, у второй — все полигоны имеют пустую группу сглаживания, то есть не выделен ни один бит, у третьей — треугольники в каждом слое имеют свою уникальную группу сглаживания, не совпадающую ни в одном бите с группами сглаживания в треугольниках соседних слоёв.
Иногда для моделера возникает задача, как бы сделать видимое разделение между частями полигональной модели на их стыке, то есть по рёбрам. Модель на рисунке является одной цельной замкнутой полигональной моделью. Все видимые разделения на подобъекты сделаны за счёт геометрии и групп сглаживания.
Работа с группами сглаживания.
С кнопками с числами в разделе Smoothing Groups немного разобрались. Можно добавить только, что если вы выделяете несколько полигонов, у одних из которых проставлены биты в группах, а у других соответствующие биты не проставлены, то кнопки с этими битами будут пустыми, без чисел.
Кнопка Select By SG позволяет выделять все треугольники, с указанными битами групп сглаживания.
Кнопка Clear All выключает все биты групп сглаживания для выделенных треугольников.
Кнопка Auto Smooth работает с выставляемым числом, находящимся справа от кнопки. Это число показывает отклонение нормалей треугольников в градусах. При нажатии на эту кнопку все выделенные треугольники, у которых отклонение нормалей меньше указанного числа, станут «сглаженными», за счёт выставления соответствующих групп сглаживания.
Где ещё встречаются группы сглаживания.
Модификатор Edit Mesh. Аналогично EditableMesh.
Модификатор MeshSmooth. В свитке Parameters есть раздел Surface Parameters.
Если выделить только Smooth Result, что происходит по умолчанию, то полученный объект полностью будет сглажен по группам сглаживания. Убрав этот флаг, мы можем оставить информацию о группах сглаживания с предыдущих уровней модификаторов, что скажется так же на гладкой закраске модели. Так же можно разделить сглаживание, выставив Smoothing Group, что повлияет на форму результирующей модели, при нескольких итерациях деления сглаживаемой модели.
Работает для выделенных треугольников с предыдущих уровней модификаторов. То есть эти треугольники могут быть выделены, например, в модификаторе Edit Mesh или модификатором Mesh Select. Что делает этот модификатор, можно понять по аналогии с EditableMesh.
Что можно добавить для разработчиков игр.
Достичь аналогичного эффекта сглаживания можно другим способом, когда все треугольники имеют одинаковую группу сглаживания. Видимость границ достигается путём дублирования точек. То есть два соседних треугольника не имеют общих точек, просто соответствующие точки имеют одинаковые координаты. Кстати, именно такие дублированные точки должны попадать в игровой движок, различаясь только своими нормалями. Но поскольку моделеру неудобно самому разделять эти точки, этим должна заниматься программа экспорта из 3D Studio MAX, пользуясь данными из групп сглаживания.
Напоследок, всем желаю успешного низко-полигонального моделирования!
Источник
Группы сглаживания
Моделер в 3D Studio MAX, особенно занимающийся низко-полигональным моделированием, должен чётко представлять себе, что такое группы сглаживания (Smoothing Groups). Понимание и использование групп сглаживания — есть большой шаг новичка моделера к профессионалу.
Группы сглаживания — это свойство, которое имеет каждый треугольник (face) любой полигональной модели в 3D Studio MAX. Знакомство с группами сглаживания лучше всего провести на примере Editable Mesh.
Создайте любой примитив, например, Box, и преобразуйте его в Editable Mesh. В закладке Modify выберите любой подобъект поверхности (Face, Polygon или Element), например, Face. При этом в свиток добавится дополнительная панель свойств поверхности (Surface Properties). Здесь нас интересует раздел, называющийся Smoothing Groups. Этот раздел как раз и работает с группами сглаживания.
С помощью кнопок с числами от 1 до 32 мы можем строить различные комбинации группы сглаживания для выделенных треугольников редактируемой полигональной модели.
Выделяя различные треугольники на сторонах Box’а, можно заметить, что каждая сторона имеет свою группу сглаживания. Кнопки на панели, соответствующие битам группы сглаживания, находятся в нажатом состоянии.
Почему именно из 32-х значений строятся группы сглаживания в 3D Studio MAX?
Ответ прост. Для хранения информации об одном совпадении группы сглаживания достаточно одного бита. Для комбинации таких совпадений используется одно 32-х битовое число (DWORD). Кнопка на панели, например, с номером 18 отвечает за 18-й бит этого числа. Больше никаких ритуальных соображений по этому поводу не существует.
Отсюда можно заметить, что сами числа на кнопках ничего конкретного для моделера не символизируют, используются они только для ориентира.
В чём же смысл групп сглаживания?
Рассмотрим изображение трёх сфер. Эти сферы различаются только группами сглаживания для своих треугольников, всё остальное, например, материал и количество полигонов, у них одинаковое. Как же можно достичь такого эффекта?
Рассмотрим два треугольника, не лежащих в одной плоскости, то есть нормали у этих треугольников не совпадают. Но во время просчёта нам часто необходимо, чтобы не было видно чёткой границы между этими двумя треугольниками. То есть во время закрашивания, произошло сглаживание. Так вот, это сглаживание происходит между треугольниками с общими вершинами, у которых хотя бы один бит в группах сглаживания совпадает.
Посмотрим ещё раз на рисунок с тремя сферами. Первая сфера здесь во всех полигонах имеет одинаковую группу сглаживания с выделенным общим (любым) битом, у второй — все полигоны имеют пустую группу сглаживания, то есть не выделен ни один бит, у третьей — треугольники в каждом слое имеют свою уникальную группу сглаживания, не совпадающую ни в одном бите с группами сглаживания в треугольниках соседних слоёв.
Иногда для моделера возникает задача, как бы сделать видимое разделение между частями полигональной модели на их стыке, то есть по рёбрам. Модель на рисунке является одной цельной замкнутой полигональной моделью. Все видимые разделения на подобъекты сделаны за счёт геометрии и групп сглаживания.
Работа с группами сглаживания.
С кнопками с числами в разделе Smoothing Groups немного разобрались. Можно добавить только, что если вы выделяете несколько полигонов, у одних из которых проставлены биты в группах, а у других соответствующие биты не проставлены, то кнопки с этими битами будут пустыми, без чисел.
Кнопка Select By SG позволяет выделять все треугольники, с указанными битами групп сглаживания.
Кнопка Clear All выключает все биты групп сглаживания для выделенных треугольников.
Кнопка Auto Smooth работает с выставляемым числом, находящимся справа от кнопки. Это число показывает отклонение нормалей треугольников в градусах. При нажатии на эту кнопку все выделенные треугольники, у которых отклонение нормалей меньше указанного числа, станут «сглаженными», за счёт выставления соответствующих групп сглаживания.
Где ещё встречаются группы сглаживания.
Модификатор Edit Mesh. Аналогично EditableMesh.
Модификатор MeshSmooth. В свитке Parameters есть раздел Surface Parameters.
Если выделить только Smooth Result, что происходит по умолчанию, то полученный объект полностью будет сглажен по группам сглаживания. Убрав этот флаг, мы можем оставить информацию о группах сглаживания с предыдущих уровней модификаторов, что скажется так же на гладкой закраске модели. Так же можно разделить сглаживание, выставив Smoothing Group, что повлияет на форму результирующей модели, при нескольких итерациях деления сглаживаемой модели.
Работает для выделенных треугольников с предыдущих уровней модификаторов. То есть эти треугольники могут быть выделены, например, в модификаторе Edit Mesh или модификатором Mesh Select. Что делает этот модификатор, можно понять по аналогии с EditableMesh.
Что можно добавить для разработчиков игр.
Достичь аналогичного эффекта сглаживания можно другим способом, когда все треугольники имеют одинаковую группу сглаживания. Видимость границ достигается путём дублирования точек. То есть два соседних треугольника не имеют общих точек, просто соответствующие точки имеют одинаковые координаты. Кстати, именно такие дублированные точки должны попадать в игровой движок, различаясь только своими нормалями. Но поскольку моделеру неудобно самому разделять эти точки, этим должна заниматься программа экспорта из 3D Studio MAX, пользуясь данными из групп сглаживания.
Напоследок, всем желаю успешного низко-полигонального моделирования!
Источник