Создание работы «Девочка на реке» в Blender

С того момента как я начал осваивать Blender, я постоянно бродил по 3D-галереям в интернете рассматривая картинки и пытаясь понять как они сделаны. Иногда казалось, что я всего лишь в шаге от 3D-художников, но пытаясь сделать что-то подобное и читая критику по своим работам я понимал, что мне ещё далеко до них.

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

Програмное обеспечение и системные требования

Моделирование — Blender 2.48a
Рендер — Yafray 0.0.9
Постобработка итогового изображение и редактирование текстур — GIMP 2.4

Хочу отметить, что для рендера всей сцены с материалами мне не хватило моих 2гб оперативной памяти. Поэтому тем у кого не больше 2гб, стоит всерьёз призадуматься на тем где рендерить итоговое изображение. Стоит помнить так же о том, что для обеспечения точности и улучшения качества изображения, а так же для выявления ошибок стоит рендерить в разрешении превосходящим в 1,5-2 желаемое разрешение изображение. Из большой картинки всегда можно сделать маленькую. Уменьшенная большая картинка будет выглядеть более чётко. Я рендерил на 1920×1536, такое разрешение позволило рассмотреть много мелких деталей.

Что бы решить проблему с оперативной памятью мне пришлось покупать новый компьютер (обновление старого оказалось не рациональным) с 8 Гб памяти и 4-х ядерным процессором. В связи стем, что 32-битная ОС не может выделить больше 3-х гигобайт на один процесс, пришлось установить 64-битную ОС. После такого апгрейда я смог забыть об экономии ресурсов, фанатам 3D рекомендую сделать так же, если конечно у вас нет возможности использовать где-то на стороне рендер-ферму.

Если у вас нет возможности воспользоваться рендер-фермой или купить себе новый компьютер, то можно удалить лишние полигоны, уменьшить количество частиц, размеры текстур. Кроме этого можно выключить Blender после того как он закончил экспорт сцены и запустить yafray с командной строки.

Идея

Важна не только идея, но и возможность её реализовать. Что бы картинка получилась интересной, красивой и реалистичной необходимо её детализировать, чем больше мелких и детально прорисованных объектов тем лучше. Но детализировать не всегда удаётся, иногда приходится долго ломать голову да же над тем как заполнить пустые места в картинке. Поэтому, прежде чем начать моделировать сцену в Blender'e, нужно взять в руки кусок бумаги и нарисовать эскиз будущей картинки, подумать о том как и что детализировать. Если в голову не приходят мысли о мелких деталях, то нужно либо полистать картинки, фотки, либо бросить эту идею и нарисовать новый эскиз.

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

Следует помнить, что создание 3D-картинки состоит из трёх основных этапов: моделирование, освещение и текстуирование. Итоговое качество картинки будет равно не среднему качеству выполнения трёх основных этапов, а качеству того этапа который выполнен хуже чем два других. Именно поэтому не стоит пренебрегать ни одним из этапов.

Моделирование

Первым делом я решил замоделить девочку. Людей я начал рисовать ещё в самом начале освоения Blender'a, но получалось всегда достаточно грубо с большим набором ошибок в анатомии, пропорциях. Каждая новая модель была лучше предыдущей, но до идеала далеко. Как я выяснил, настоящие художники либо рисуют с натуры либо используют референсы (фото рисуемого объекта).

Референсы человека найти не так просто, самый хороший сайт референсов — 3d.sk, он позволяет выбрать возраст человека, пол, национальность, размер фото около 5-6 мегапикселей, что позволяет детально разглядеть все части тела, но что бы от туда что-то скачать нужно платить деньги. Можно конечно покопаться в интернете и найти ссылки на референсы выложенные добрым дядей в общий доступ, но найти такое не просто.

Если есть на примете девочка готовая сняться на фото с разных ракурсов без одежды, то референсы можно сделать самому. Подобные фото лучше делать на улице, поскольку там больше света и пропадает необходимость использовать искусственное освещение (создать хорошее искусственного освещение не легко), что значительно увеличит качество фото.

Кроме этого существуют атласы анатомии для художников — то же хорошая вещь! В атласе вы найдёте иллюстрации и описания не только тела, но и скелета, мышц, а так же описание пропорций человеческого тела, мимики и т. д.

Изображение женского тела для 3d моделирования

