Создание трёхмерной модели новогодней ёлки
Урок добавлен 23.04.2023
К этому уроку прилагается 3D-сцена
Какой же новогодний праздник, друзья, без трёхмерного моделирования новогодней ёлки? Правильно — никакой. А стало быть, пришла пора... впрочем, кому для чего. Одним — немедленно взять готовую сцену, что прилагается к данному уроку, и больше не париться с моделированием. Другим — что-нибудь видоизменить в готовой сцене. А третьим — освоить один из множества способов самостоятельного создания трёхмерной ёлки с помощью данного урока.
Как бы то ни было — приступаем. Нам с вами предстоит долгий путь: урок длинный, букв много, иллюстраций тоже хватает. Приз за терпение, как уже было сказано выше — полностью трёхмерная ёлка и знакомство с методом её создания.
1. Создание текстуры хвои
Начнём с текстуры. Разумеется, её можно создать и в Adobe Photoshop, и в Corel Draw, и в иных графических редакторах, но мы с вами, как и полагается настоящим трёхмерщикам, создадим текстуру в Maxon Cinema 4D — кроме всего прочего, наша с вами любимая программа позволяет создавать такую текстуру исключительно быстро, да ещё и без использования внешних текстур. Здорово, правда?
Первое, что мы делаем — создаём полигональный примитив типа «Диск»: забегая вперёд, сразу же скажу, что именно комбинация из нескольких таких дисков, повёрнутых друг к другу под углом, будет изображать хвою нашей ёлки. Лезем в верхнюю панель инструментов, нажимаем кнопку с изображением кубика и в выпадающем меню выбираем соответствующий примитив.
Созданный нами примитив даже по умолчанию слишком детализирован для нашей задачи. Наша ёлка будет состоять из довольно внушительного количества таких дисков, да и геометрия дисков будет замаскирована текстурой, чрезмерное же количество полигонов может ощутимо «утяжелить» проект и замедлить рендер. Редактируем свойства созданного диска, снижая до минимума его качество.
Теперь нам нужно наложить текстуру на созданный нами диск. Текстура будет изображать хвою и в нашем с вами исполнении будет представлять собой чёрно-белую маску для альфа-канала текстуры диска. Как и в случае с детализацией диска, чрезмерная детализация текстуры нам не нужна, и кроме того, мы с вами решили не использовать внешних текстур. Поэтому воспользуемся текстурированием при помощи сплайна. Снова лезем в верхнюю панель инструментов, но на сей раз нажимаем пиктограмму создания сплайнов, в выпадающем из которой меню выбираем сплайн-заготовку типа «Star» («Звезда»).
Обратите внимание — справа от сплайна-заготовки типа «Star» есть ещё два схожих типа заготовок: «Cogwheel» («Зубчатое колесо») и «Flower» («Цветок»). При желании вы можете выбрать вместо заготовки «Star» один из этих двух типов, настроив полученный сплайн на своё усмотрение. Принципиально сути урока это не изменит.
Идём дальше. Если сплайн-заготовка развёрнут перпендикулярно полигональному диску, как на изображении ниже, то лучше развернуть его, разместив в одной плоскости с диском. В принципе, можно этого и не делать, просто размещённый в одной плоскости с диском сплайн удобнее подгонять под размер диска.
Переходим в проекцию сверху и подгоняем размер сплайна под размер диска, а также увеличиваем количество лучей сплайна, иначе вместо ёлки у нас с вами получится кактус, что не вполне соответствует нашей задаче.
Теперь нам с вами необходимо каким-то образом превратить сплайн в кляксу на поверхности диска. Превращаем: создаём в нижней панели материалов (как вы, наверное, помните, она доступна в стандартном режиме) новую текстуру, открываем её свойства и в перечне атрибутов самого первого и наиглавнейшего канала — «Color» («Цвет») — нажимаем малюсенькую стрелочку напротив параметра «Texture». В выпадающем меню ищем пункт «Effects», наводим на него курсор мыши и получаем ещё одно подменю, в котором находим пункт «Spline» — вот последний-то нам как раз и нужен.
Возможно, вы уже смутно догадываетесь, к чему я клоню: совершенно верно — тонировщик «Spline» позволяет превратить любой сплайн в изображение на поверхности полигональной модели. А ещё с его помощью можно невероятно легко (и очень быстро) наносить надписи на поверхности моделей без использования внешних текстур.
Как нетрудно заметить, по умолчанию тонировщик «Spline» настроен именно под текстовый режим. Щёлкаем по пиктограмме тонировщика для появления окна его настроек.
Первым делом отключаем настройку «Text Spline» и видим, что настройки текста в нижней части окна свойств тонировщика исчезли, а поле «Spline» в самом верху окна стало активным. Теперь цепляем курсором мышки наименование сплайна «Star» в менеджере объектов и перетаскиваем его в поле «Spline» свойств одноимённого тонировщика.
Вообще говоря, сразу же после создания заготовки текстуры уже можно было бы присвоить её диску, и если сделать это сейчас (или это уже было сделано ранее) и отрендерить изображение, то мы с вами увидим, что сплайн «Star» действительно превратился в изображение на поверхности диска, но это изображение размещено на поверхности диска совершенно иначе, нежели исходный сплайн. Ничего удивительного: как именно размещать изображение — определяется свойствами тонировщика, а не положением сплайна относительно модели, в рисунок на поверхность которой трансформируется сплайн.
Так что наш следующий шаг — настроить свойства тонировщика.
И получить уже вполне подходящий результат.
Подозреваю, что вас, возможно, уже некоторое время подмывает спросить: а почему, собственно, все манипуляции с тонировщиком «Spline» происходят в канале «Color» текстуры, если первоначально речь шла о работе с альфа-каналом? Ведь диск с применённым в канале «Color» тонировщиком визуально останется всего лишь всё тем же непрозрачным диском с нарисованной на нём звездой, мало смахивающим на еловую хвою?
Да просто потому, что в канале «Color» результаты применения тонировщиков визуально отображаются нагляднее, чем в канале «Alpha», а потому с ними удобнее работать именно в цветовом канале.
Впрочем, немного терпения, процесс создания текстуры подходит к концу, нам остался последний шаг: убедившись, что текстура звезды расположена на поверхности диска именно так, как мы хотим — а мы хотим, чтобы центр звезды у нас совпадал с центром диска, а лучи звезды упирались в края диска — так вот, убедившись в этом, мы активируем канал «Alpha», копируем свойства из канала «Color» (выделив его, нажав на маленькую стрелочку рядом с параметром «Texture» и в выпадающем меню выбрав «Copy Channel») и размещаем их в канале «Alpha» (выделив его, снова нажав на маленькую стрелочку рядом с параметром «Texture» и в выпадающем меню выбрав «Paste Channel»), после чего снова возвращаемся в канал «Color», снова открываем всё то же выпадающее меню тонировщиков, но на сей раз выбираем в нём «Clear» («Очистка»). Ну и напоследок присваиваем каналу «Color» базовый зелёный цвет.
Любуемся результатом работы. Наш диск теперь визуально выглядит как зелёная многолучевая звезда. Для крупных планов веток такой вариант вряд ли сгодится, а вот для общих планов ёлки — вполне.
Предвижу ваш очередной возможный вопрос: зачем столько сложностей, когда можно было бы просто создать полигональную модель звезды, вытянув её из сплайна «Star» при помощи «Extrude Nurbs»?
Ну, во-первых, при выполнении вышеописанной процедуру мы с вами освоили новый способ текстурирования — при помощи сплайнов. А во-вторых, в полигональной модели многолучевой звезды количество полигонов было бы значительно больше, нежели в примитивной модели прозрачного диска с нанесённым на него рисунком. А большее количество полигонов — это больший расход оперативной памяти компьютера, большее время рендера финального изображения. Будь нам нужен всего один диск, это не имело бы принципиального значения, но, как вы увидите дальше, для создания новогодней ёлки нам придётся использовать довольно внушительное количество дисков.
2. Создание пучка хвои для ветвей
Чтобы хвоя выглядела объёмной, нам понадобится несколько одинаковых дисков, развёрнутых под углом друг к другу. Выделяем диск в менеджере объектов, ищем в верхнем меню Cinema 4D пункт «Functions», в выпадающем из него меню выбираем пункт «Duplicate». В правой части интерфейса под менеджером объектов появляется окно настроек дублирования выбранной модели. Указываем значение 3 для параметра «Copies» («Копии») и «Render Instances» («Рендер экземпляров») для параметра «Clone Mode» («Режим клонов»). Выбранное для второго параметра значение «Copies» создало бы полноценные, самостоятельные полигональные копии диска, что нам совершенно не требуется.
Мы с вами видим, что в менеджере объектов появилась новая группа объектов под названием «Disc_Copies».
По очереди выделяем каждый из трёх клонов и задаём угол поворота по одной из осей соответственно 45, 90 и 135 градусов — в результате у нас должно получиться что-то вроде фигуры, изображённой ниже.
Если отрендерить рабочую область интерфейса, то мы с вами увидим будущий пучок хвои для нашей новогодней ёлки — именно из таких пучков будут состоять ветви.
Нам осталось сгруппировать исходный диск и его клоны. Проще всего перетащить наименование исходного полигонального диска в менеджере объектов в группу клонов, а последнюю для полной ясности переименовать, например, назвать её «sheaf». Внимание: не забудьте переместить в эту же группу сплайн в виде звезды, на основе которого создана текстура диска, иначе изображение звезды на поверхности и диск, и его клонов исчезнет! После того, как всё это будет сделано — до поры до времени прячем группу, отключив её видимость, чтобы она не мешала нам на следующей стадии, которая называется...
3. Создание геометрии ёлки
Напомню, ёлка у нас должна получиться густая и пышная, да к тому же, вероятно, будет впоследствии украшена множеством игрушек, гирлянд и мишуры, поэтому мы с вами не станем тратить время на создание и текстурирование полигональной модели ствола и ветвей — на общих планах он всё равно вряд ли был бы виден под хвоей, для крупных же планов наша ёлка не подходит.
А вот геометрия расположения ствола и ветвей нам обязательно понадобится. Мы с вами изобразим её в виде невидимых линий — сплайнов, которые и задекорируем позже пучками хвои.
Для начала изобразим ветку. Рисуем три сплайна (ветка плюс два ответвления от неё в разные стороны), затем выделяем их и объединяем в один сплайн при помощи пункта «Connect+Delete» («Соединить и удалить») контекстного меню, выпадающего при нажатии правой клавишей мыши поверх намиенования любого из выделенных сплайнов. Не забудьте переместить оси созданной ветви в основание последней — при клонировании ветви её оси будут взяты Cinema 4D за основу в качестве места для крепления к стволу.
Проще всего создать геометрию центрального ствола, так как он представляет собой вертикально расположенную идеальную прямую. Не помешает также создать геометрию верхушки для ёлки. В результате у нас получится что-то вроде будущего каркаса ёлки — центральный ствол с верхушкой и одна-единственная прилепленная к нему ветка. Не увлекайтесь объединением сплайнов каркаса: учтите, каркас ствола и каркас ветки должны быть разными моделями!
Пришло время клонировать ветви вокруг ствола. Создаём новый мультипликатор: верхнее меню Cinema 4D, пункт «MoGraph», в выпадающем меню — «Cloner». Проверяем: мультипликатор должен находиться в основании сплайна геометрии ствола. Теперь подчиняем ветвь появившемуся в менеджере объектов мультипликатору. Если выделить мультипликатор в менеджере объектов, то в открывшемся ниже окне свойств мультипликатора значение параметра «Mode» («Режим») будет иметь значение «Linear» («Линия») — это вполне устроит нас с вами, если только невидимая линия, к которой будут прикреплены клоны сплайна ветви, будет совпадать со сплайном геометрии ствола. По умолчанию количество клонов ветви, однако, маловато — увеличиваем значение параметра «Count» («Количество») и подбираем шаг между ветвями таким образом, чтобы самый верхний клон был прикреплен ниже верхушки будущей ёлки.
Сейчас клонированные ветви расположены строго друг под другом по вертикали, тогда как должны быть расположены случайным образом вокруг ствола. Добавляем модификатор, который поможет нам решить эту задачу: верхнее меню Cinema 4D, пункт меню «MoGraph», в выпадающем меню наводим курсор мыши на пункт «Effector» и в следующем выпавшем подменю выбираем «Random».
Модификатор будет действовать только в случае, если указан в списке учитываемых соответствующим мультипликатором модификаторов. Проверяем: выделяем мультипликатор ветвей в менеджере объектов, в открывшемся ниже окне свойств мультипликатора выбираем вкладку «Effectors» и убеждаемся, что наименование модификатора «Random» присутствует в окне этой вкладки. Если нет — перетаскиваем наименование модификатора из менеджера объектов в это окно.
По умолчанию модификатор «Random» действует на положение клонов в трёхмерном пространстве. Случайное небольшое смещение ветвей по вертикали нас вполне устроит, смещение по остальным осям отключаем в окне свойств модификатора. В этом же окне — самое главное! — активируем параметр «Rotation» («Вращение») и указываем значение 360 градусов для оси, соответствующей повороту ветвей в горизонтальной плоскости.
Мы с вами видим, что каркас будущей ёлки уже значительно более похож на прообраз, но последний представляет собой конус, а наш каркас — цилиндр. Добавляем ещё один модификатор: верхнее меню Cinema 4D, пункт меню «MoGraph», в выпадающем меню пункт «Effector» и в выпадающем из последнего подменю — пункт «Step» («Шаг»). Как и в случае с предыдущим модификатором, проверяем наличие нового добавленного нами модификатора в списке учитываемых мультипликатором ветвей.
В результате, скорее всего, мы действительно увидим превращение каркаса нашей ёлки в конус, но — перевёрнутый кверх ногами.
Несуразица решается изменением значения параметра «Scale» во вкладке «Parameter» свойств модификатора «Step» на отрицательное число. Конкретное значение подбирается каждым на свой вкус в зависимости от пожеланий к степени конусности каркаса ветвей.
На данном этапе настоятельно рекомендую ещё раз проверить и настроить параметры мультипликатора и модификаторов, так как следующий наш с вами шаг — трансформация строго параметрической конструкции (обусловленной множеством параметров мультипликатора и двух модификаторов) в один-единственный сплайн. Если все проверки пройдены, то — выделяем в менеджере объектов мультипликатор и в правой панели инструментов Cinema 4D нажимаем пиктограмму «Make Object Editable» («Сделать объект редактируемым»). Мультипликатор при этом нажатии превращается в заголовок группы, внутри которой содержится множество отдельных сплайнов. Выделяем их все до последнего и объединяем при помощи пункта «Connect+Delete» в один общий сплайн, который вытаскиваем из группы (бывшего мультипликатора ) и в свою очередь, объединяем с верхушкой ёлки. Ну и в завершение работы над каркасом обзываем полученную конструкцию как-нибудь сравнительно понятно, к примеру, «Karkas».
Итак, теперь у нас с вами в распоряжении есть всё нужное для сборки новогодней ёлки: каркас и хвоя. Осталось украсить первое вторым. Как вы, вероятно, уже смутно догадываетесь — нам снова понадобится для этого мультипликатор. Создаём новый мултипликатор и в свойствах меняем значение параметра «Mode» на «Object». В качестве объекта, который послужит основой для клонирования хвои мы разместим во вкладке «Object» свойств мультипликатора — вы не поверите! — созданный нами каркас ёлки. А в качестве клонируемого объекта — тот самый пучок хвои, с моделирования текстуры для которого начался данный урок, для чего вернём группе дисков с альфа-текстурой видимость и подчиним эту группу мультипликатору.
Не вполне приемлемый, мягко говоря, результат. Открываем вкладку «Transform» («Преобразования») свойств мультипликатора и в средней колонке полей (это преобразование масштаба) меняем единицы на какое-нибудь меньшее единицы число.
Ну а всё остальное, как обычно принято уточнять во многих руководствах, следует доработать при помощи молотка и напильника. В нашем с вами случае это означает, что перед окончательным рендером не помешает лишний раз повозиться с настройками созданных нами объектов, дабы добится наилучшего результата.
Маленький, но, надеюсь, приятный сюрприз к новогоднему уроку — в приложенную к нему сцену добавлены огни праздничной гирлянды с бликами и набор из нескольких простеньких разноцветных стеклянных шариков.
С наступающими новогодними праздниками!
P. S. В самом низу страницы имеется форма добавления комментариев. Надеюсь, вам понравился данный урок, или же пригодится модель новогодней ёлки, которую вы можете скачать немедленно, бесплатно и без каких-либо регистраций для любых своих новогодних потребностей по ссылке, размещённой в начале статьи. Ну а автору лучшей наградой за урок послужат ваши комментарии к данной статье. Заранее спасибо!