Уроки: Blender

"Big Buck Bunny" изнутри. Ноды и рендеринг.

 

Часть 7. Ноды и рендеринг

 

Мы пришли к завершающему этапу нашего полного опасностей и приключений путешествия по рабочим файлам мультфильма «Big Buck Bunny». Пока мы этим занимались, успел вырасти и возмужать Blender 2.5, а команда Durian Project выпустила новый мультфильм под названием «Sintel». Он намного превышает «Большого Зая» по сложности, и его рабочие файлы пока трудно обрабатывать современными домашними нетбуками. К счастью, наши компьютеры уже позволяют открывать и рендерить файлы «Big Buck Bunny», и мы можем смело приступить к изучению самого ресурсоёмкого раздела нашего исследования — рендеринга финальных изображений и их нодовой обработки. 

Собственно, самому рендерингу будет посвящено не так много времени, потому что это та область, которой вас учить не надо. Зато о нодах, в то же время, будет рассказано много. Их территория пестрит загадками, и немногие осмеливаются на неё ступить. Кроме того, композинговые ноды «Big Buck Bunny» таят в себе немало интересных и в то же время сложных вещей, а для нас чем сложнее, тем лучше! 

Что ж, после такого длинного и скучного вступительного слова, которое многих читателей, я уверен, погрузило в глубокий сон, давайте перейдём от демагогии к делу. И откроем для примера какой-нибудь файл, ранее в предыдущих разделах не упоминавшийся, чтобы было не так скучно. Я выбрал для этого \scenes\05_throwing\10.blend — сцена бомбардировки Большого Зая орудиями из желудей, орехов и каштанов. 

Начнём по порядку. 

По неписанному стандарту рендеринга кадров в среде аниматоров Peach Project рабочее окно Blender для этих целей переводится в новую пустую сцену, которую они всегда называют comp, в отличие от set, в котором держатся модели и производится их анимация. Вследствие этого, поскольку Blender-у здесь рендерить нечего, ему указывается, что в эту сцену нужно подцепить линк на set. Это вы видите в панели Output в правом верхнем углу окна. 

Затем, поскольку сцены обычно очень сложные и рендерятся в HD-разрешении 1920х1080, то это чревато нехваткой памяти для компьютеров, и в целях её экономии рендерщики нажали кнопку Free Tex Images, чтобы между кадрами выкидывать из памяти ненужные текстуры. По этой же причине они нажали ещё кнопку Save Buffers, которая заставит Blender сбрасывать рендеринговые пассы из памяти на диск, а также позволить задействовать кнопку Full Sample. 

Эта кнопка очень важна, потому что при таком высоком разрешении в картинке становятся заметны зазубрины по краям объектов и всякий мелкий шум, особенно пестрящий при анимации. Full Sample позволяет отрендерить 7 промежуточных изображений, сдвинутых в разные стороны на несколько пикселей, после чего их объединить и получить более чистую картинку. Нажатие этой кнопки приводит также к тому, что режим OSA в панели Render автоматически переключатеся в FSA. Конечно, время рендеринга при этом немного возрастает, поэтому старайтесь не использовать этот режим, если вы не рендерите в HD и не имеете под рукой рендер-ферму хотя бы из 150 самых передовых нетбуков. :) 

Формат самих выводимых изображений установлен в 16-битный OpenEXR. В принципе, в обычных услових, когда мультфильм просматривается только на компьютере или на телевизоре, достаточно и всем хорошо известного PNG с 8-ю битами на цветовой канал, но для Большого Зая, который предполагался переводиться на киноплёнку, такой глубины цвета было бы недостаточно. 

Поэтому, если вы не собираетесь крутить свои мультфильмы в кинотеатрах на больших белых экранах, то вам ни к чему этот OpenEXR. Тем более, что вы даже просмотреть его не сможете без специальных программ. Однако, если всё-таки возникла такая необходимость, то одной из бесплатных программ, которые способны показать 16-и или даже 32-битный OpenEXR, я могу посоветовать DJV Imaging, http://djv.sourceforge.net. Изначально он создан под Linux-платформы, но также неплохо наботает и на Windows, хотя и не без приколов. 