Раздобыв референсы девочки и атлас анатомии я принялся за моделирование. Начинал моделировать с кубика используя модификатор mirror. Подробно описывать процесс моделирования человека не буду по скольку на эту тему полно подробных статей которые легко найти в интернете ( хорошие статьи по этой теме есть на blender3d.org.ua ) и нет смысла переписывать. Не беда, что вам попадётся хоть и хорошая статья, но не про Blender, а про 3D-MAX или Maya, Если вы умеете управлять полигонами, то достаточно будет да же одних скриншотов.

Главное правило — стараться построить модель содержащую только квадратные полигоны, а треугольников должно быть как можно меньше. Соблюдая это правило вы во-первых получите красивую сетку, во-вторых — будет удобнее редактировать модель, накладывать текстуры, в третьих — настоящие мастера моделят только квадратами. Я конечно пробовал делать всё по своему, но получилось плохо, не повторяйте мою ошибку — боритесь с треугольниками! Сложнее всего сделать голову и туловище, я частенько держу перед глазами скриншот сетки человека, сделанную правильно.

Думаю моя сетка вам поможет понять как правильно должна выглядеть сетка + туториал с сайта blender.org.ua по моделированию головы, тела. Моделирование человека процесс сложный, особенно если моделить женщину, поскольку необходимо сделать аккуратные переходы изгибы что бы придать ей нежность и привлекательность. С первого раза нарисовать тяжело да же имея перед собой множество референсов и атласов, но в то же время рисовать интересно, любому мужчине нравится женское тело, и изучать его делали занятие не из скучных.

3d модель головы и тела девушки

После того, как модель тела девочки была готова я принялся за брёвна. Обычно бревно ассоциируется с цилиндром, как и дерево, но на самом деле это далеко не так. Если вы сходите в лес и внимательно присмотритесь к форме стволов деревьев, то вы не найдёте ни одного дерева во всём лесу с правильной цилиндрической формой ствола. Мне не раз приходилось искать в лесу тонкий прямой ствол для удочки — задача не из простых.

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

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

3d модели деревьев для сцены

Растения, как ни странно, оказалось нарисовать гораздо проще чем брёвна и девочку. Растения, в отличии от деревьев имеют более симметричную форму, но ось растения не прямолинейна, она наклонена часто либо в ту сторону в которую чаще дует ветер, либо в сторону солнца.

Нарисовав одно растение я его просто скопировал и менял размеры копии, наклон оси, масштабировал по вертикали. Главное не менять количество полигонов, иначе придётся текстурировать каждое растение отдельно.

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

Модели растений для сцены

Мало нарисовать многополигонные, неровные объекты, необходимо ещё их правильно осветить. По началу кажется что в освещении нет ничего сложного: если освещаем улицу — значит берём лампу Sun и готово. Но это очень далеко от истины. Во-первых осветив сцену одной лампой вы получите чёрные непроглядные тени, но даже в самый солнечный день в реальном мире тени не чёрные и объекты, попавшие в область тени, хорошо видны.

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

Но небо у горизонта имеет более светлый цвет чем в зените, и почти всегда есть облака (хотя бы маленькие), что то же сказывается на освещении. Кроме этого свет имеет свойство отражаться от других объектов: светлые объекты лучше отражают свет, тёмные хуже. Отражённый свет имеет уже не цвет неба или солнца, он такого же цвета как и отражающий его объект.

Как выяснилось, нам будет недостаточно одного градиентного фона: нам нужны облака, причём значимая часть неба должна быть закрыта деревьями, от которых должен отражаться свет и, в свою очередь освещать объекты. Для решения этой проблемы существуют специальные текстуры окружения — HDRI-изображения, для их использования нужно просто наложить их на фон как обычную текстуру.

Такие текстуры легко найти в интернете, а если вам интересно чем отличается HDRI-изображение от привычных нам jpg и tga, то на эту тему то же есть множество статей в интернете и мне нет смысла их переписывать.

3d освещение сцены

Теперь снова о тенях. Лампа Sun в yafray не делает размытые границы теней, хотя в реальности границы тени размыты. Поэтому в место лампы Sun я стал использовать лампу Area. У этой лампы есть несколько настроек: Size (размер лампы) — чем больше это число тем сильнее будут размыты границы тени; Samples (количество лучей) — тем больше лучей, тем будет выше качество тени (меньше шума в тенях)? но это сильно скажется на времени рендеринга, поэтому количество лучей нужно подбирать делая баланс между качеством и скоростью.

