В статье покажем, как работать с представлениями материалов в Ревите. Представление — это отображение материала на реалистичном визуальном стиле, а также на рендерах из модели. Штриховки отображаются в остальных визуальных стилях, с которыми мы работаем большую часть времени. Посмотрим, как сделать так, чтобы отображение на реалистичном и остальных визуальных стилях было похожим.
В блоге уже есть статья про работу с материалами: как их создавать, задавать штриховки и представления. Если не работали ранее с материалами, то прочитайте сперва ту статью, возможно, её хватит для ваших задач. Здесь же поговорим про более сложные настройки представлений.
Авторы материала
Информацией поделился Иван Воинский — руководитель технического отдела BIMLIB. Оформил и написал статью Вадим Муратов.
Имя материала и представления
При создании материала стоит предусматривать уникальное имя материала. Если у материалов будут одинаковые имена, то при загрузке семейства в проект Ревит «подтянет» существующий в проекте материал, а не тот, что вы загружаете вместе с семейством. В итоге семейство может неправильно окраситься.
Поэтому лучше давать имена, которые не будут дублироваться, а также пользоваться библиотекой материалов: назначать одинаковой по цвету и представлению геометрии одинаковые материалы. О создании своей библиотеки материалов читайте в первой статье о материалах.
Также стоит помнить, что представление обладает своим собственным именем, его тоже нужно делать уникальным. Обычно даю представлению то же имя, что и материалу.
С 2023 версии Ревита появились специальные команды для копирования материалов. Раньше был только один пункт, просто «Копировать», теперь же пункты разделили на две отдельные команды: «Копировать материал с компонентами» и «Копировать с использованием общих компонентов».
В первом случае материал копируется и представление дублируется, то есть создаётся отдельное представление. В этом случае Ревит копирует представление и дописывает к его имени (1).
Во втором случае копируется материал с тем же представлением. В результате получаем новый материал, но представление у него то же самое. В этом случае рядом с именем представления появляется ладошка с номером. Нумерация идёт с нуля, поэтому число 1 означает, что в проекте есть 2 материала с одинаковым представлением. Если скопировать ещё раз, то будет число 2 и так далее.
Подобное копирование может пригодится, если на реалистичном вам нужно одинаковое отображение материалов, а на тонированном — разное.
Общий вывод отсюда такой же, как с именами материалов: следите за этим внимательно, чтобы не испортить отображения материалов при правках. При втором способе копирования после правок представления оно поменяется у всех зависимых материалов.
Далее посмотрим на настройку материалов. Наша цель — сделать штриховку для тонированного режима и режима скрытых линий, а потом настроить представление так, чтобы они были похожи.
Проблема штриховок и представлений
Вся кутерьма связана с тем, что штриховки не отображаются на реалистичном виде. В инженерных семействах штриховки можно и нужно использовать для имитации сеток, решёток и подобных паттернов. Например, это могут быть решётки внутрипольных конвекторов, сетки на кассетных блоках кондиционеров, ламели вентиляционных решёток, рёбра на статоре двигателя у насоса.
То есть мы используем штриховки, чтобы существенно упростить геометрию семейства: вместо массива реальной геометрии применяем имитацию в виде штриховки. Это целесообразно, так как на обычных масштабах вроде 1:50 и 1:100 эти мелкие детали просто не будет видно, они сольются в черное пятно. Но при этом на узлах в более мелком масштабе этой имитации будет достаточно, чтобы дать визуальное понимание об изделии. Массивы же сильно утяжеляют семейства.
Но штриховки не отображаются на реалистичном режиме. В этом случае мы теряем визуальный эффект, что неприятно. Однако можно настроить представление так, чтобы и на нём было имитация штриховки.
Настройка представления
Создам материал с именем «Решетка наружного блока_20х50». Настрою моделирующую штриховку с размером сетки 20х50 мм. Моделирующие штриховки не будут меняться на виде при изменении масштаба. При этом у них есть неприятное ограничение, минимальный шаг для неё — 13 мм. Часто шаг ламелей решёток бывает меньше, поэтому тут только смириться, всё же это только имитация.
Вот подобную штриховку нам нужно воспроизвести в представлении материала. Первым делом перехожу на вкладку «Представление» и меняю имя представления на такое же, как у материала. В итоге создаётся новое представление с уникальным именем.
В настройке представления можно использовать текстуры на основе пользовательских картинок. Например, можно загрузить фото настоящей сетки. Однако это не лучший вариант, так как Ревит не будет внедрять эти картинки в материалы и проект, а значит велика вероятность потерять картинку при передаче модели и при экспорте её в другие программы, например в Нэвисворкс. Нэвисворкс тоже не внедряет текстуры, с ними тоже могут быть проблемы.
Оптимально пользоваться библиотекой того, что мы получаем при установке Ревита или других продуктов Автодеска. Посмотрим по разделам на вкладке «Представление». Первый раздел — «Типовые».
В типовых настройках можно задать вид текстуры. По умолчанию тут изображение, но сама картинка не выбрана. Если нажать на кнопочку справа и нажать по «Изображение», то откроется библиотека текстур Ревита. Отсюда картинки брать можно.
Если не открывается папка с картинками, то есть такой лайфхак. Можно выбрать из библиотеки «Материалы AEC» любой материал с текстурой, например какое-нибудь дерево. Добавить его в проект, перейти на вкладку «Представление» и там нажать на имя картинки под изображением. Откроется папка с текстурами.
Путь к папке с материалами такой:
C:\Program Files\Common Files\Autodesk Shared\Materials\Textures\3\Mats\
Но нам нужно воссоздать нашу штриховку. Для этого лучше пользоваться другим видом текстуры — Мозаика. Нажму на стрелочку вниз и выбираю её. Откроется окно редактора текстур, где нужно настроить нашу текстуру. Для простой сетки нам тут достаточно выбрать тип образца — «Штабельная кладка». Дальше нужно выбрать количество «плиток», размер образца и представления для самой плитки и цементного раствора — швов. В нашем случае плитка будет как бы пропусками между проволокой сетки.
По сути в нашем случае сетку будут создавать швы. Саму плитку можно сделать белой, швы чёрными, вот и получится сетка. Размер сетки в примере — 20х50. Поэтому удобно выбрать такой размер образца, чтобы сетка кратно в него уложилась. Например, если берём размер образца 100х100, то плиток в ряд будет 2, а по вертикали — 5.
Подобрать размер сетки можете любой комбинацией — через подгон размера образца, или через подгон количества плиток, или комбинацией обоих способов, как это сделал я.
Текстура должна повторяться по всей поверхности геометрии, поэтому в разделе «Повтор» оставляем мозаику по горизонтали и вертикали.
Далее в разделах «Представление плитки» и «Представление цементного раствора» настраиваем цвет плитки и сетки. Плитку делаю белой, но можно выбрать любой цвет, например тот же цвет, что у корпуса изделия, чтобы создать имитацию прозрачности. Отдельного настройки для прозрачности тут нет. Швы делаю черными и настраиваю её толщину через параметр «Ширина зазора». Ставлю по единичке. Если будет слишком толстой, всегда можно поменять.
Готово. Чтобы поменять вариант предпросмотра текстуры на геометрии можете в представлении материала поменять сцену. Я поставлю кубик. Под сценой есть линия разделения, её можно перемещать. При этом текстура на сцене будет обновляться. Это помогает в случаях, когда поправили представление, а на сцене изменения не отобразились. Обновление решает эту проблему. Также сцена будет отображаться на превью материала в диспетчере материалов.
Теперь осталось назначить материал на геометрию.
Назначение материала на геометрию
В редакторе семейства у нас есть три варианта:
- Наложение прямо на геометрию,
- Назначение через параметр,
- Использование краски.
В первом случае мы никак не параметризируем материал на геометрии, и материал покрывает все грани геометрии. Для примера таким способом наложу геометрию на корпус наружного блока. В принципе, это нормальный подход, если вы не планируете менять материал у геометрии. Для этого выделяем геометрию и нажимаем по многоточию в параметре «Материал». Откроется диспетчер материалов, выберу материал для корпуса, геометрия окрашивается. На скриншоте тонированный режим.
При назначении через параметр мы создаём параметр с типом данных «Материал», записываем в него материал и назначаем материал не прямо на геометрию, а связываем материал геометрии с параметром. В итоге при изменении значения в параметре будет меняться и материал. Поменяю материал корпуса с прямого назначения на параметр. Для этого выделю геометрию и свяжу параметр материала с параметром семейства. Для этого нажимаю на маленькую кнопку назначения параметра.
Работа с краской
Краска — это специальный инструмент, с помощью которого мы можем назначать материал на определённую грань геометрии, а не на всё тело. В нашем примере с решёткой наружного блока краска мне нужна только на переднюю грань геометрии. Если назначу материал через параметр или напрямую, то окрасятся все поверхности, мне такое не нужно.
Чтобы нанести краску, мы должны заранее создать материал, а затем выбрать команду «Краска». Она находится на вкладке «Изменить», панель «Геометрия». Там два варианта команды: сама краска и её удаление. Нажимаем по «Краска», появится окошко для выбора материала. Здесь можно выбрать либо непосредственно материал, либо параметр с материалом.
Если выбрать просто материал, то это аналог прямого назначения материала на геометрию. Он не будет меняться, можно будет только изменить с помощью нанесения новой краски. Если же выбрать не материал, а параметр с материалом, то мы назначим на грань параметр, при изменении в нём материала будет меняться и материал краски на геометрии. У параметров с материалом всегда в конце суффикс «(param)».
Выберу просто материал для решётки и нанесу на переднюю грань. Получаю на тонированном и реалистичном режимах вот такую картину:
В тонированном решётка серая, потому что в настройках графики материала назначил такой цвет материала, он сероватый, RGB 201/201/201.
На реалистичном получаем практически такую же решётку по внешнему виду, только с белым фоном. Если поменять в графике цвет на белый, то сходство будет практически полным.
Есть ещё один интересный инструмент — Разделение грани. Он находится прямо над кнопкой краски. С его помощью можно выбрать грань и поделить её на части. А потом каждую покрасить, как хочется. То есть не создавать разные геометрии для назначения материала, а на одном геометрическом примитиве поделить грани на части.
Вызову команду и выберу боковую стенку наружного блока. И нарисую вертикальное разделение грани по середине.
Теперь краской назначу материалы: на левую сторону материал решётки, на правую — параметр с материалом корпуса. Теперь при изменении материала в параметре у меня будет меняться окрашивание геометрии.
Чтобы удалить это разделение грани, нужно навести мышку на границу, выделить и нажать Del. Граница будет подсвечиваться чуть рядом с телом геометрии.
После добавления этой линии в проекте у семейства может появиться ручка для управления положением. Имейте это в виду, не трогайте её.
Настройка прозрачности
Если за нашей геометрией есть ещё какие-то элементы, которые нужно показать, придётся добавить ей прозрачности. В настройках представления есть для этого параметр «Выведение изображения», но с ним результат будет не очень симпатичным: упадёт контрастность и резкость. Поэтому лучше пользоваться другой настройкой представления — «Вырезаемые участки».
Здесь мы можем задать изображение или другую текстуру, в итоге получаем алгоритм, в котором все черные участки будут вырезаться, а белые — оставаться. То есть это получается такая карта из двух цветов, где черный — места для выреза, белый — то, что останется.
Таким образом нам нужна мозаика, в котором плитка будет чёрной, а швы — белыми. То есть делаем такую же мозаику, но по цвету наоборот, и получим вырезание.
Вместо мозаики также можно выбрать готовые текстуры из библиотеки, которая идёт с Ревитом. Например, там есть картинка с черными кругами или скруглёнными прямоугольниками, с их помощью можно делать перфорацию.
У изображения нельзя выбрать количество точек или прямоугольников, поэтому подгоняем до нужного размера через редактирование размера образца. Я поставил размер 20 мм, цвет самого материала в представлении выбрал чёрным. Поделил переднюю грань, чтобы появилась полоса, ей назначил краской другой материал, чтобы было явно видно, что грань прозрачная.
Сделать такую штриховку будет уже сложнее, так как у штриховок нет заливок, только линии. Можно сделать повтор окружностей, чтобы имитировать перфорацию.
Рельеф на поверхности геометрии
Также с помощью настроек представления можно сымитировать неровности на грани геометрии. В этом нам поможет другой раздел — «Выдавливание». Работает он по тому же принципу, что и вырезание, но в данном случае области чёрного цвета будут выемками, а белого — выступами.
В ползунке «Количество» можно управлять «неровностью» текстуры. Здесь 0 будет вообще убирать рельеф, отрицательные значения будут добавлять выступ для «белых» зон, а положительные наоборот, будут углублять их в геометрию. По сути это просто игра теней, подвигайте ползунок и посмотрите сами, что получается.
Этих настроек вполне достаточно, чтобы настроить визуальную составляющую семейства.