И последнее, на что мы хотели бы обратить внимание в настройках рендеринга, — это, конечно же, нажатая кнопка Do Composite. Потому что без неё нам не было бы смысла обсуждать всё остальное. А раз мы заговорили об этой кнопке, значит, как нетрудно догадаться, о рендреринге нам сказать больше нечего, и мы приступаем к изучению деревьев в Node Editor. :) 

Для начала вернёмся в сцену set, чтобы кое-что там рассмотреть. 

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

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

Слой set gound — задний фон. Рендерятся слои 1 и 7 с пассами Combined, Z, Mist, AO. 

Слой set — дерево. Рендерятся слои 1 и 6 с пассами Combined, Z, AO. 

Слой franky — летяга. Рендерятся слои 1 и 3 с пассами Combined, Z, Vec, AO. Включена кнопка All Z. 

Слой gamera-rinky — шиншилла и белка. Рендерятся слои 1 и 2 с пассами Combined, Z, Vec, AO. 

Слой zmask — z-маска. Рендерится слой 7 с пассами Combined, Z и отсекается по маскам, представленным в слоях 5 и 6. 

Это были рендеринговые слои из сцены set, но есть ещё matte, которая присутствует почти в каждом файле с шотами. Переключимся в неё, чтобы лицезрить, что там присутствует. 

Это купол неба и многослойные цилиндры с рисунками далёких лесов, полей и рек. Так будет выглядеть самый нижний фон. 

А теперь, поскольку мы уже поняли, что будет рендериться во всех этих слоях и сценах, возвращаемся в сцену comp и начнём постепенно пробираться по нодам слева вправо и снизу вверх. В Peach Project художники-композеры (в которых я снова подозреваю Энди Горальчика) традиционно размещали ноды нижних слоёв в нижней части экрана. Тогда в самой верхней части оказывался слой, лежащий выше всех. Не буду спорить, зрительно это очень удобно и придаёт дереву нодов приятную упорядоченность. 

Я создал ноду Viewer, через окно которой мы будем смотреть наши промежуточные результаты, нажал кнопку Backdrop, чтобы изображение выводилось в самом Node Editor в фоновом режиме и подцепился к первой ноде, для самого нижнего слоя — matte. 

Следующая нода после неё тоже называется matte, но это на самом деле группа, в которую помещена нода RGB Curves, выполняющая цветокоррекцию изображения. 

В основном здесь немного утеплили картинку: добавили чуть-чуть красного и зелёного, а уровень синего слегка понизили. Переключаемся на следующую ноду — Blur. 

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

Далее цепочка от слоя matte объединяется с вышележащим слоем set ground, поэтому мы переключаемся на неё. 

В изображении мы видим какой-то серый артефакт посреди травы в том районе, где позже появится дерево, но предназначение его, я надеюсь, мы поймём позже. Пока же нам предстоит познакомиться с обработкой тумана. Из ноды set ground выводится пасс Mist, который потом совместно с пассом Image уходит в групповую ноду с точно таким же названием Mist. Поглядим сперва, как выглядит сам пасс. 

Очевидно, что в этом монохромном изображении тон отдельных его частей указывает на то, насколько далеко они находятся от камеры: чем дальше, тем темнее. Что ж, узнаем, как это сможет создать видимость тумана. Переключаемся на ноду Mist. 

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

Да уж, неслабо. Попробуем проанализировать, что мы видим. 

Выход пасса Image ноды set ground поступает в ноду Gamma, значение которой нодой Value установлено в 1. Однако при таком значении гаммы изображение не изменяется. Зачем же тогда этот цирк? Всё очень просто. Группа Mist используется также и во многих других шотах, и чтобы не создавать её каждый раз заново, она, как говорят, тупо копируется из одного файла в другой. В одних случаях гамма при этом изменяется, а в других нет, но состав самой группы остаётся одним и тем же. 

Итак, неизменённое изображение поступает в ноду RGB Curves, где производится его жёсткая цветокоррекция, а по сути — полное озеленение. 

Затем всё эта зелёность смешивается с нетронутым изображением по фактору, задаваемым пассом Mist, прошедшим через ноду ColorRamp, которая сделала из него негатив с задавленными светлыми тонами. 

Итого, общая картина выглядит так. 

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