Что бы правильно расположить лампу и выбрать нужный угол наклона необходимо определиться с временем суток. Я решил сделать утро и поэтому наклонил лампу примерно на 30 градусов от горизонта (примерно под этим углом падают лучи утреннего солнца).

Композиция

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

Я по специальности конструктор и для себя я вывел такое умозаключение: Правила композиции это как набор ГОСТ-ов в черчении, их просто нужно знать и соблюдать, тогда всё будет нормально. Не лишним конечно будет сходить в картинную галерею и посмотреть как великие мастера располагают объекты на своих холстах или, на худой конец, посетить какую-нибудь профессиональную художественную или фото галерею галерею в интернете. Принципы композиции везде одинаковые: и в 3D и в 2D, и в фотографии и да же в кинофильмах и в театре.

Соответственно подробно о композиции можно читать в книгах для фотографов, художников. Основное правило композиции это правило третей: разделите картинку на три части по вертикали и горизонтали — там где линии пересекутся будет центр визуального интереса. То есть главные объекты сцены нужно размещать в точках пересечения линий, либо на самих линиях.

Композиция сцены

Для придания объёма нужно размещать крупные объекты по диагонали, что бы было видно, что объект трёхмерный, а не плоский двухмерный — это правил о называют правилом диагонали. Соблюдая правило диагонали я расположил мостик по диагонали. Используя правило третей я сместил девочку в центр визуального интереса. Придание девочке несимметричной позы сделало девочку более живой, но об этом позже. А пустые места дальнего плана заполнил деревьями. Деревья сделал все разные, кривые, добавил сучки, трещины, дупла. Каждый листок на дереве отдельно я не стал рисовать, а выборочно деформировал, масштабировал. Поскольку в природе ничего одинакового быть не может я был вынужден сделать так что бы однообразие не бросалось в глаза.

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

«Одна голова хорошо — а две лучше» — Во время создания будущего шедевра, полезно показывать свои наработки более опытным людям или хотя бы единомышленникам, они могут подкинуть какие-нибудь новые идеи, покритиковать отдельные объекты или всю сцену в целом, возможно после того как вы задумаетесь над всем сказанным вы согласитесь с чем-нибудь. Мне давали много советов о том что и как лучше сделать, применив несколько советов я сделал свою картинку значительно лучше.

«В чужом глазу иголку видят, а в своём бревна не замечают». Как правило человеку очень тяжело увидеть свои собственные ошибки. Помню ещё в школе напишу сочинение, проверяю сам себя и не нахожу ни одной ошибки, а заглянув в тетрадь соседа вижу его ошибки, а он мои, хотя оба знаем правила, но в своей тетради самостоятельно трудно найти ошибку. Так и здесь — стоит только показать кому-то, тот сразу скажет что что-то не так. Можно так же работать с перерывами: отложить работу, отдохнуть денёк и потом взглянуть в неё свежим взглядом — грубые ошибки сразу бросятся в глаза на свежий взгляд.

Поза персонажа. Модель персонажа конечно проще сделать симметричную пользуясь модификатором mirror, но после того как модель готова симметрию необходимо нарушить и, используя арматуру, придать ей более сложную позу. Что бы поза была более естественной желательно покопаться в фотографиях или картинках и внимательно посмотреть как согнуты конечности, позвоночник, как повёрнута голова. Более правильная и естественная поза сделает модель намного живее, нежели симметричная поза или не проработанная арматурная поза. Интернет просто кишит различными фото сессиями, обоями (Wallpapers) и если поискать, то вы найдёте нужный пример.

После того как модель приняла нужную позу можно приступить к моделированию причёски. К счастью в Blender'е уже давно ушёл в прошлое метод укладки волос с помощью кривых линий. Начиная с версии 2.46 в Blender'e появился специальный режим для работы с волосами — Particle mode, в этом режиме волосы укладываются с помощью виртуальной кисточки.

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

Моделирование одежды

Об одежде я долго думал: стоит ли вообще одевать девочку? А есть стоит, то в какую одежду? Вскоре решил, что стоит одеть девочку, поскольку впереди ещё предстоит работа с кожей, мастерства и терпения может не на всё хватить и если закрыть часть тела одеждой, то работы убавится.

