Ссылка на предыдущую статью: https://3ddd.ru/blog/post/arkhviz_iznutri_chast_vtoraia_podgotovka_chertezhei_dlia_raboty
Если вы внимательно изучили статью про подготовку чертежей, значит пора переходить к моделированию.
Но перед началом работы со сценой необходимо проверить системные единицы и масштаб объектов. Не все работающие в 3dsmax понимают разницу между System Units и Display Units. Системные единицы – это основной параметр, от него зависит масштаб вашей сцены, правильность размеров при импорте чертежей. Отображаемые единицы – это те, которые вы будете видеть в интерфейсе. В спиннерах, в модификаторах, в координатах и т.д. Они могут быть любыми и никак не связанными с системными единицами. К примеру, я всегда делаю сцены в метрических единицах, чаще всего в миллиметрах, но при этом, если в чертеже все размеры проставлены в дюймах, то в качестве отображаемых единиц я выставляю дюймы для удобства работы.
В целом, моделирование архитектуры и построение сцены для архитектурной визуализации в корне отличается от высокополигонального моделирования мебели или персонажей. В архвизе важнейшим фактором, влияющим на скорость и качество работы, является максимальная редактируемость 3D-модели. Очень часто, особенно если вы работаете в архитектурном бюро, приходится корректировать модели, т.к. меняются архитектурные элементы, профили, меняется высота зданий, размер дома в плане, появляются новые варианты, изменяются материалы и т.д. И вы должны моделировать так, чтобы с наименьшими усилиями править вашу модель в соответствии с новым заданием. Плюс чтобы кто-то другой мог взять вашу модель и точно также легко откорректировать.
Далее попробую вкратце выделить основные критерии и особенности хорошей 3D-модели архитектуры.
Я очень удивился тому, что многие моделлеры не используют привязки. Это же главнейшее требование к качественной модели! Да и самому ведь гораздо приятнее работать, когда модель при приближении выглядит как на левой картинке ниже, а не как на правой:
На первый взгляд кажется, что издалека этих неточностей не видно, но потом это приводит к ошибкам в просчёте GI, неожиданным просветам и т.д., да и просто усложняет работу.
При моделировании нельзя оставлять в стеке более одного модификатора Edit Poly, Edit Spline и т.д. Нельзя оставлять модификатор Edit Poly поверх объекта Editable Poly, т.к. 3dsmax очень нестабильно работает с такой конструкцией и при следующем открытии файла может порвать всю модель. То же самое с Edit Spline над Editable Spline.
Но все параметрические модификаторы, вроде Shell, Sweep, Bevel и прочие, надо стараться оставлять для упрощения дальнейшей корректировки модели.
Стек модификаторов на объектах ни в коем случае не должен быть сильно раздут. Не должно быть такого жуткого стека, как в картинке ниже. Все лишние уровни модификаторов надо коллапсить в Editable Poly с помощью Collapse To.
Использование Collapse To, в отличие от Convert to Poly, позволяет сохранить объекты инстансными.
Вообще, все одинаковые объекты всегда нужно копировать только как instance. Тоже вроде очевидное правило, но, к сожалению, очень многие его не соблюдают.
Огромный вклад в скорость работы и редактирования модели вносит использование инстансных модификаторов. Очень малый процент моделлеров использует их в работе. А ведь это сильнейший инструмент, с помощью которого одним движением можно поменять, к примеру, толщину рам сразу на всех окнах, даже разных по конфигурации, или профиль наличника у дверей разного размера.
Вообще, в работе я стараюсь максимально использовать сплайны. Они в разы проще полиобъектов в плане редактируемости. Два самых используемых мной модификатора – это Shell и Sweep. Раньше ещё постоянно использовал Extrude, но в последнее время отказался от него в пользу Shell, т.к. он по сути делает то же самое, но имеет гораздо больше возможностей настройки. Extrude остался только для незамкнутых контуров.
Интерполяция на сплайнах и в модификаторах не должна быть излишней. К примеру, если рамы делаются с помощью Sweep с фаской, то значение интерполяции в модификаторе нужно ставить не более 0-1. Большее значение нужно только для очень близких ракурсов, в остальных случаях оно не даст никакого результата, кроме утяжеления общей сетки.
Нежелательно использование функции Renderable у сплайнов. Лучше пользоваться модификатором Sweep, он гораздо удобнее и гибче в плане настроек и привязок. К тому же, большое количество Renderable сплайнов в сцене по какой-то причине сильно усложняет вращение вьюпорта.
Многие при моделировании комплексов любят взять длинный фасад, состоящий из сотен объектов, и просто обрезать его с помощью Slice, чтобы сделать короткий фасад. Так делать нельзя, т.к. всё равно вся обрезанная геометрия остаётся в сцене, увеличивая размер файла и пожирая память.
Модификаторы Slice и FFD на большом количестве объектов надо стараться использовать только при крайней необходимости. Если надо изменить размер группы каких-то элементов (например, надо чуть короче сделать сгруппированный фасад), то вместо добавления лишних модификаторов лучше пользоваться обычным масштабированием (скейлом).
Вообще, модификатор FFD при моделировании лучше использовать на уровне подобъекта и затем коллапсить его. Это позволяет не раздувать стек модификаторов и не деформировать объект при применении других модификаторов. Разница показана на картинке ниже, где прямоугольник размером 2х1 с наложенным Sweep сжат до квадрата с помощью FFD 2x2x2 двумя способами. При этом в правом варианте можно командой Collapse To сколлапсить лишний модификатор FFD 2x2x2, оставив простой сплайн со Sweep.
Если какой-то объект или группа объектов повторяется регулярно, например, окна на разных этажах, то вместо копирования объектов удобно использовать плагин Clone . Таким образом не плодятся лишние объекты, и при этом легко менять этажность здания, просто поменяв параметры модификатора. Только учтите, что этот плагин используют не все, поэтому, если будете передавать кому-то модель для дальнейшей работы, не забудьте передать и ссылку на его скачивание.
При моделировании необходимо следить за тем, чтобы Pivot находился в пределах объекта.
Когда вы моделируете здание, то обязательно надо делать внутренние перекрытия и стены, чтобы на рендерах здание не просвечивало насквозь.
Центр сцены всегда надо стараться держать в нулевых координатах.
Если вы делаете плоский ландшафт, то уровень земли должен быть на нуле. Если ландшафт с рельефом, то желательно при моделировании сразу использовать отметки рельефа в соответствии с чертежом. Т.е., к примеру, если у вас здание сидит на рельефе на высоте 5200 мм, то значит надо его сразу моделировать с уровнем первого этажа на 5200. Можно пропорционально сокращать слишком большие высоты по всей сцене. Т.е. если по чертежам объекты вашей сцены расположены на отметках с 33 метров до 38 метров, то можно для удобства опустить всё на какое-то круглое значение, например, на 30 метров, построив сцену на отметках 3 – 8 м.
Далее что касается организации сцены в целом.
Сцена не должна содержать недопустимых типов материалов. Все стандартные материалы, Autodesk Generic, Raytrace и прочие должны быть сконвертированы в материалы VRay или Corona. В сцене не должно быть ненужных Helper’ов, пустых объектов и прочего мусора. Не должно быть пустых, безымянных, лишних слоёв.
Файл должен содержать понятную структуру слоёв. Все группы объектов – деревья, машины, люди, окружающая застройка и т.д.,– должны лежать в отдельных слоях. Если используется XRef, объекты подгружаемой сцены должны находиться в отдельных слоях.
По окончании моделирования желательно проверить геометрию на наличие двойных или инвертированных полигонов, отрендерив Ambient Occlusion (канал VRayExtraTex с картой VRayDirt или канал CoronaAO). Все ошибочные места будут либо чёрными, либо с неправильным построением Occlusion.
Если вы используете более 3-5 копий какого-либо высокополигонального объекта, то он должен быть переведён в VRayProxy/CoronaProxy.
Вот некоторые простые правила, которые необходимо учитывать при моделировании.
Далее пара слов о скорости.
Те, кто видел процесс моей работы, подтвердят, что я моделирую примерно в два раза быстрее среднего. В этом нет ничего сверъестественного, на скорость работы влияют в основном только два главных фактора.
Первое – хоткеи. Это важнейшее умение, влияющее на скорость работы. Я уже упоминал об этом в прошлых частях, но не будет лишним повторить ещё раз. Подробно по этой теме писать особо нечего, просто знайте, что левая рука должна работать на клавиатуре не менее эффективно, чем правая на мышке. Не бойтесь настраивать интерфейс и переназначать клавиши на те действия, которые вы выполняете регулярно, изменять квад-меню в максе, добавив туда то, что нужно, и убрав ненужное.
К примеру, у меня в интерфейсе командная панель почти всегда отключена, что освобождает дополнительное место на экране для работы со сценой, а большая часть действий делается с клавиатуры либо из квад-меню. Если же мне надо поменять какой-то параметр модификатора, то я клавишей включаю командную панель, сразу развёрнутую, чтобы не копаться в свитках, меняю, что мне нужно, и снова отключаю. Выглядит это как-то так:
Это нереально увеличивает скорость работы и уменьшает лишние движения мыши.
Наряду с хоткеями не бойтесь использовать скрипты для ускорения и автоматизации каких-то постоянно выполняемых действий. Как можно заметить на скринах выше, у меня выделена отдельная строка-панель для часто используемых скриптов. Ещё многие другие регулярные действия у меня заскриптованы и назначены на клавиши клавиатуры. Не нужно копаться в панели, чтобы центрировать Pivot, не нужно целиться в меню вьюпорта, чтобы выделить камеру или таргет, можно выделять объекты по различным параметрам и т.д.
Каждый такой скрипт уменьшает количество необходимых движений и кликов мышью, что суммарно тоже даёт огромный прирост к скорости работы. Даже если сами не умеете писать скрипты, обязательно поизучайте темы про скрипты на форумах и периодически мониторьте http://www.scriptspot.com/ . Наверняка, большая часть того, что вам нужно, уже кем-то написана.
Ещё в 3dsmax есть такая полезная штука, как встроенный калькулятор, о котором мало кто знает. Чтобы прибавить к значению в спиннере какое-то число, достаточно ввести в спиннер это число с буквой r перед ним.
К примеру, у вас есть в спиннере значение 2380 мм. И вам надо к нему прибавить ещё 345 мм. Так вот не надо лезть в калькулятор или забивать голову подсчётом в уме, достаточно просто ввести в спиннер r345, и эти 345 прибавятся к текущему значению. То же самое работает и с отрицательными значениями, r-345 вычтет 345 из текущего значения.
Также в процессе ввода значения в спиннер славишами Ctrl+N можно вызывать отдельное окошко с калькулятором для подсчёта более сложных выражений.
Вот, пожалуй, и всё по моделированию. Наверняка в дальнейшем буду что-то дописывать в статью, так что проглядывайте периодически. Да и просто лишний раз освежить в памяти всё описанное выше полезно.
Ниже выкладываю ссылки на пару моделей, сделанных по всем правилам. Обратите внимание на инстансы и инстансные модификаторы, на точное совпадение всех линий с чертежами, на организацию сцены и т.д.
https://www.dropbox.com/s/4okvik7d472gb41/Example_01.zip
https://www.dropbox.com/s/q54whb3se15ton7/Example_02.zip
И в качестве бонуса для тех, кто дочитал до конца, позволю себе разместить некоторую рекламу ;)
Если вы сами без указаний и косяков умеете моделировать архитектуру разного масштаба, от частных домов до огромных многоэтажек, с тем же качеством, как в выложенном примере, то посмотрите мою старую вакансию https://3ddd.ru/work/project_show/736 . Возможно, мы нужны друг другу.
Ссылка на четвёртую часть: https://3ddd.ru/blog/post/arkhviz_iznutri_chast_chetviortaia_rabota_s_bolshimi_eksterernymi_stsenami