Наверное, всё это будет трудно понять с первого раза для нетренированного ума, но гору осилит идущий. Нода Viewer, файлы «Big Buck Bunny», куча времени — и вас будет не узнать! :) 

Едем дальше. 

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

И на этом всё. Происходит слияние с нижним слоем при помощи ноды AlphaOver. 

Можно считать, что фон готов! Его построение оказалось не таким уж и сложным, если не считать загадочной групповой ноды Mist. 

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

Похоже на дерево, по которому ползает летяга. Его изображение направили к группой ноде tree, и оттуда оно выходит уже другого цвета и с потемнениями в некоторых местах. 

Всё просто. В этой группе находятся три ноды: RGB Curves, выполняющая обычную цветокоррекцию цветового пасса, ещё одна RGB Curves для цветокоррекции пасса Ambient Occlusion (AO) и затем нода, которая их перемножает. В итоге дерево получает затемнения в тех местах, где по ней ползает летяга, а также во всяких щелях и трещинах. Для полного понимания процесса я решил показать отцветокорректированный пасс AO. 

И снова дефокус, только теперь уже дерева, и так, что этого еле видно. 

После него изображение объединяется с цепочкой шиншилло-белкиного слоя, поэтому вернёмся снова назад и приступим к исследованияю этой цепочки. 

В рендеринговом слое gamera-rinky присутствуют, оказывается, не только косоглазая белка с шиншиллой, но ещё и некоторые цветочки на заднем плане, а так же снова какой-то серый артефакт в районе дерева. Пройдёмся дальше и попадём в групповую ноду gamera, которая выполняет с изображением похожее преобразование, какое делала нода tree с деревом. 

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

Будем продвигаться короткими шажками. 

Сперва нодой Invert инвертируется альфа-канал. 

Затем он складывается с пассом AO. 

Цветокорректируется. 

И после этого уже перемножается с цветным (тоже отцветокорректированным) пассом Image. 

Почему так сложно? Чтобы избавиться от артефактов, вызванных цветокоррецией пасса AO. У него нет альфа-канала, поэтому цветокоррекция привела бы к тому, что не только у животных изменился бы цвет, но и на всём фоне тоже, что после умножения его с цветом дало бы отвратительную кайму вокруг объектов. Поэтому пришлось сперва сложить AO с инвертированной альфой, после чего нода RGB Curves фон уже не затрагивала. 

Выйдя из нодовой группы gamera, многострадальное изображение попадает в ноду Vector Blur, чтобы размазать грызунов во время их движений. В этом деле ноде помогают пассы Z и Speed. Последний пасс представляет из себя карту векторов, в которой цветом задаётся направление и скорость движения объектов. 

Далее производится объединение грызунов с деревом. Причём, обратите внимание, дерево накладывается поверх шиншиллы с белкой.

И вот теперь мы подобрались к тому самому загадочному слою zmask. Причём, что интересно, в дальнешую цепочку на обработку отдаётся только пасс Alpha. 

Что вообще из себя представляет z-маска? Это такой объект в пространстве, который разделяет его на части по глубине: то, что находится перед z-маской, рендериться будет, а то, что позади неё — нет. Как всегда, в качестве визуальной демонстрации приведу небольшой пример. 

Допустим, у нас есть сцена с четырьмя кубами, расположенными в слое 1 и разнесёнными по глубине. Рендеринг их даст вот это. 

Затем мы решили добавить в сцену плоскость, поместив её между двумя ближними кубами и двумя дальними, но не в этом же слое, а во втором. После чего в рендеринговых слоях мы включаем для рендеринга слой 1, а на второй слой ставим чёрную жирную точку при помощи нажатой клавиши Ctrl. Остаётся нажать чуть ниже кнопку Zmask и отрендерить. 

И вот что получилось. То, что позади плоскости, отрендерено не было, а то, что спереди — да. Но! Поскольку плоскость узкая и не охватила весь передний куб, то нижняя часть от него была отрезана. То есть зона действия z-маски распространяется не только по глубине, но и по своей поверхности. Короче говоря, видно будет только то, что в виде из камеры накладывается на z-маску. 