Определившись с тем, что я рисую не какое-то лесное существо или фотомодель на фотосессии, а простую скромную дочку лесника, которая родилась и живёт в этом лесу с рождения, следовательно одежду нужно нарисовать простенькую без различных вырезов оголяющих интимные места. В Blender'e в настройках физики существуют настройки ткани, требуется лишь сделать высокополигонное полотно, настроить физические свойства и полотно само ляжет на тело.

Работа с тканью настолько проста, что не вызвала у меня ни каких затруднений, но для того, чтобы придать платью приличный вид потребовалось редактировать его в режиме Edit Mode: двигать отдельные точки, добавлять/удалять полигоны.

Текстуры и материалы

Текстуирование — не очень сложный этап, но достаточно длительный и однообразный для такой сцены как эта. Он требует наличия большого количества текстур дерева, растительности а так же UV-текстуру женского тела. Текстуры листьев я сделал летом с помощью своего цифрового фотоаппарата, текстуру камыша пришлось нарисовать самому используя GIMP, поскольку мою фототекстуру не удалось нормально наложить. Остальные текстуры были скачены с интернета, в основном с www.cgtextures.com и набор Total Textures.

Текстурирование растительности

Проще всего за текстурить растительность: достаточно найти UV-текстуру листа (я использовал свои фото сделанные в режиме макросёмки) и наложить её на один листок, добавить ему материал, после этого можно просто выделить все однотипные листья (главное что бы у них было одинаковое количество полигонов), в последнюю очередь выделяется тот листок с которого будем копировать.

Затем заходим в меню object->Scripts->UV copy from active и текстура скопируется на все выделенные объекты. Для копирования материала нажимаем Ctrl+L, затем цифру 4. UV-текстура не всегда копируется вышеописанным образом: на копируемых объектах должна быть создана UV-развёртка, поэтому на этапе моделирования перед тем как копировать объект нужно создать на нём UV-развёртку, настраивать её не нужно, главное что бы она просто была, для этого просто войдите в режим Edit Mode, нажмите U->Unwarp и хватит.

Если вы забыли на этапе моделирования это сделать, то придётся делать это с каждым объектом отдельно, много времени это не займёт, но может утомить однотипность действий.

Для того что бы наложить текстуру на брёвна, рогатины и деревья нужно создать швы (выделите линии будущих швов и нажмите Ctrl+E->Mark Seam) по которым на UV создадутся линии разреза текстуры и U->Unwarp красиво развернёт UV-текстуру вашего объекта, после этого останется только подобрать нужную текстуру и подогнать под неё вашу UV-развёртку.

Для текстурирования девочки понадобится не только сделать швы, но и отыскать UV-текстуру кожи. Для этого нужно либо скачать UV-текстру, либо скачать какую-нибудь бесплатную 3D-модель женщины, распаковать архив и взять текстуру.

Не важно для какой программы вы скачаете 3D-модель, поскольку текстура в любом случае будет либо в формате JPG, либо в TGA. Кроме этого, если у вас есть навыки рисования и/или качественные референсы, то можно сделать текстуру самостоятельно. Если вы рисуете конкретного человека и хотите что бы он был похож сам на себя, то стоит сделать фотосессию в стиле «ню» и используя GIMP сделать UV-текстуру.

Я рисовал не конкретную девочку и разные части тела срисовывал с разных фоток, UV-текстуру скачал. Далее вам потребуется сделать и подогнать UV-развёртку под эту текстуру. Но перед тем как накладывать на девочку текстуру необходимо внимательно рассмотреть UV текстуру, что бы решить где лучше сделать швы.

Текстура женского персонажа

В моём случае UV-текстура состояла из трёх отдельных частей: текстура головы, текстура туловища, текстура конечностей. Следовательно, мне нужно создать швы разделяющие UV-развёртку на эти части, а после этого сделать разрезы на этих частях. После этого можно приступить совмещению текстуры и развёртки. Занятие кропотливое, необходимо добиться того что бы текстура легла без натягов на каждый полигон.

Следующий шаг — настройка материалов. На этом этапе придётся очень много рендерить, каждый целую сцену не обязательно, можно раскидать объекты по слоям и рендерить отдельные слои. Можно так же рендерить отдельную часть изображения: переключитесь на вид из камеры (цифра 0), нажмите Shift+B и рамкой выделите нужный участок. Для отключения рендера по частям отключите кнопку Border на вкладке Render (F10).

Думаю нет смысла приводить описывать все параметры материалов которые я выставил, скажу лишь о главном и более сложном. В первую очередь стоит упомянуть об SSS (поверхностное рассеивание света). Большинство органических объектов наделены этим свойством: лучи света па дующие на объект рассеиваются на поверхностных слоях объекта тем самым вызывая эффект просвечивания, внутреннего свечения. Теоретически это примерно то же самое если внутрь объекта вставить источник света и настроить прозрачность объекта. В Blender SSS была реализована начиная с версии 2.44.

К сожалению, Yafray не поддерживает блендеровский SSS, а без этого очень тяжело сделать органику. Но выход есть — в интернете есть скрипт «Mhsssbeta04.py», что бы воспользоваться им нужно его скачать, сменить тип одного из окон Blender на Text Editor, открыть скаченный скрипт и запустить его (Alt+P).

После этого необходимо выделить тот объект на котором вы хотите настроить SSS, включить в его материале кнопку VCol Paint, сменить тип отображения 3d-окна на Sharaded (Shift+Z). Далее в окне с запущенным скриптом покрутите настройки и жмёте кнопку Go, рендерите и смотрите что у вас получилось, и путём проб и ошибок доводите до желаемого результата.

На всю органику я не стал настраивать SSS, поскольку не на каждом объекте он был бы виден. SSS настроил на теле девочки, на воде, на некоторых листьях. На цветках кувшинки я решил использовать параметр Emit (самосвечение), это дало требуемый результат. SSS очень загадочно применилось на теле девочки: ножки получились прекрасно, да же через чур просвеченными, тело местами плохо, а лицо вообще просто жуть!

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

Варианты SSS

После того как материалы, боле менее настроены я принялся добавлять мелкие объекты на сцену: такие как мох, ряску, стрекоз, листья упавшие вводу а так же добавил лучики света(лампа Spot с нажатой кнопкой Halo), заставил дальний план плоскостями с натянутыми на них изображениями деревьев с прозрачным фоном, добавил DOF (для yafray его можно настроить в свойствах камеры, на вкладке DOF).

Многие спрашивали о том как я нарисовал мох. Мох рисуется как обычные волосы: создаю плоскость, добавляю частицы (hair), перехожу на вкладку children, выбираю Faces и двигаю ползунок Rough, потом настраиваю в материале цвет, блеск и готово. Тонкость здесь в том, что создавать надо мох не одним элементом на всё бревно, а маленькими сегментами (на рогатине их семь), площадь каждого сегмента разная, соответственно и плотность мха получается разной да же при одинаковых настройках, это делает мох более естественным.

Постобработка

Последние штрихи будим наносить в GIMP. Подрисовывать я ни чего не стал, ограничился применением нескольких фильтров.

Первым делом я повысил резкость изображения на 36 единиц (фильтры > Улучшение > Повышение резкости), второе слегка уменьшил насыщенность (Цвет > Тон-насыщеннось), немножко увеличил контрасность (Цвет > Яркость-контраст). Третье — добавил туман (Фильтры > Визуализация > Облака).

И в последнюю очередь добавил рамку (Фильтры > Декор > Нечёткая рамка), потом уменьшил изображение до 1024×819 и отправил вечерком в галерею на render.ru, утром просыпаюсь и получаю письмо с render.ru: «Уважаемый and-tux! Ваша картина 'Девочка на реке' прошла отбор render.ru и доступна для просмотра».

Заключительный рендер

Итоговая картинка

Заключение

Эта картинка симпатично смотрится если её напечатать на формате 20×30! Ниже представлены ссылки на несколько вариантов моей картинки с хорошим качеством.

Возможно к кого-то возникнут вопрос: «нравится ли мне моя картинка?». Переднем планом я полностью доволен, правда стрекоз плохо видно, видимо стоило бы осветить их персональными источниками света.

Лицо девочки получилось не очень, если смотреть на большом разрешении, задний план мне тоже не особо нравится. Существует множество 3d-художников которые рисуют на много лучше меня — есть на кого равняться. Но главное ,что эта картинка лучше предыдущей, сделан большой рывок вперёд, а если не нравятся свои картинки — значит есть потенциал для роста в этой сфере.

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

Поделиться в: Опубликовать в twitter Опубликовать в своем блоге livejournal.com