А теперь вернёмся к нашей летней сцене с деревом. Это то, что было бы отрендерно, если бы не z-маска. Слой 7. 

А вот сами маски, слой 5 и 6. Дерево и цилиндр, который надет на шиншиллу. Хотя сама она находится в другом слое. 

Теперь делаем вывод. Отрендерено будет только то, что находится перед деревом и перед цилиндром в зоне видимости камеры. И вот оно (здесь я попытался обвести границы невидимого цилиндра). 

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

Проследим, как этот участочек был скомпожен со статическим фоном и с шиншиллой. 

Мы уже узнали ранее, что от рендерингового слоя zmask был взят только пасс Alpha. И первым делом он инвертируется. 

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

Короче говоря, у шиншилло-беличьей цепочки был обрезан низ картинки, по форме как раз напоминающий z-маску. 

А теперь заглянем в группу Mask и неожиданно поймём, что в ней всё совсем непросто. Хотя, казалось бы, что стоит объединить два изображения? Но в том-то всё и дело, что объединить-то их легко, а вот что делать с альфой? Из-за неё получается много проблем на этапе постобработки в Node Editor. И это — один из таких примеров. Попробуем его разобрать. 

Инвертированная альфа из цепочки zmask подаётся на ноду ColorRamp, где получается чёрно-белая картинка, которая нодой Multiply с коэффициентом 1 умножается на шиншилло-беличью цепочку. В результате получается дерево, внизу которого вместо травы — её чёрный силуэт (скриншот выше). 

Это был перемножен цвет. А теперь нужно перемножить альфы. Нодой Separate от итогового изображения отделяется альфа и перемножается с альфой от ноды ColorRamp. 

Почти готово. Осталось только одно — объединить альфу с изображением. Для этого идеально подходит нода Set Alpha. 

А теперь можно сложить всё это неуставное безобразие с самим статическим фоном. 

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

Немного переведя дух, вернёмся снова назад, уже в последний раз, и узнаем, как там поживает летяга. 

Первым делом он проходит через ноду frank, принцип действия которой аналогичен ноде gamera, то есть там производится цветокоррекция пасса Image, AO и их перемножение. 

Затем он попадает в ноду Vector Blur для размытия по движению. 

И напоследок объединяется со своими корешами. 

Финальное изображение почти готово. Осталось пройти через нодовую группу Glow, которая является постоянным спутником многих шотов. 

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

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

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

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

Вот вроде бы и всё. Кстати, а где же делся тот серый артефакт в районе дерева? Честно скажу — не имею понятия. Не уследил за ним. Наверное, принёс какую-то пользу, раз его не видно. Поэтому возымею наглость посоветовать вам разобраться в этом самостоятельно. :) 

И пока не забыл, напоминаю, что пролистать все ключевые скриншоты в оригинальном качестве и сравнить их друг с другом в вашем любимом графическом просмотрщике вы можете из файла throwing.zip

Раз так, то на этом мы закончим изучать шот орехо-каштано-желудёвой бомбардировки Большого Зая, но чтобы нам не было обидно от того, что мы рассмотрели всего один пример, хотя он и занял много места, то пробежимся вкратце по ещё одному. 

Откроем (в последний раз в истории изучения «Big Buck Bunny») файл \scenes\08_a-team\03.blend, в котором шаловливый кролик с угрюмым выражением лица делает себе скакалку из растительных материалов. 

Здесь мы имеем всего четыре рендеринговых слоя: background – задний план, foreground – передний план, lightbeams – тот самый магический объёмный свет, JC — кролик и к ним можно ещё добавить matte – рисованный фон. 

Ну, что ж, он сказал «Поехали!» (а кто сказал — не помню) и взмахнул рукой! Начинаем по традиции двигаться с нижних слоёв вверх. Первый рендеринговый слой matte. 

Затем его небольшая цветокоррекция. 

И блюр. 

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

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

А второй подвергается нечеловеческой цветокоррекции с целью стать поможим на туманный Альбион. 

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

Как видно, туман должен быть отодвинут далеко назад. И посмотрим, что из этого вышло на деле: 

Всё, как и ожидалось: туманная синева оказалась где-то позади деревьев. 

После этого картинка блюрится, но очень хитро: по карте, заданной нодой Map Value, которая преобразовывает невидимый человеческим глазом пасс Z в 8-битное изображение по заданной в ней величине среза. 

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

И напоследок происходит объединение картинки с рисованным фоном слоя matte. 

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

Мы снова поднимаемся выше и переходим к рендеринговому слою foreground. 

Он, как обычно, пропускается через уже знакомую нам ноду forest, которая имеет те же настройки, что для слоя background. 

Затем размывается законной нодой Defocus, а не всякими фейками, вроде Blur. 

И... на этом пока что всё. Цепочка закончилась, а то, с чем она смешивается, нами ещё не пройдено. Но мы на верном пути! 

Следущее, что нам попадается, — это наши любимые магические лучи света из слоя lightbeams. 

Они проходят через ноду Blur. 

Затем цветокоррекцию. 

И заканчивают свой путь, смешиваясь нодой Screen с цепочкой, идущей от слоёв background и matte. Как работает решим смешивания Screen, мы уже знаем. В упрощённой формулировке — осветляет картинку. 

Нам осталось сделать всего несколько шагов до победы. Последняя цепочка, которая нами ещё не изучена, — это несокрушимый Зай. Слой JC. 

Как и все персонажи, он первым делом тоже пропускается через специальную групповую ноду, в которой делается цветокорреция пасса Image, пасса AO и их перемножение. Эта нода в данном случае называется rabbit. 

После этого, опять же не нарушая стандарта, кролик размазывается нодой Vector Blur. 

И на этом его многострадальный путь закончен. Нодой AlphaOver он объединяется с выходом ноды Screen, о которой было упомянуто чуть выше. 

Затем происходит последнее объединение цепочек — сверху накладывается потерянный некоторое время назад слой foreground. 

Ну, и, конечно же, как же не сделать из такого шедевра размазню. Групповая нода Glow для этого в нашем распоряжении! 

Однако затем художники-композеры почему-то решили, что размазня получилась слишком суровая. Они покаялись в своих делах и чуть ужесточили картинку нодой Sharpen. 

Вот теперь полное и безоговорочное всё! Все скриншоты с кроликом вы можете пролистать из файла a-team.zip

Конечно, мы ещё наблюдаем в финальной картинке некоторые косяки. Так, например, в левой части кадра видна какая-то подозрительная вертикальная полоса. Нам самом кролике плохо просматривается мех. А жир под подбородком неестественно деформирован. Но все эти недоработки не имееют никакого отношения к композитингу. Они возникли где-то на стадии рига и рендеринга. И хотя в финальном мультфильме этого уже нет, но по ходу исследования файлов «Big Buck Bunny» у меня не раз возникало подозрение, что это не самые последние версии. Как это обычно и бывает, многие косяки часто обнаруживаются в самый последний момент, когда до премьеры остаются буквально считанные часы. Поэтому их устраняют на скорую руку, иногда даже простым ретушированием кадров, и не всегда такие опальные доработки попадают в репозиторий рабочих файлов. 

Так что не стоит принимать всё, что мы видим, на веру, а лучше почаще использовать свой ум. :) 

На этом позвольте с вами попрощаться. Длинный путь длиною в год, пока я писал все эти статьи, закончен. Надеюсь, что мои старания не пропадут даром, и вскоре мы увидим новые шедевральные мультфильмы, созданные вами в Blender, с которыми Большой Зай даже рядом не валялся! :) 

Сайт автора: www.krre.inf.ua.

13300 Автор:
Актуальность: 733
Качество: 733
Суммарный балл: 1466
Голосов: 14 оценки

Отзывы посетителей:

аватар
 
Легис 1 0
огромное спасибо за материал, очень познавательно.
аватар
 
Man5ON 2637 0
Куратор комьюнити
Цитирую Александр Трипольский:

Как,скачать уроки по Биг Бак Бани?



Здравствуйте! Непосредственно уроки можно скачать, перейдя по ссылке сайта автора, там в разделе статьи есть соответствующий раздел.

(ссылку поправили)
аватар
 
Здравствуйте! Как,скачать уроки по Биг Бак Бани?
Зарегистрируйтесь, чтобы добавить комментарий.
Эту страницу просмотрели: 580 уникальных посетителей