Blender-Empire #9

Page 1


2

4

НАШ МИР

Содержание

ДЕЙСТВИЯ СООБЩЕСТВА ЗА ЛЕТО

6

ПЯТЫЙ ЭЛЕМЕНТ

Blender-Empire I №9

ТЕМА НОМЕРА

126 145

9 ЗАТОПЛЕНИЕ ПОДВАЛА 16 канистра С ВОДОЙ 21 моделирование ландшафта 37 создание модели Земли 71 создание звездного мира 78 небесный куб 82 облака из плоскости 88 облака из частиц 93 снег 99 создание дождя 104 создание торнадо 111 реалистичная волюметрика 119 создание спрайтового огня 123 создание огня из частиц СТРУКТУРА ПРОЕКТА ДЛЯ BIG BUCK BUNNY

ЧАСТЬ 2. МОДЕЛИ И ЛИНКОВАНИЕ

ГАЛЕРЕЯ

ТЕМА: АВТОКОЛОННА


От редактора

3 Над номером работали: Редактор Вычегжанин Владимир nocemperor@gmail.com

Подготовка материала: Балашов Вадим Балезин Дмитрий Зарыпов Владимир (krre)

Привет всем.

На экране вашего монитора 9 номер журнала. Если посмотреть на дату его выхода, то может стать не по себе. Но к числу дьявола он не имеет никакого отношения. Как объявлялось раньше, этот номер тематический. Вы в нем узнаете о пяти элементах: воде, земле, воздухе и огне. Статьи и уроки будут полезны пользователю с любым уровнем знаний программы. Также в журнале вы найдете ссылки на статьи, которые расширят ваш кругозор по данной теме, но чтобы начать, вам хватит материала этого номера. Особо хочу отметить галерею этого номера. Я был поражен мастерству авторов этих работ. Надеюсь, все реквизиты отметил правильно. Также хочу поблагодарить всех людей, которые работали надо журналом. Всем приятного чтения и изучения!


4

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

Blender-Empire I №9

BlenderTech не публиковался с середины июня, что весьма плохо. Правда Максим обещал вернуться. А то очень сложно читать новости с BlenderNation, если к тому же есть проблемы с английским языком. Максим делал очень полезную вещь. Сообщество на тебя рассчитывает. Ждем-с!

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


Так же нельзя не отметить великолепную работу, выполненную Александром Григорьевым и Ко. Журнал оптимистичный и мне лично очень понравился. К тому же, я так понял, у них есть в планах выпускать CD диск с материалом. Это весьма интересная идея. Может мне тоже так сделать!? Ладно, шутки в сторону. Особо понравилось в журнале, что появился раздел «Новости». Пусть они не совсем новые, но это действительно нужный раздел. Что ж я искренне надеюсь, что когда-нибудь все проекты и журналы будут котироваться на мировой сцене.

Что же касается Смешанной Империи. Думается, что этот номер будет предпоследний или даже последний в таком виде. То есть интернет журнал в pdf формате будет заменен на другой формат. Работы по этой смене мной ведутся в полной силе. Можно так сказать: «Это новая ступень развития». Надеюсь, что все получится. А в целом процесс развития русскоязычного сообщества очень стремительный. Может уже скоро настанет время, когда зарубежные любители будут учиться у нас этому ремеслу.

5


6

Пятый элемент

Blender-Empire I №9

Тема номера «Пятый элемент». Этим элементом выражается журнал. Он должен был объединить в себе все части жизни и стать во главе их. Элементы жизни - это вода, земля, воздух и огонь.


Вода

Большую часть Земного пространства занимает именно это вещество. Также из курса биологии всем известно, что любая клетка состоит на 90% из жидкости. Вода – место, где зародилась жизнь. Начало начал. И почти любой любитель или профессионал в компьютерной графике сталкивает с проблемой создания реалистичной жидкости. Чтобы её создать в мире есть различные программы, которые специально заточены под этот вид работы. Но в программе Blender есть просто великолепный инструмент, которые позволяет имитировать эффект воды.

Земля

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

Воздух

А точнее сказать нас интересует не воздух, а небо. Небо — пространство над Землёй или поверхностью любого другого астрономического объекта. В целом, небом обычно называют панораму, открывающуюся при взгляде с поверхности Земли (или другого астрономического объекта) в направлении космоса. Это третий элемент, о котором вы узнаете на страницах этого номера.

Огонь

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

7


8

Теперь вы поняли, что я в самом начале имел в виду. На страницах журнала вы найдете простые и сложные статьи по созданию этих компонентов жизни. Но не только этими уроками знамениты эти стихии. Если поискать в Интернете, то найдете следующие уроки:

Про воду:

Создание реалистичных водных поверхностей для использования в BGE Моделирование жидкости (2 части) Blender - создание реального моря (Унесенные волной - Gone with the waves)

Про Землю:

Как сделать реалистичную планету в Блендер Моделирование Планеты (Глобуса) в Blender3D Создание живописной сцены Горы и Ландшафты в Blender'е

Про небо:

Создание небес в Blender Создание Облаков в Blender

Про огонь:

Blender-Empire I №9

Реалистичная волюметрика для Blender Создание огня

В заключение введения хочется отметить великолепную работу по переводу книги Bounce Tumble And Splash. Сайт artnotes.ru выложил переводы глав этой книги. Глава 2. Практическое применение частиц Глава 3. Гибкость с помощью мягких тел и ткани Глава 5. Симуляция жидкостей На этом все. Надуюсь, уроки вам понравятся и будут полезны. Удачи и приятного чтения!


Затопление подвала

уроки про воду

Часть 1 – Настройка сцены

Открываем программу и удаляем из сцены куб, который находится по-умолчанию и переходим в вид сверху. Добавим в центр координат плоскость и увеличим ее размер в 5 раз. Перейдите в режим редактирования и подразделите плоскость несколько раз: W; выдерите Subdivide Multi; введите значение 15; кликните OK. Должно получиться следующее:

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

9


10

Выдавите эти поверхности на 2,5 BU: E; кликните Region; 2.5.

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

Выдавите эти полигоны на 0,2: E; кликните Region; 0.2.

Blender-Empire I №9

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

Полигоны, которые выделены красным цветом не выдавливаются. Снять выделение с полигонов, E, Region, 0.2


уроки про воду

Сформированы три первые ступеньки, дальше идет пролет (3х3 полигона). С него снимаем выделение и продолжаем предыдущие действия с остальными ступеньками. В конце должно получиться следующее:

На этом все. Наш «подвал» готов. Следующим действием будет установка освещения. Перейдите в режим объекта и выделите лампу, и поместите её следующее положение:

11


12

Для большего реализма и простоты мы увеличим нашу постройку (подвал) в два раза. Object Mode, S, 2 . Готовую модель «подвала» можно скачать: http://www.darkscarab.com/tutorials/Downloads/SubwayTutorial.blend Часть 2 – Симуляция наводнения

Эта часть урока посвящена, созданию эффекта наполнения «подвала». Также здесь будет показано, как настраивать свойства симуляции жидкости, и сопутствующих ей атрибутов.

Blender-Empire I №9

Перейдите в вид сверху и добавьте куб и назовите его «domain». Этот куб будет играть роли ограждения для нашей воды. Увеличьте размеры куба в 10 раз. Теперь, перейдите в любой вид, кроме вида сверху, и вы заметите, что нижняя грань куба находится намного ниже «подвала». Это очень плохо, это замедлит просчет движении жидкости. Чтобы избавиться от этого выделите нижнюю грань куба и переместите её на 10BU вверх. Должно получиться так:

Теперь надо добавить объект, который будет водой. Вернитесь обратно в вид сверху и добавьте цилиндр, назовите его «inflow». Настройки оставьте по-умолчанию. Поместите его над лестницей.


NUM7; Add --> Mesh --> Cylinder; Click OK. Поместите:

уроки про воду

G; Y-> 7; G; X-> 8; G; Z-> 8.

Далее надо добавить объект, который не будет подвержен действию водяного потока. В виде сверху, добавьте куб и поместите его под камеру. NUB7; Add --> Mesh --> Cube; Click OK. G; Y; -7; G; X; 7 G; Z; 1

Перейдите в режим объекта. Выделите объект domain (куб вокруг подвала). Перейдите в панель Physics, нажмите на кнопку Enable и на кнопку Domain. Назначьте следующие свойства Выберите Cylinder; Click Enable; Click Inflow Выберите малый куб; Click Enable; Click Outflow Выберите «подвал»; Click Enable; Click Obstacle

13


14

В заключении настроек выделите еще раз объект Inflow и измените скорость (velocity) по ось Z на «-0,5».

Выделите объект domain и нажмите кнопку Bake. Теперь у вас может быть две проблемы: 1. вода очень вязкая 2. вода переливается через верх

Blender-Empire I №9

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

Чтобы избавиться от вязкости жидкости надо изменить конечное время симуляции. Я предполагаю, что симуляция идет 250 кадров с частотой 25 кадров в секунду. Т.е. это настройки по-умолчанию. Это означает что симуляция идет в течение 10 секунд. Если вы нажмете на кнопку Std в настройках domain, вы увидите время симуляции: End time. В данный момент значение равно 0,3. Это означает что в течении 250 кадров, 10 секунд жидкость двигается 0,3 секунды. Я предположил, что имеет смысл изменить это значение на 10, но я ошибся. Так как это увеличит время просчета физики движения воды. Я предлагаю вам протестировать эту функцию на вашем компьютере. Но для себя я выставил значение равное 5.


уроки про воду

Просчитайте еще раз физику и посмотрите что произойдет.

Если посмотрите на воду она имеет неровности, что от них избавиться сгладьте объект domain ( нажмите на кнопку Set Smooth в панели 'Editing'). И получится примерно следующее:

Чтобы еще более натурально смотрелась вода можно увеличить разрешение воды (сделать больше 50). Но это сыграет на времени просчета. Хотя все зависит только от возможности вашего компьютера. В заключении вы можете добавить цвета, и раскрасить стены, что смотрелось все более натурально. На это все. Автор урока: Justin Brown

15


16

Канистра с водой

1. Создайте куб, с размерами x=5, y=3, z=4. Назовите его „Domain“

Blender-Empire I №9

2. Добавьте icosphere с параметрами: Subdivision=2, Radius=0,2. Отмасштабируйте её по оси X на 0,3. Поместите её в следующие координаты: x=-2, y=0.5, z=3.


уроки про воду

3. Скопируйте первый куб (Shift-D), и передвиньте его боковые стороны и нижнюю сторону внутрь на 0.04BU. Высота второго куба должна быть примерно 1BU. Назовите его „Fluid“, этот объект будет водой, которая уже находится в контейнере (watertank).

4. Настройка параметров. Выделите объект „Fluid“, перейдите в панель Physics и нажмите на кнопке Fluid. Настройте, как показано на следующем рисунке:

17


18

5. Выберите объект „Domain“, также нажмите на кнопке Fluid. Выберите для этого объекта значение Domain. В закладке Std, измените значение параметра End на 12.

Blender-Empire I №9

В закладке Adv, измените параметр Gravity по Z на -20, и Realworld-size на 1.

6. Выберите объект Inflow, нажмите кнопку Fluid. Назначьте этому объекту свойство Inflow. На этом настройки в этой панели заканчиваются. Потому что мы будем использовать для этого кривые IPO.


уроки про воду

7. IPO кривые для объекта Inflow. Откройте редактор IPO и измените тип IPO на „Fluidsim“. Кривая Active-IPO активирует выливание воды с 31 кадра, и заканчивается в 151 кадре. Добавьте линейную кривую со следующими параметрами для точек: P1(x=30, y=0); P2(x=31, y=1); P3(x=150, y=1); P4(x=151, y=0). Первые тридцать кадров используются для падения объекта fluid до поверхности воды. Эту часть не рендерим, для того чтобы успокоить волнение волн. Может, есть и более лучший способ сделать этого, но я сделал это так. Вторая кривая IPO управляет скоростью движения потока в направлении оси x. Она начинается с 31 кадра и растет для значения равное - 5 в 51 кадре. Далее, из 130 кадра в 150 и падает обратно до нуля. Это дает эффект более сглаженного исчезновения воды.

19


20

уроки про воду

Вот и все. Выберите объект Domain, перейдите в панель Physics и нажмите на кнопке BAKE. Для получения реалистичного результата вы можете изменить resolution (разрешение) до 200 или даже больше, но это сделает вычисления значительно больше. Поместите объекты „Inflow“ и „Fluid“ в другой слой, и сгладьте объект „domain“ (кнопка smooth). Что примерно должно получиться в 43 кадре:

Отрендерьте с 31 кадра по 250.

Blender-Empire I №9

Вы можете посмотреть анимационное видео: http://blender.jalbum.net/Visualisierung http://au.youtube.com/user/KeithBlender Что получилось у автора урока:

По всем вопросам можете обращаться к автору статьи: keith73@gmx.net


уроки про землю

Моделирование ландшафта

21


Blender-Empire I â„–9

22


уроки про землю

23


Blender-Empire I â„–9

24


уроки про землю

25


Blender-Empire I â„–9

26


уроки про землю

27


Blender-Empire I â„–9

28


уроки про землю

29


Blender-Empire I â„–9

30


уроки про землю

31


Blender-Empire I â„–9

32


уроки про землю

33


Blender-Empire I â„–9

34


уроки про землю

35


Blender-Empire I â„–9

36


уроки про землю

Создание модели Земли

Часть 1

Это обучающее руководство показывает, как с помощью Blender 2.48a можно создать модель и выполнить рендеринг очень реалистичной модели Земли. Мы сделаем две полнофункциональные версии Земли — фотографическую модель и модель «Голубой Мрамор». «Голубой мрамор» (The Blue Marble) — известная фотография Земли, сделанная 7 декабря 1972 года экипажем корабля «Аполлон-13» с расстояния 29 000 км. «Голубой Мрамор» была первой чёткой фотографией освещённой стороны Земли.

37


Blender-Empire I №9

38

В процессе выполнения руководства мы научимся делать тени от облаков (с помощью ray-traced), masked specular shading и огни городов. Все текстуры, использованные в этих моделях, являются свободными. Они позаимствованы из проекта НАСА «Видимая Земля» (NASA’s Visible Earth project). Это текстуры действительно большого разрешения. Модели, которые мы создадим, хорошо смотрятся под любым углом и с достаточно близкого расстояния. Однако, с небольшими изменениями, они могут использоваться и для рендеринга с очень близкого расстояния. Важно помнить о том, что существует множество способов изобразить наш маленький шарик. Фотографии, сделанные из космоса, выглядят иначе, чем сгенерированные на компьютере в НАСА изображения, а последние, в свою очередь, отличаются от изображений, созданных 3D-художниками. Я познакомлю вас с двумя своими любимыми моделями. Но не ограничивайте себя этим руководством. Если вам что-то не нравится, смело экспериментируйте! Фактически, это руководство объединяет в себе идеи, которые я почерпнул из нескольких найденных мною руководств по созданию модели Земли. Я хочу поблагодарить Enrico Valenza, Kevin Whitfield и Soenke Maeter за их работу по созданию руководств, которые повлияли на этот проект. Итак, начнём?

Если коротко, то мы сделаем модель Земли следующим образом. Мы создадим планету, используя icosphere'ы, разделённые на участки дня и ночи. Каждый участок будет составляться из пяти сфер — земной поверхности, сферы облаков, атмосферы, сферы облаков и сферы уменьшения атмосферы (atmosphere fall-off). Кроме того, ночной участок будет содержать сферу городских огней и полусферу, действующую как щит (более подробно об этом позднее). Мы скачаем и применим некоторые сферические карты к сферам и используем Node Editor чтобы собрать всё вместе.


Первый шаг — скачать необходимые карты.

Мы будем использовать шесть текстур для нашей первой модели. Две из них я отредактировал с помощью PhotoShop, а у двух уменьшил масштаб. Мы скачаем все готовые текстуры с моего сервера. Перед тем, как мы продолжим, я хочу сказать, что если у вас возникнут какие-либо вопросы, вы можете связаться со мной, выслав письмо по адресу, указанному на моём сайте http://www.chamberlinproductions.or g/contact.html

Итак, продолжим. Я не буду давать прямые ссылки на карты на сервере НАСА, поскольку они достаточно часто меняются. Пять карт, которые были использованы в этом проекте, были использованы из коллекции, расположенной по адресу: http://visibleearth.nasa.gov/view_set. php?categoryID=2363

Карта 1. Дневная карта земли Скачать можно отсюда:

http://web.olp.net/wildernesslodge/land_o cean_ice_ 8192%20(modified).tif

Дневная карта земли — это модифицированная версия одной

уроки про землю

39


40

из карт земли, найденной в разделе «Blue Marble: Land Surface, Ocean Color and Sea Ice» на странице 1 в коллекции visibleearth.nasa.gov. Я использовал замену цвета («replace color») в PhotoShop для редактирования цветов земли и воды.

Карта 2. Топографическая карта Эта карта найдена на странице 3 на сайте visibleearth.nasa.gov. Я использовал карту «5400x2700 JPEG (645KB)».

Карта 3. Карта облаков Далее нам понадобится карта облаков, которую можно найти на странице 1 на сайте visibleearth.nasa.gov. Я использовал карту «8192x4096 TIFF (34.2MB)». Карта 4. Ночная карта Скачать можно здесь:

http://web.olp.net/wildernesslodge/land_ocean_ice_8192%20(modified%202).tif

Это также версия карты земли, исправленная в PhotoShop. НАСА предлагает ночную карту, похожую на эту, но на ней присутствуют ночные огни городов.

Карта 5. Карта огней городов Скачать можно здесь:

http://web.olp.net/wildernesslodge/nightearth%208192.jpg

Blender-Empire I №9

Карта огней городов — это уменьшенная копия карты «nightearth.gif», найденной на странице 1 в закладке «Earth's City Lights» на сайте visibleearth.nasa.gov. Карта 6. Карта маски (mask map) Наконец, скачайте карту маски здесь:

http://web.olp.net/wildernesslodge/world.watermask%2081 92.png

Карта маски — это уменьшенная копия карты «world.waterma sk.21600x10800.png», найденной в каталоге http://mirrors.arsc.edu/nasa/landmask.

В конце статьи я привожу информацию об авторских правах на


эти карты и условия их использования. Все карты есть на этой странице:

уроки про землю

http://www.chamberlinproductions.org/earth.html

Теперь, когда у нас есть карты, давайте создадим каталог, в котором будем хранить их. Создайте новый blender-файл и поместите его в тот же каталог, где располагаются карты (это упростит процесс связывания с картами). Теперь перейдём к следующему этапу — создание модели планеты.

Откройте наш blender-проект и удалите всё, кроме камеры. Нажмите клавишу [n] и в появившемся окне Transform Properties установите для камеры следующие значения: LocX: 0 LocY: -325 LocZ: 21.1 RotX: 86.25 RotY: 5.6 RotZ: 0 Переместите камеру на слой 11 (нажмите Alt+1 и Enter). На этом слое будут располагаться различные камеры. Включите слои с 1 по 5 и 11. Установите у камеры значение Clipping End в 5000 (значение Clipping Start оставьте по умолчанию). Добавьте объект Empty на слой 1, установите его размер в 10 и поместите его в начало координат. Этот объект мы будем использовать для управления планетой. Теперь создадим планету. На слое 1 добавьте объект icosphere с уровнем subdivision 5 и радиусом 100. Убедитесь, что сфера расположена в начале координат. Задайте ей свойство smooth и уровень subsurf 2. Это будет сфера дневной поверхности (day land surface). Сделайте копию icosphere и установите значения масштаба

41


Blender-Empire I №9

42

по осям scale x, y и z в 1.002. Переместите сферу на слой 2. Это будет слой дневных облаков (day cloud). Находясь на этом же слое, сделайте копию сферы облаков и переместите сферу на слой 3 — это будет слой дневной атмосферы. Сделайте копию этой сферы, установите у новой сферы значение масштаба по осям scale x, y и z в 1.007 и переместите сферу на слой 4 — это будет сфера дневного уменьшения атмосферы (day atmosphere falloff). Наконец, вернитесь назад и снова сделайте копию сферы облаков. Переместите новую сферу на слой 5. Это будет сфера дневных облаков (day cloud shadow-casting sphere). Разумно будет назначить имена всем сферам, чтобы в последствии не путать их между собой. Сделайте четыре внешних сферы потомками от сферы дневной поверхности (day land surface), а её, в свою очередь, сделайте потомком от объекта Empty. Задайте для объекта Empty значение RotX в 23.44 (значение наклона земной оси). Теперь мы можем поворачивать Землю вокруг локальной оси z (поворачивая сферу земной поверхности (day land surface)) для моделирования вращения планеты, или вокруг глобальной оси z (анимируя объект empty) для моделирования движения по орбите. Установите значение RotZ сферы дневной поверхности (day land surface) в -80. Теперь модель Земли и камера находятся в положении, подходящем для выполнения рендеринга, когда для этого придёт время.

Добавим несколько ламп для освещения планеты. Добавьте лампу типа sun на слои 1 и 5 (да, один объект может располагаться одновременно на нескольких слоях!). Используйте следующие настройки: RotX: 90 RotY: 0 RotZ: -40 Установите у лампы свойство energy в 1.3, а distance в 5000. Включите кнопку Layer у лампы. Убедитесь что включено Ray Shadows.


уроки про землю

Сделайте копию лампы (используйте Alt+D для того, чтобы создать связанную копию) и переместите новую лампу на слои 2 и 4. Создайте ещё одну копию лампы (Alt+D) и переместите новую лампу на слой 3. Эти три лампы будут моделировать солнце (позднее я объясню, почему нам нужно три раздельных лампы для этого). Вы можете задать для двух ламп отслеживание свойств поворота третьей лампы для того, чтобы избежать путаницы.

Теперь мы полностью настроили дневную часть нашей модели, которая содержится на слоях 1-5. Теперь включите слои 6-10 и 16. Эти слои будут содержать ночную часть нашей модели Земли. Сделайте копию сферы дневных облаков (day cloud) и переместите новую сферу на слой 7. Это будет сферой ночных облаков (night cloud). Сделайте копию сферы дневной атмосферы (day atmosphere) и переместите новую сферу на слой 8. Это будет ночная атмос-

43


Blender-Empire I №9

44

фера (night atmosphere). Аналогично, сделайте копию сферы дневного уменьшения атмосферы (day falloff sphere) и поместите её на слой 9. Сделайте копию сферы дневной тени (day shadow sphere) и поместите её на слой 10. Вы наверняка заметили, что мы пропустили сферу ночной поверхности (night land surface). Вернитесь к сфере дневных облаков (day cloud) и сделайте её копию. Установите масштаб у сферы в 1.000 и передвиньте её на слой 6. Это будет сферой ночной поверхности (night ground). Мы сделали копию этим странным образом для того, чтобы исходная сфера дневной поверхности осталась родительской по отношению ко всем остальным сферам. Сделайте копию новой сферы ночной поверхности (night ground) и переместите её на слой 16. Это будет сфера городских огней (city lights). Используя две различных сферы для ночной поверхности и городских огней, мы сможем управлять ими раздельно. Давайте добавим лампы для моделирования луны. Добавьте лампу типа sun на слои 6 и 10 со следующими значениями: RotX: 90 RotY: 0 RotZ: 90 Установите у лампы свойство energy в 0.75, а distance — в 5000. Включите у лампы кнопку Layer. Убедитесь, что Ray Shadows включено. Включите кнопку No Specular. Используя Alt+D скопируйте лампу и переместите новую лампу на слои 7 и 9. Наконец, сделайте ещё одну копию и поместите новую лампу на слой 8. Эти «лунные» лампы настроены так же, как и «солнечные» лампы, которые мы добавили ранее. Вы можете задать для двух ламп отслеживание свойств поворота третьей лампы для того, чтобы избежать путаницы. Для того, чтобы модель была готова, добавим последний элемент — щит (shield). Он защитит ночную часть нашей модели от влияния дневной части при рендеринге. Добавьте элемент icosphere с уровнем subdivision 5 и radius 100. Установите для


уроки про землю

неё свойство smooth и уровень subsurf 2. Установите масштаб scale x, y и z в 1.05. Наконец, добавьте два ограничения к сфере — одно для копирования положения элемента empty (расположенного на слое 1), а другое — для копирования поворота одной из «солнечных» дневных ламп. Теперь щит будет двигаться вместе с Землёй, указывая на противоположное направление солнечных лучей. Может показаться странным, что в качестве щита мы используем сферу, но вы увидите, как всё это работает позднее, когда мы добавим материалы и текстуры. Переместите щит на слои 6-10 и на слой 16. Неужели всё вышесказанное имеет смысл? Не волнуйтесь, мы почти закончили. Наша модель завершена. Давайте подведём итоги. Итак, что же у нас есть? Слой 1: дневная поверхность (day land surface). Слой 2: дневные облака (day clouds). Слой 3: дневная атмосфера (day atmosphere). Слой 4: уменьшение дневной атмосферы (day falloff). Слой 5: тени дневных облаков (day cloud shadows). Слой 6: ночная поверхность + щит (night land surface + shield). Слой 7: ночные облака + щит (night clouds + shield). Слой 8: ночная атмосфера + щит (night atmosphere + shield). Слой 9: уменьшение ночной атмосферы + щит (night falloff + shield). Слой 10: тени ночных облаков + щит (night cloud shadows + shield). Слой 16: городские огни + щит (city lights + shield). Слой 11: камера (camera).

45


46

Теперь давайте присвоим Земле текстуры.

Blender-Empire I №9

Мы начнём со сферы дневной поверхности (day land surface). Добавьте новый материал и назовите его соответствующим образом. Задайте материалу цвет следующим образом: R 0.122 G 0.145 B 0.200 Задайте зеркальный цвет (specular color) таким образом: R 0.791 G 0.821 B 0.889 В закладке Ramps добавьте colorband следующим образом:

Зачем использовать colorband? Оттеняя границы этой сферы, при финальном рендеринге границы планеты будут выглядеть мягче. Также использование colorband даёт иллюзию того, что цвет атмосферы блекнет. Используйте Minnaert diffuse shader со значением Reflection 0.6 и Dark 0.325 и Blinn specular shader. Значения Blinn specular shader установите следующим образом: Spec: 1 Hard: 50 Refr: 2.7 Включите кнопку «TraShadow» (это важно при расчёте теней от облаков).


уроки про землю

Для земной поверхности (day land surface) нам нужно три текстуры — карта дневной поверхности (day ground map), топографическая карта (topo map) и карта маски (mask map). Добавьте к сфере земной поверхности (land surface) текстуру изображения (image texture). Загрузите карту дневной поверхности (day ground map). Установите filter size в значение 0.1 и включите кнопку Min. Это необходимо сделать для каждой текстуры в нашей модели Земли. Это позволит нам выполнить рендеринг текстур с максимальной детальностью и, в то же время, чёткость изображения будет не чрезмерной. Выключите кнопку Use Alpha (я выяснил, что при использовании alpha channel получаются ненужные контуры на границах земных формирований). В закладке Map Input выберите Spherical mapping. Это позволит корректно отобразить изображение на сферу.

Добавьте вторую текстуру изображения (image texture) к сфере земной поверхности (land surface sphere) и загрузите топографическую карту (topo map). Не забудьте установить значение filter size в 0.1, включите кнопку Min и выключите кнопку Use Alpha. Проделывайте это для каждой текстуры. Естественно, выберите тип Spherical mapping. В закладке Map To выключите кнопку Color и включите кнопку Normal (нажмите на неё дважды, чтобы цвет стал жёлтым). Установите значение Normal в 0.3. Благодаря этой карте горы будут казаться трёхмерными. Значение Normal, возможно, слегка преувеличено, поскольку на самом деле с большого расстояния Земля выглядит достаточно гладкой, но это сделано специально, чтобы была видна небольшая

47


Blender-Empire I №9

48

разница. Добавьте третью текстуру изображения (image texture) к сфере земной поверхности (land surface) и загрузите карту маски (mask map). Я надеюсь мне не нужно повторять, что должен быть использован тип Spherical mapping, значение filter size должно быть уменьшено, а кнопка Min должна быть включена. В закладке Map To выключите кнопку Col и включите кнопку Spec (она должна стать жёлтой). Установите режим Texture Blending Mode в Multiply. Благодаря этой карте отражение от солнца получается только на поверхности воды, а не на земной поверхности (это важно!). Теперь приступим к сфере дневных облаков (day cloud). Добавьте новый материал и задайте свойства цвета следующим образом: R 0.8 G 0.8 B 0.8 Установите specular цвет белым (обычно он задаётся так поумолчанию). Добавьте color band аналогично тому, как мы делали со сферой дневной поверхности (day land surface). Используйте Minnaert diffuse shader со значением Reflection 1 и Dark 0.8 и Cooktorr specular shader. Значения Cooktor specular shader установите следующим образом: Spec: 0 Hard: 1 Установите значение Alpha в 0 и выключите кнопку ShadowBuf. Включать transparency не нужно (позднее мы увидим почему). Добавьте текстуру изображения (image texture) и загрузите карту облаков (cloud map). Снова удостоверьтесь, что кнопка Use Alpha выключена. В закладке Map To включите Normal (она должна стать жёлтой) и Alpha (Color включается по умолчанию). Установите значение Normal в 0.30. Включите кнопку No RGB. Это лично моё предпочтение. Мне нравится, как выглядят облака с включенной No RGB. Установите розовый цвет в белый. Теперь мы готовы заняться дневной атмосферой. Добавьте новый материал к дневной атмосфере и задайте ему


уроки про землю

цвет следующим образом: R 0.551 G 0.702 B 0.838 Установите цвет specular белым. Настройте colorband следующим образом:

Используйте Minnaert diffuse shader со значением Reflection 0.6 и Dark 0.805 и Cooktorr specular shader. Значения Cooktor specular shader установите следующим образом: Spec: 0 Hard: 1 Установите значение Alpha в 0.5 и включите Z Transparency. Выключите кнопку Shadowbuf. Настройте fresnel следующим образом: Fresnel: 0.9 Fac: 2.3

49


Blender-Empire I №9

50

Для этой сферы никакие текстуры нам не нужны. Теперь займёмся сферой уменьшения дневной атмосферы (day atmosphere falloff). Добавьте новый материал к сфере и задайте ему чёрный цвет, а цвет specular установите белым. Мы будем использовать color ramp для этой сферы. Настройки смотрите на рисунке:

Используйте Minnaert diffuse shader со значением Reflection 0.6 и Dark 1 и Cooktorr specular shader. Значения Cooktor specular shader установите следующим образом: Spec: 0 Hard: 1 Выключите кнопки Traceable и Shadowbuf. Для сферы теней дневных облаков (day cloud shadow) используйте материал дневных облаков (day cloud), который мы уже сделали для сферы теней дневных облаков (day cloud shadow). Сделайте для этого материала single-user копию. Включите


уроки про землю

кнопку ShadowBuf и включите Z Transparency. Выключите кнопку Shadow и включите кнопку OnlyShadow. Теперь сфера будет отображать тени облаков, а сама при этом видна не будет. В закладке Map To установите значение Var в 0.7 — теперь тени не будут слишком тёмными. Наконец, выключите кнопку No RGB. К этому моменту текстуры дневной части нашей модели готовы.

Теперь давайте добавим ночные текстуры. Мы начнём со сферы ночной поверхности (night land surface). Для сферы ночной поверхности (night land) используйте материал, который мы сделали для сферы дневной поверхности (day land surface). Сделайте для этого материала single-user копию. Нам необходимо изменить некоторые значения. Во-первых, заменить дневную карту поверхности (day ground map) на ночную карту поверхности (night ground map). Не забудьте сначала сделать single-user копию изображения. Во-вторых, изменить значения настроек материала. Для краткости, я привёл настройки на рисунках, обведя кружочками все настройки, которые необходимо изменить.

51


52

Установите цвет specular следующим образом: R 0.292 G 0.440 B 0.646 Теперь перейдём к сфере ночных облаков (night cloud). Для сферы используйте материал, который мы сделали для сферы дневных облаков (day cloud). Сделайте для этого материала single-user копию. Вот настройки, которые необходимо изменить.

Blender-Empire I №9

Выключите кнопку No GRB для текстуры. Теперь займёмся ночной атмосферой. Примените к сфере материал дневной атмосферы (day atmosphere). Сделайте для этого материала single-user копию. Ниже приведены необходимые изменения:

Теперь уменьшение ночной атмосферы (night atmosphere falloff). Для сферы используйте материал, который мы сделали для уменьшения дневной атмосферы (day fall-off). Сделайте для этого материала single-user копию. Измените настройки как показано ниже.


уроки про землю

Изменения colorband:

Со сферой теней ночных облаков (night cloud shadow) всё просто. Просто примените материал, который мы сделали для теней дневных облаков (day cloud shadow). Никаких изменений вносить не нужно. Теперь пришла очередь сферы городских огней. Для сферы используйте материал, который мы сделали для ночной поверхности (night land surface). Сделайте для этого материала single-user копию. В закладке Texture удалите текстуры bump map и specular map. Сделайте single-user копию для текстуры изображения поверхности (ground image texture) и замените карту ночной поверхности (night ground map) картой городских огней. В закладке Map To включите кнопку No RGB. В закладке Map To установите цвет следующим образом: R: 1.000 G: 0.974 B: 0.695 Это придаст нашим городским огням лёгкий жёлтый оттенок. Внесите следующие изменения в настройки материала:

53


54

Осталось сделать последний материал — материал щита (shield). Добавьте новый материал для сферы щита и установите для него чёрный цвет. Включите Z transparency и установите значение Alpha в 0. Включите кнопку Shadeless, выключите кнопки Traceable и ShadowBuf. Добавьте blend-текстуру (используя линейную последовательность по-умолчанию (default linear progression)) со следующими настройками colorband:

Blender-Empire I №9

Разумеется, вы можете потом изменить настройки colorband по своему усмотрению. Настройте закладку Map Input следующим образом:

В закладке Map To выключите кнопку Col и включите кнопку Alpha. Теперь у нас получился хороший эффект щита, который тускнеет на краях. Поздравляю! Мы закончили с текстурами. Вы можете посмотреть, как выглядит каждая текстура на предварительном просмотре.


уроки про землю

Осталось сделать последнюю вещь. Настроить node setup.

Настройка node будет состоять из двух частей. Сначала мы забудем о ночной части Земли и займёмся рендерингом дневной

55


56

Blender-Empire I №9

части. Начнём с того, что покажем все слои в 3D Viewport. Нажмите клавишу [` или Ё], чтобы показать все слои. Нам нужно разделить нашу сцену на четыре слоя для рендеринга. В закладке Render Layers назовите текущий слой «Day Ground» и настройте слой как показано на рисунке. Замечу, что хотя слой 5 должен быть виден в 3D Viewport, его не нужно включать в слои для рендеринга, поскольку сама по себе сфера теней не видна. Теперь настроим nodes. Я привёл рисунок с настройками.


уроки про землю

Сначала выполняется рендеринг сферы земной поверхности и сферы видимых облаков. RGB curve nodes изменяют цвета и придаёт изображению лёгкое свечение. Sharpen nodes делают землю и облака более резкими. Слой облаков показывается над слоем поверхности. После этого выполняется рендеринг атмосферы. Изображение атмосферы размывается и показывается над поверхностью и облаками. Наконец, выполняется рендеринг уменьшения (fallof) атмосферы. Изображение размывается и показывается над всем остальным. Из ночной части ничего не участвует в рендеринге, поскольку мы не включили ночные сферы в слои рендеринга. Необходимо отметить, что для каждой сферы используется свой слой рендеринга. Благодаря этому в процессе рендеринга сферы не влияют друг на друга (у Blender иногда бывают проблемы с рендерингом плотно подогнанных сфер). Использование трёх отдельных ламп для имитации солнца также предохраняет от взаимного влияния. Если бы мы использовали только одну лампу для всех слоёв, у Blender были бы проблемы с аккуратным рендерингом всех сфер, поскольку некоторые из них имеют одинаковый размер и расположены в одном и том же месте. Благодаря использованию раздельных ламп, Blender может вычислять освещение для каждого набора сфер отдельно, и у нас не получатся отвратительные чёрные треугольники в атмосфере и в облаках. Разместив слой облаков над слоем поверхности без использования Z transparency, мы не получим никаких случайных лучей, попадающих на сферу облаков. В панели Scene включите кнопку Do Composite и установите Sampling Filter в значение Mitch (для более чёткого рендеринга). Установите цвет World чёрным. В закладке Output установите значение Dither в 1 (или около того). Мы готовы выполнить рендеринг! У вас должно получиться изображение северной Америки, как показано на рисунке.

57


Blender-Empire I №9

58

Совет: Рендеринг картинки размером 2560x1920 под этим углом выглядит очень хорошо! Если ваша картинка не похожа на приведённое изображение, смотрите раздел в конце части 1. Вы можете выполнить рендеринг восточного полушария, установив значение RotZ у сферы дневной поверхности (day ground) в +100. При этом также получается хороший крупный план изображения Земли. Добавьте вторую камеру со следующими значениями: LocX: 77 LocY: -155 LocZ: 38 RotX: 90 RotY: 18 RotZ: 38 Установите значение RotZ у сферы дневной поверхности (day


уроки про землю

ground) в 180 и с этой камеры вы получите крупный план изображения Европы. Теперь добавим ночную часть. В закладке Render Layers добавьте пять новых слоёв и установите их настройки как показано на рисунках.

Теперь добавьте следующие nodes в Node Editor (минимизированные nodes — это nodes для дневной части, которые мы добавили ранее).

59


60

Blender-Empire I №9

Ночные nodes работают аналогично дневным. Основное отличие в том, что добавляется отдельный слой для городских огней. Для того, чтобы посмотреть как ночная и дневная части взаимодействуют между собой, вернитесь в первую камеру, установите значение RotZ сферы дневной поверхности (day ground) в -80, а значение RotZ солнечных ламп в -90. Выполните рендеринг и у вас должно получиться следующее изображение.


уроки про землю

Теперь, если вы добиваетесь во всём совершенства (как я), для увеличения реализма, нам необходимо добавить одну деталь в нашу модель. Сейчас у наших городских огней нет эффекта атмосферы. Огни на краю планеты такие же яркие, как и в середине планеты. На самом деле, из-за атмосферы, чем ближе к краю планеты, тем огни должны становиться тусклее. Давайте добавим этот эффект. Сначала сделаем копию сферы ночной атмосферы (night atmosphere) и передвинем новую сферу на слой 17 (отмечу, что нам не нужно включать сферу ночного щита (night shield) на слой 17). Сделайте для материала single-user копию и измените цвет на чёрный. В закладке Render Layers добавьте ещё один слой, как показано на рисунке.

В Node Editor добавьте два nodes, обведённых кружком на следующем рисунке.

61


Blender-Empire I №9

62

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

- для того, чтобы выполнить рендеринг только дневной части, выключите ночные слои в закладке Render Layers; - для того, чтобы выполнить рендеринг только ночной части, выключите дневные слои в закладке Render Layers и выключите текстуру ночного щита (night shield). Совет: когда я выполняю рендеринг только ночной части, я выключаю кнопку No Specular у лунных ламп; - рендеринг ночной части можно выполнять как с городскими огнями, так и без них. Для того, чтобы отключить городские огни, выключите слои городских огней в закладке Render Layers; - для того, чтобы выполнить рендеринг модели без теней от облаков (cloud shadows), просто спрячьте слои 5 и/или 10 в 3D Viewport. Обычно я предпочитаю выполнять рендеринг ночной части без теней от облаков.

У данной модели есть два недостатка. Первый — необходимо изменить значение blur nodes, если выполнять рендеринг Земли с очень далёкого расстояния. Второй — чтобы выполнить рен-


уроки про землю

деринг Земли на фоне, отличном от чёрного, необходимо использовать Video Sequence Editor для alpha-наложения сцены Земли на сцену фона. При этом необходимо убедиться, что в закладке Render вместо кнопки Sky включена кнопка Premul. Если этого не сделать, при выполнении рендеринга Земли на фоне звёзд (или любом другом фоне), на результирующем изображении получится нежелательный эффект прозрачности. Я заметил, что при рендеринге анимации, при приближении или удалении камеры, на модели иногда получается небольшая рябь. Насколько я знаю, это проблема Blender, а не самой модели. Совет: чем больше разрешение анимации, тем меньше виден эффект ряби.

Если рендеринг вашей модели выполняется некорректно, и вы не можете понять в чём причина, что вы можете сделать? 1. Убедитесь, что точно следовали этому руководству. Малейшая ошибка в слоях рендеринга или положении слоёв, сфер и ламп может всё испортить. 2. Убедитесь, что вы не добавили никаких своих деталей. Добавляйте что-нибудь только если полностью уверены в том, что вы делаете. 3. Если вы всё ещё не можете обнаружить в чём проблема, попробуйте выполнить рендеринг каждого слоя отдельно. Так вы сможете увидеть какой слой является источником проблемы. Попробуйте также выполнить рендеринг различных сочетаний слоёв. Иногда рендеринг одного слоя может проходить нормально, но в сочетании с другим слоем, рендеринг может выполняться некорректно. 4. Вы можете также скачать официальный .blend-файл с моего сайта (ссылка приведена в конце руководства). Возможно, это поможет выяснить, где же вы ошиблись. Мой .blend-файл точно соответствует этому руководству. 5. Наконец, вы можете написать мне письмо (электронный адрес приведён ранее в этом руководстве). Я попытаюсь помочь.

63


64

Часть 2. «Голубой мрамор» (the Blue Marble)

Мы сделали самую сложную часть проекта Земли. Теперь мы будем просто модифицировать, что уже сделали. Для нашей модели «Голубого Мрамора» мы увеличим стандартный размер карты до 21600x10800 пикселов (это позволит выполнить некоторые прекрасные варианты ренедринга). Карта Земной поверхности. Нам нужно скачать новую карту земной поверхности, расположенной в той же коллекции Blue Marble, которую мы посещали ранее:

Blender-Empire I №9

http://visibleearth.nasa.gov/view_set.php?categoryID=2363

Я использовал одну из карт «Blue Marble Next Generation w/ Topography». НАСА предлагает одну из 12 карт, по одной на каждый месяц года. Я использовал карту Июля, найденную на странице 3 коллекции visibleearth.nasa.gov. Вам нужно зайти в «Details and More Imagery» чтобы найти карту «world.topo.200407.3x21600x10800.jpg», которую я использовал.


уроки про землю

На странице «Details and More Imagery» вы можете найти карты размером 21600x21600, помеченные A1-D2. Если вы соберёте все восемь этих карт вместе, вы получите одну огромную карту Земли. Но мы не будем использовать этот подход. Топографическая карта. Скачайте топографическую карту 21600x10800 с той же самой страницы, с которой мы скачивали уменьшенную версию нашей фотографической модели. Карта земной поверхности. Скачайте новую ночную карту поверхности здесь:

http://web.olp.net/wildernesslodge/land_shallow_topo_21600%20(modified).jpg

Большая карта ночной поверхности — это модифицированная версия одной из карт поверхности проекта «Visible Earth», находящейся в закладке «Blue Marble: Land Surface, Shallow Water, and Shaded Topography» на странице 1 в коллекции visibleearth.nasa.gov. Для редактирования цветов я снова воспользовался PhotoShop.

Карта городских огней. Скачайте большую карту городских огней отсюда:

http://web.olp.net/wildernesslodge/nightearth%2021600.jpg

Эта карта — другая уменьшенная копия карты «nightearth.gif», находящейся в закладке «Earth’s City Lights» на странице 1 в коллекции visibleearth.nasa.gov.

Карта отражений (specular). Теперь, скачайте карту «world.watermask.21600x10800.png», расположенную в каталоге http://mirrors.arsc.edu/nasa/landmask/

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

65


66

Откройте .blend-файл фотографической модели и сохраните проект под другим именем. Загрузите новые карты, которые мы только что скачали. Если ваш компьютер сразу смог загрузить все карты высокого разрешения, примите мои поздравления. Мне пришлось уменьшать некоторые из них. Установите энергию ламп дневного солнца в 1.5. Теперь отредактируем материалы.

Сделайте следующие изменения (зеркальный цвет остаётся тем же самым):

Сделайте следующие изменения в настройках сферы дневных облаков (выключите кнопку No RGB для текстуры).

Blender-Empire I №9

Сделайте следующие изменения в настройках атмосферы:


уроки про землю

Сделайте следующие изменения в настройках colorband:

Сделайте следующие изменения в настройках сферы уменьшения атмосферы (falloff):

Не нужно вносить изменения в материал сферы дневных облаков и во все ночные материалы.

Сделаем небольшие изменения в дневные nodes. Изменения обведены кружочками на рисунке.

Наша модель «голубой мрамор» готова к рендерингу. Модель выглядит хорошо даже при очень большом приближении, за исключением карты облаков. Чуть позднее я расскажу, каким об-

67


Blender-Empire I №9

68

разом можно это обойти (метод работает на статичных изображениях). Сначала добавим новую камеру для выполнения рендеринга с очень близкого расстояния. Используйте следующие настройки: LocX: 50 LocY: -109 LocZ: 40 RotX: 90 RotY: -60 RotZ: 62 Выберите дневную сферу. В закладке Map Image (в панели Texture Buttons) установите значения Xrepeat и Yrepeat текстуры облаков в 3. Теперь наша текстура повторяется несколько раз при наложении на поверхность сферы облаков. Это увеличивает разрешение слоя облаков. Однако, если мы сейчас выполним рендерниг, мы увидим шов в слое облаков, который выглядит ужасно неправдоподобно. Поэтому в закладке Map Input установите значение offset Y в 0.35 (значение полностью зависит от положения вашей камеры; значение 0.35 прекрасно подходит для нашей новой камеры). Также необходимо изменить смещение offset Y для текстуры облаков для сферы теней, для соответствия дневной сфере. Разумеется, если вы выполняете рендеринг ночной части, вам также нужно сделать это и для


уроки про землю

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

Есть другой способ выполнения рендеринга облаков с близкого расстояния. Карта облаков с разрешением 43200x21600 (состоящая из двух частей) находится в этом каталоге: http://mirrors.arsc.edu/nasa/Blue_Marble_2002/

К сожалению, половинки этой карты не подходят друг к другу. Также в этой карте отсутствуют данные об облаках в районах полюсов. Однако, вы можете успешно использовать эту карту, если установите смещение текстуры таким образом, чтобы из камеры не был виден шов между двумя частями карты. Вот и всё! Построение трёхмерной модели планеты, возможно, чуть более сложная задача, чем вы думали, не так ли? Теперь вы можете поиграть с настройками, цветами, значениями alpha, nodes и прочим.

Вот ссылка на мою страницу Blender Earth, где расположены ссылки на карты. Кроме того там вы сможете скачать все .blendфайлы и примеры рендеринга, использованные в этом руководстве: http://www.chamberlinproductions.org/earth.html

Напоследок, вот данные о картах, которые были использованы: Условия использования изображений НАСА — при любом не частном использовании, условия НАСА следующие: 1. Изображения свободны от лицензионных перечислений; 2. Требование НАСА — обязательная ссылка на то, что НАСА является владельцем изображений. Дополнение от проекта «Видимая Земля» (Visible Earth) — помимо требований, аналогичных требованиям НАСА, команда

69


70

уроки про землю

Visible Earth просит, но не требует: 1. Указывать, что изображения были найдены на сайте проекта Visible Earth; 2. Указывать URL или на Visible Earth (http://visibleearth.nasa.gov/) или на страницу, на которой располагается ссылка на используемое изображение.

Я предполагаю, что карта маски (mask map) распространяется на тех же условиях, что и другие карты (не смотря на то, что она расположена в другом месте). Если вы будете использовать гигантскую карту облаков, которую я упомянул выше, проверьте файл readme в том же каталоге. В конце файла приведена дополнительная информация об условиях использования этих изображений. Также не забудьте упомянуть про мою работу при редактировании фотореалистичных дневных и ночных карт. Спасибо! Я надеюсь, это руководство будет полезно. У меня ушло много часов работы на создание этих проектов и этого руководства, поэтому я надеюсь, вы сможете получить с его помощью хорошие результаты!

Blender-Empire I №9

Уильям Чэмберлин (William Chamberlin) Перевод: Вадим Балашов


Создание звёздного мира

Blender может использоваться для создания звёздного мира. Но когда дело доходит до анимации, результат получается неудовлетворительным. Даже в простой анимации звёзды выглядят неестественно, поскольку они перемещаются мимо камеры с разными скоростями. Это обучающее руководство позволит любому, кто знает основы Blender, быстро и легко создать реалистичное звёздное небо. Мы будем использовать подход, схожий со «звёздным куполом» («sky dome»). Когда мы закончим, камера у нас будет размещаться в центре сферы, на которой будут располагаться звёзды. Звёзды будут видны независимо от того, в каком направлении мы повернули камеру. Кроме того, при перемещении камеры все звёзды будут двигаться с одинаковой скоростью. Мы сможем наложить («alpha over») нашу анимацию звёзд практически на любую космическую сцену. Для этого руководства я использовал Blender 2.48a, но, возможно, оно подойдёт и для более ранних версий.

71


Blender-Empire I №9

72

Мы начнём с создания предварительной карты для небесного купола. Запустите Blender и удалите куб, создаваемый в сцене по-умолчанию. Измените цвет World на чёрный и включите кнопку Stars. Используйте следующие настройки: Star Distance: 2 Minimum Distance: 40 Size: 0.06 Я оставил «Colnoise» в 0, но если вы хотите, чтобы звёздное небо было более цветным, слегка измените его.

Теперь перейдите в Node editor и добавьте фильтр Soften со значением 1. Не забудьте включить кнопку Do Composite в панели Scene. Установите размер изображения для рендеринга 2500x1200 точек. Выполните рендеринг. Сохраните полученную карту неба в каталог проекта. Откройте новый проект в Bledner'е. Удалите всё, кроме камеры. Поместите камеру в начало координат. Нажмите клавишу «n» и в окне Transform Properties установите значения Rot следующим образом: RotX: 90 RotY: 0 RotZ: 0 Теперь в центре добавьте объект icosphere радиусом 1 и с уровнем разбиения subdivision 4. В окне Transform Properties установите значения размеров по осям (scale X, Y, Z) в 85. Задайте сфере новый материал и измените цвет на белый. Выключите


уроки про небо

кнопки Traceable, Shadowbuf и Shadow. Установите Reflectivity в 0. Установите Specularity в 0, а значение Hard в 1. Установите значение Emit в 1.2. Добавьте текстуру и загрузите карту неба, созданную ранее. В закладке Map Image выключите кнопку Use Alpha. Измените в закладке Map Input тип на Spherical. В этой же закладке измените размер по осям Size X, Y, Z на 7. Заметьте, полностью выполнять процедуру сферического назначения (spherical mapping) мы не будем, но метод, который мы используем, даёт прекрасные результаты. Добавьте ещё одну текстуру. Выберите тип текстуры Noise. В закладке Colors установите яркость (Bright) в значение 0, а контраст (Contrast) — в 1.23. Добавьте ещё одну текстуру Noise. На этот раз используйте для уровня яркости (Brightness) значение 0.2, а для контраста — значение 1.23. Добавьте третью текстуру Noise. Значения Brightness и Contrast оставьте по умолчанию. В закладке Map Input установите размер по осям size X, Y, Z в 4. В закладке Map To установите значение Col в 0.5. В этой же закладке установите для всех трёх текстур Noise белый цвет. Добавьте ещё текстуру и снова загрузите звёздное небо. На этот раз в закладке Map Image убедитесь, что включены кнопки Use Alpha и Calc Alpha. В закладке Map Input измените тип наложения на Spherical и установите значения размера по осям Size X, Y, Z в 12. Теперь в Node Editor настройте всё так, как показано на рисунке.

73


74

Установите цвет World в чёрный, включите в панели Scene кнопку Do Composite и вы готовы выполнить рендеринг! Для этой сцены можно выключить расчёт теней Shadow Calculation, Subsurface Scattering, Enviroment Map Rendering и Ray Tracing, поскольку они не обязательны. У вас получится прекрасное звёздное небо. Вы можете легко изменить яркость, настроив значение Emit у звёздной сферы. Изменяя настройки текстур и внося изменения в Node Editor, вы можете изменять число звёзд или получить желаемый эффект.

Blender-Empire I №9

Теперь я расскажу как я использую этот звёздный мир в анимации. После того, как я создал один кадр, я выполнил импорт камеры в звёздную сцену. Затем я добавляю ограничение Copy Location к звёздной сфере и указываю на камеру (target the camera). Убедившись, что начальное и конечное значения clipping камеры будет работать со звёздной сферой, выполняем рендеринг анимации. Теперь мы получили анимацию звёзд с вращением, который идеально соответствует звёздной сцене. Затем я выполняю рендеринг кадра, используя звёздную анимацию в качестве фона (с помощью Video Sequence Editor). Отмечу, что когда дело доходит до космических сцен, самое главное — вращение звёзд. В реальности, в не зависимости от того, с какой скоростью вы летите на звездолёте, вы не заметите приближения звёзд.

Теперь давайте добавим эффект туманности. Я разработал этот подход для статичных изображений, но, возможно, он сработает и для анимации. Откройте звёздный файл, который мы только что завершили, и сохраните проект под другим именем. Удалите все текстуры для сферы. Задайте материалу значение свойства Emit 2 и Alpha 0.6. Включите Z Transparency и установите для сферы чёрный цвет. Добавьте текстуру Distorted noise и измените Noise Basis на Original Perlin. Добавьте текстуре color ramp в соответствии с рисунком.


уроки про небо

В закладке Map To выключите кнопку Col и включите кнопку Emit (она должна быть нажатой, но не жёлтой). Установите режим смешения текстур Texture Blending в Add и установите значение Var в 0.5. Добавьте для сферы текстуру Marble со значениями: Noise Size: 0.3 Noise Depth: 6 Turbulence: 8.2 Добавьте colorband со значениями, показанными на рисунке.

В закладке Map To включите Alpha (она должна быть нажатой, но не жёлтой) и установите значение Var в 0.5. Добавьте последнюю текстуру к сфере. На этот раз используйте текстуру Blend. В закладке Blend включите кнопку Sphere. В закладке Map Input убедитесь, что вместо кнопки Orco нажата кнопка Win. В закладке Map To включите кнопки Col и Alpha (она должна быть нажатой, но не жёлтой). Измените режим Texture Blending на Multiply. Единственная цель этой текстуры — не позволить нашей туманности покрыть весь космический фон. Изменяя свойства этой текстуры, мы можем изменять форму/размер/расположение эффекта туманности. Сделайте копию сферы туманности и установите значение scale X, Y, Z новой сферы в 80. Сделайте для материала «single-user» копию. Для первого канала текстуры сделайте single-user копию текстуры distorted noise и измените Noise Basis на Blender Original. Сделайте single-user копию второй текстуры и измените тип

75


Blender-Empire I №9

76

текстуры на Clouds. Измените Noise Basis на Original Perlin, установите значение Noise Size в 0.2 и Noise Depth в 6. Используйте следующие настройки colorband.

В закладке Map To установите значение Var в 0.75. Третью текстуру (blend) менять не нужно, поскольку нам нужен сильный (consistent) эффект. Нам осталось сделать последнюю вещь для придания реализма нашему изображению. Добавьте UV sphere с 32 кольцами и сегментами и радиусом 1. Поместите сферу в начало координат. Добавьте новый материал и выключите кнопки Tracable и Shadowbuf. Назначьте сфере белый цвет и включите кнопку Halo. Установите размер Halo в 0.1, а значение Hard в 127. Задайте для сферы новую систему частиц (particle system) со значением Amount и Life 500. Установите начальный кадр в 1, а конечный кадр в 100. В поле Emit From установите Random Vertices. В закладке Physics установите Random velocity в 40 и Brownian motion в 50. Перейдите в режим редактирования (Edit mode) и hash вершины сферы. Установите Clipping Start у камеры в 40. Теперь, в зависимости от кадра, для которого выполняется рендеринг, у нас есть несколько звёзд на заднем плане для придания изображению глубины. В редакторе Node Editor установите alpha-наложение текущей сцены на простое изображение звёзд, которое мы создали ранее.


уроки про небо

Мы готовы выполнить рендеринг! Данным методом можно создать неограниченное количество звёзд и туманностей. Чем больше сфер туманностей вы поместите друг в друга, тем большей глубиной и реализмом будет обладать эффект туманности. Вы можете изменять все использованные в примере цветовые схемы, настраивать смешение цветов, типы текстур, значения alpha и так далее. Если вы хотите получить более художественный вид звёзд, включите настройки Rings, Lines и Star, а также установите необходимые настройки halo и alpha. В скором времени вы сможете получать красивые космические пейзажи. Этот принцип создания туманностей был использован в некоторых моих работах. Вы можете увидеть их на моём сайте http://www.chamberlinproductions.org/spacescapes.html. Удачи вам при моделировании звёздного неба. Надеюсь, это руководство было полезным. Уильям Чэмберлин (William Chamberlin) Перевод: Вадим Балашов

77


78

Небесный куб

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

Добавление куба (Cube): Пробела >> Add >> Mesh >> Cube или User Preference menu >> Add >> Mesh >> Cube

Blender-Empire I №9

Пересчет нормалей (Normals) внутрь куба: Меню окна 3D View >> Mesh >> Normals >> Recalculate Inside или Ctrl Shift N >> Recalculate normals inside


уроки про небо

Деление куба пополам (так игрок видит только половину SkyBox) Выделите Cube >> Edit mode >> выбор всех vertices/edges/faces selected. Выбор инструмента Knife: Меню окна 3D View >> Mesh >> Edges >> Knife Subdivide >> Midpoints или нажатие клавиши K >> всплывающее меню и выбор пункта Knife (Midpoints).

Разрезание куба пополам: ЛКМ слева от куба и затем ЛКМ справа от куба. Затем нажатие клавиши Enter.

Выделение нижних четырех вершин и удаление их: клавиша Delete или клавиша X или Меню окна 3D View >> Mesh >> Delete.

79


80

Выбор четырех боковых ребер. Назначение ребрам свойства шва (seam). Меню окна 3D View >> Mesh >> Edges >> Mark Seam или Ctrl E key >> Mark Seam. Добавление материала. Установка Shadeless. Меню окна Buttons >> Shading (F5) >> Material buttons >> панель Links and Pipeline >> область Link to Object >> кнопка Add New. Нажмите на кнопку Shadeless в панели Material.

Добавление текстуры неба. Меню окна Buttons >> Panels >> Texture buttons (F6) >> панель Texture >> Add New >> тип текстуры Texture Type >> Image >> в панели Image >> кнопка Load. Ссылка на страницу с фотографиями неба:

http://www.tutorialsforblender3d.com/Textures/Skys/Sky_Box_1.html http://www.tutorialsforblender3d.com/Textures/Skys/Sky_Box_2.html

Blender-Empire I №9

Добавление UV Texture материалу. Меню окна Buttons >> Editing (F9) >> панель Mesh >> UV Texture: New >> дайте уникальное имя.

UV Unwrap UV Texture (UV развертывание куба) Выделите Cube >> Edit mode >> выбор всех vertices/edges/faces selected. UV развертывание: нажать клавишу U или меню окна


3D View >> Mesh >> UV Unwrap.

уроки про небо

Присвоение UV Texture Выделите Cube >> Edit mode >> UV/Image Editor menu >> Image box >> выберите изображение, которое мы загрузили ранее.

Правильное распределение текстуры Меню окна Buttons >> Shading (F5) >> Material buttons >> панель Map Input >> нажать кнопку UV >> поле UV: >> ввести имя SkyBox_UV.

Запуск игрового движка. Отмасштабируйте SkyBox так, чтобы он был похож на окружение и камера должна быть внутри куба. Нажать клавишу P или User Preference menu >> Game >> Start Game

81


82

Облака из плоскости Введение

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

Blender-Empire I №9

Шаг 1 Запустите Blender и удалите из сцены куб. Добавьте плоскость (Пробел-Add-Mesh-Plane) и перейдите в режим редактирования (клавиша TAB). Подразделите плоскость 6 раз (W-Subdivide). Выйдете из режима редактирования (клавиша TAB).


уроки про небо

Добавьте текстуру облако для плоскости (Texture (F6)-NoneClouds). Эту текстуру мы будем использовать для придания плоскости криволинейной формы. Вернитесь в режим редактирования (клавиша TAB), выделите все вершины (клавиша A) и нажмите в панели Mesh Tools на кнопку Noise 2 или 3 раза. Этим самым у нас получилась не равная поверхность. Вершинам, связанным с темной областью текстуры, присваиваются малые значения высот; вершинам же, связанным со светлыми областями текстуры, присваиваются большие значения высот.

83


84

Чтобы более наглядно смотрелось, нужно увеличить плоскость в размерах (Tab-S-в 7 раз). Фактически, ваша плоскость должна занимать практически все пространство сцены. В некоторых случаях может понадобиться плоскость, размеры которой превышают размеры сцены в 2 или 3 раза, в зависимости от ваших особенных потребностей. Отметьте для себя следующее: вы можете начать работу по моделированию облаков, используя половину UV-сферы вместо плоскости.

Blender-Empire I №9

Шаг 2 Сейчас надо создать форму облаков. Водите в режим редактирования (клавиша TAB) и активируйте инструмент выделения с округлыми границами (дважды клавиша B). Теперь вы можете выделить все вершины, которые вы НЕ БУДЕТЕ использовать для создания облаков. Не пытайтесь получить идеальную форму. Напротив, пусть ваши действия будут непредсказуемыми… В результате должно получиться что-то подобное (см. ниже).


уроки про небо

Шаг 3 Вершины, окрашенные в желтый цвет, будут удалены (нажмите «X») и подтвердите в окне удаления «vertices» (вершины). Возможно, неплохой идеей может оказаться изменение высоты некоторых из облаков, по желанию. Выберите способ выделения в виде окружности (нажмите «В» два раза) и выделите все вершины одного облака. Перейдите в вид спереди, нажав «1» на цифровой клавиатуре. Затем нажмите «G» и сместите ваши облака чуть ниже. Можно также перемещать отдельные облака на разные уровни. Теперь можете покинуть режим редактирования (TAB), так как наше небо уже готово к использованию! Чтобы привыкнуть делать все «аккуратно и чисто», мы должны привыкнуть удалять карту высот немедленно (после проведенных операций), даже несмотря на то, что эта же текстура нам еще понадобиться чуть позднее.

Шаг 4 В виде спереди (NUM-1), передвиньте («G») ваши облака в направлении вверх, удерживая при этом клавишу «CTRL» (дискретное перемещение). Переключитесь в вид «камера», чтобы проверить правильность положения ваших облаков.

85


86

Основное преимущество вышеописанного метода заключается в том, что вы можете создать копию эмиттера (SHIFT+D) прежде чем вы приступите к его анимированию. Таким образом, вы можете создать тень от облаков на земле, что выглядит намного реалистичнее, чем простое применение текстуры с изображением облаков.

Шаг 5 Присвоим облаку материал. Перейдите в меню Shading (F5) и нажмите на кнопку Material.Нажмите на кнопку «ADD NEW» (добавить новый материал). Преобразуйте облако в люминесцентный ореол, нажав кнопку Halo. Активируйте опцию HaloTex в панели Shaders. Установите параметры цвета «Halo» следующим образом: R 1.000, G 1.000 и B 1.000.

Blender-Empire I №9

Следующие параметры необходимо настраивать каждый раз, в зависимости от того результата, который вы хотите получить. Однако начать вы можете со следующих базовых значений: HaloSize: 0.40, Alpha 0.250 и Hard 30. Параметр «Hard» и «Add» - являются самыми важными параметрами, однако для достижения своей цели, вам придется немного поломать голову при их настройке.

Шаг 6 Перейдите в окно кнопок Texture (F6) и добавьте новую текстуру (ADD NEW). Из списка выберите тип текстуры Clouds. Далее настройте следующие параметры, NoiseSize: 2.000 и NoiseDepth: 1.


уроки про небо

Теперь, давайте перейдем обратно к набору кнопок «Material», осуществить окончательную настройку наших параметров. Перейдите в панель Map To, и измените розовый цвет на белый или близкий к этому. Активируйте кнопки «Col» и «Alpha». В панели Map Input, установите параметры SizeX 0.500 и SizeY 2.000.

И в завершение, установите переменную Альфа-канала Var 0.250 с помощью слайдера. Последние несколько параметров придется изменить, если вы хотите создать туман (а именно, вы можете сделать следующие настройки: SizeX – 0,250 и SizeY 2,000). Если вы четко следовали плану, то у вас должно получиться следующее:

87


88

Облака из частиц Часть 1 - Установки

Давайте начнем с того, что создадим новую сцену. Ctrl X или File --> New --> Erase All

Blender-Empire I №9

Если вы не изменяли сцену «по умолчанию», с которой автоматически запускается Blender, тогда вам будет необходимо удалить куб, созданный в ней. Обычно, вначале в качестве видового экрана я использую вид спереди «front view».

Добавьте плоскость. Именно из плоскости будет происходить испускание системы частиц после того, как мы добавим эту систему к объекту и настроим ее. Отмасштабируйте плоскость вдоль оси X на величину 10, а затем переместите точку взгляда, чтобы увидеть плоскость в 3D. Для этого лучше использовать вид через камеру, это позволит вам увидеть сцену так, как она будет отображаться после рендеринга. Add --> Mesh --> Plane ; S ; X ; 10 ; 0(Camera View)


уроки про небо

Чтобы при рендеринге получить более симпатичную картинку с облаками, давайте отодвинем плоскость вдоль оси Y на 5 единиц и на (-5) по оси X. Чтобы увидеть частицы, необходимо находиться в объектном режиме (object mode). После выполнения этих операций перейдите к набору кнопок «Physics» и нажмите кнопку «создать новую» (add new) в этой панели. G ; Y ; 5 ; Enter --G ; X ; -5 ; Enter

Часть 2 – Настройки и текстурирование

На данный момент мы подготовили обстановку для создания

89


90

облаков. После нажатия кнопки «Add New» на экране появляется целый набор кнопок и настроек. Я сделал следующие изменения: «Amount» - 2000, «End» - 250, «Life» - 100, «Normal» - 5, и «Random» - 1.

Нажмите Amount ; введите значение 2000 Нажмите End ; введите значение 250 Нажмите Life ; введите значение 100 Нажмите Normal ; введите значение 5 Нажмите Random ; введите значение 1

Blender-Empire I №9

Чтобы увидеть процесс испускания частиц плоскостью, вы можете нажить «Alt-A» (что приведет к запуску «грубой» анимации) или вы можете разделить видовой экран и превратить один из них в линейку времени (timeline), которая появляется под видовым экраном и над кнопками управления.


уроки про небо

Для того, чтобы частицы выглядели подобно облакам, необходимо задать для них текстуру. Давайте перейдем в закладку «Материалы» (Materials). Нажмите «Add New». Появятся все кнопки управления свойствами материалов. Нажмите Halo. А в закладке «Shaders» измените параметр «Halo size» на 1, «Hard» на 35 и «Add» на 80. Также нажмите кнопки с опциями «HaloTex» и «Shaded». В закладке «Textures» нажмите «Add New» и перейдите во вкладку «MapTo», включите опцию «Alpha». И последнее, измените цвет RGB на белый.

Теперь перейдите к набору кнопок «texture». Задайте в качестве типа текстуры в раскрывающемся меню «texturing type» выберите «clouds». Выберите «Clouds» внизу поля «texture type». Пришло время сделать настройки текстуры. Пройдемся по списку операций: -В закладке «Цвета» (Colors), (закладка располагается там же, где была кнопка «Add new»), измените яркость «Bright» на 2.000 и параметр «Contr» на 4.000 -В закладке «Облака» (Clouds) выберите параметр «Hard Noise» и измените значение «NoiseSize» на 2.000, а «NoiseDepth» на 6.

91


92

Если вы все сделали точно так же, как я, то у вас должно получиться что-то подобное.

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

Blender-Empire I №9

http://www.darkscarab.com/tutorials.html

Перевод: Дмитрий Балезин


уроки про небо

Снег

Вас когда-нибудь хотелось сделать падающий снег в Blender? Это очень просто сделать при помощи системы частиц. The Particle System (Система частиц)

Чтобы начать нам необходимо создать объект (сфера) и потом ему настроить параметры эмиттера частиц.

Создание эмиттера частиц: 1. Откройте Blender и удалите куб. 2. Создайте новую сферу (Spacebar->Add->Mesh->UVsphere). Оставьте настройки по-умолчанию. Это и будет эмиттер частиц.

Рис 1-создание сферы

3. Перейдите в вид спереди (NUM1) и в режим редактирования (Tab). Выделите верхнюю часть при помощи инструмента выделения (клавиша B) и удалите её, потому что она нам не пригодится.

Рис 2-удаление части сферы

93


94

4. Перейдите в окно Physics и добавьте частицы сфере (UVsphere).

Рис 3-новая система частиц

5. На рисунке показаны настройки, которые я сделал, но вы может сами поэкспериментировать с ними.

Рис 4-настройка частиц

*Совет: 20,000 частиц могут оказать большим количеством, если у вас слабый компьютер. Вы можете использоваться 10,000. Это все равно дает хороший результат.

Blender-Empire I №9

Extra Animation (Дополнительная анимация)

Если вы проиграете анимацию (Alt-A), то вы увидите, как частицы медленно падают вниз от эмиттера. Это не похоже на настоящий снег. В реальности же снег не двигается строго по прямой линии, он стремится кружиться или выполняет не понятные движения. Это называется турбулентное движение. Мы стремимся к подобному результату и чтобы это сделать, нам надо устроить вихрь (vortexes). *Примечание: Если у вас старый компьютер, то это действие


уроки про небо

может вызвать зависание его. Сейчас самое время сохранить ваше творение. Создание вихря (Vortexes):

1. Перейдите в вид спереди (NUM1). Поставьте 3D курсор посредине облака частиц и добавьте объект empty.

Рис 5-добавление пустышки

2. Не снимая выделения с empty перейдите в окно Physics. Выберите из выпадающего списка Fields тип Vortex и скопируйте настройки, которые показаны на рисунке.

Рис 6-настройка физики пустышки

95


96

3. Дважды скопируйте (Shift-D) Vortex. Немного передвиньте копии и смотрите чтобы они располагались на расстоянии друг от друга.

4. Скопируйте еще три раз вихри и поверните их на 90 градусов друг от друга.

5. Убедитесь, что система частиц проходит через вихри (vortexes).

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

Blender-Empire I №9

Рис 7-скриншоп действия частиц

Материалы и заключение

Если вы сейчас отрендерите (F12), то все это будет выглядеть не очень.


уроки про небо

Рис 8-первый рендер

Вы можете улучшить, сделав некоторые изменения, Во-первых, вы можете изменить цвет заднего плана в окне World.

Рис 9-настройка заднего фона

Во-вторых, вы можете добавить материал. Я сделал такой:

Рис 10-добавление нового материалаl

Рис 11-настройки материала

97


98

1. Измените цвет на белый. 2. Установите непрозрачность (opacity) равное 0.5. По-другому непрозрачность можно назвать "прозрачность" (transparency), которую так же называется alpha. Эта настройка позволит смотреть сквозь снег. 3. Выберите тип материала Halo. Это превратит каждую частицу в индивид с “halo” материалом и это позволяет нам регулировать размер и другие параметры для отдельной частицы. 4. Измените настройки halo. HaloSize определяет размер каждого ореола. Hard определяет, как распространяется каждая частица. Add обычно используется для создания эффекта фейерверка. Лучшим способом научиться понимать, какой параметр и на что влияет, просто пытаться самому их изменять. Таким образом, вы можете добиться результатов даже лучше чем у меня.

Blender-Empire I №9

В результате получается следующее:

Рис 12-финальный рендер


уроки про небо

Создание дождя

В этом уроке будет объяснен принцип создание эффекта дождя.

Чтобы создать эффект дождя вы будем использовать частицы. Для начала необходимо сделать объект, который будет испускать (эмиттер) частицы. Для простоты будем использовать объект – плоскость. Эта плоскость будет изображать некоторое подобие облака. На рисунке показана вся сцена: про облако уже говорилось, земля – плоскость, куба посредине сцены, который будет неким препятствием для капель дождя.

Замечание:

Также для имитации дождя нам необходим объект, которые похож на летящую каплю воды. Пример такого объекта представлен на рисунке.

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

99


100

Эмиттер частиц:

Выберите плоскость (облако), перейдите в панель Object (F7) и подменю Particle System нажмите на кнопке Add New. Появится новая система частиц (PSys). Выберите тип частиц – Emitter. Другие параметры настройте в соответствии с рисунком:

В области “Basic:” – Amount: количество 5000 (это обеспечит плотный дождь)

Blender-Empire I №9

В области “Emit from:” - Random: выпадение капель в случайном порядке - Faces - Even: для пропорционального распределения капель. Это если эмиттер сделан из нескольких полигонов, расположенных на разных уровнях. - Jittered: (для случайного распределения выпадение капель из простой плоскость) Настройка в панели Phisics: В целом устанавливается направление гравитации и настройку влияние параметра normal. Newtonian Область Initial velocity (начальная скорость) - Normal: 10.000 (можно и больше, чтобы получился еще натуральнее эффект дождя)


уроки про небо

Область Global effects (глобальные эффекты) - AccZ: -9.81 (величина ускорения свободного падения на Земле)

В заключении, в панели Visualization выберите из списка Object и в области OB: введите имя объекта, который является у вас каплей дождя. В панели Extra в области Effectors нажмите кнопку die on hit (умереть при столкновении).

Настройки реактора частиц

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

Вы меню объекта (Object F7) в панели Collision в окне кнопок Physics нажмите на кнопку Collision и затем на кнопке Kill.

101


102

В окне кнопок Particle добавьте новую систему, нажав на кнопке Add New в панели Particle System. Выберите тип системы Reactor и установите следующие параметры: Область Basic: Amount: 5000 Life: 5 (жизнь капель дождя) Rand: 0,5

Область Emit From: Particle (система реагирует на частицы)

Blender-Empire I №9

Область Target: (цель) OB: Cloud (объект, который испускает частицы) Psys: 1 (идентификационный номер системы частиц) В панели Physics в области Global effects в счетчике AccZ по-

ставьте значение равное 10. Чтобы объект (reactor) выглядел как при рендеренге, и не забудьте активировать кнопку Emitter в области Render панели Visualization.


уроки про небо

И в заключение, в панели Children установите следующие параметры:

Particles и Nothing Amount: 3 (чтобы создать 3 капли-потомка к капле-родителю, которые создаются во время столкновения) Round: 1.000 (для распределения частиц по окружности)

Сейчас вы можете проиграть получившуюся анимацию, нажав на Ctrl +A или нажав на кнопке Bake в панели Bake окна кнопок Particle. Получится должно то, что показано на рисунке выше. Если добавить соответствующие материалы, то картинка получится следующая:

Ссылка на источник: http://feeblemind.tuxfamily.org/dotclear

103


104

Создание торнадо

Некоторое время назад мне задали вопрос о том, как создать торнадо с помощью системы частиц (до этого подобным образом я создавал облака). В то время я еще не знал о таком объекте, как решетка (Lattice), и том, что она позволяет получить значительно больше контроля над системой частиц. Я обожаю системы частиц, поэтому решил создать торнадо этим способом. Думаю, у меня получилось замечательно.

Думаю, для начала вам нужно рассказать о том, что же такое «решетка» (Lattice). Используя «решетку», вы можете деформировать объекты более точно, при этом вы сохраняете возможность возврата к изначальной форме объекта, что делается весьма просто. Присвоив объекту «решетку», вы в дальнейшем можете ее деформировать, и это будет приводить к деформации объекта.

Blender-Empire I №9

Я могу представить себе лишь одну сферу применения этого свойства «решетки» - анимация. В нашем случае, мы будем использовать «решетку» (Lattice) для управления траекториями движения частиц. «Решетка» назначается эмиттеру (испускателю) частиц точно также, как если бы вы применяли ее к обычному мешу. Когда частицы проходят в близости от «решетки» (lattice), они начинают двигаться в направлении, которое задается ее формой.

Почему бы уже ни начать? Запустите Blender и удалите куб «по умолчанию». Далее, нам понадобиться добавить всего лишь два объекта в сцену: эмиттер частиц (particle emitter) и решетку (lattice). В качестве эмиттера я буду использовать обычную плоскость. Далее, необходимо зайти в панель настроек объекта (object settings) в панель «particle buttons» и назначить систему частиц плоскости.


уроки про небо

Add -Mesh -Plane, F7 (Object Settings), Particle Buttons, Add New

Прежде чем продолжить, давайте сразу выполним все настройки для нашей системы частиц. Обычно под настройками понимаются следующие параметры: кол-во частиц, время начала и время окончания, продолжительность «жизни» частицы, начальная скорость частиц. На рисунке ниже я выделил все выполненные мною настройки.

Позднее мы изменим настройки материала для системы частиц, чтобы они выглядели как торнадо. А сейчас мы добавим «решетку» (lattice). Добавив «решетку», вы увидите, что она ото-

105


106

бразиться в виде куба с размером 1BU по каждой стороне. В отличие от обычных мешев, «решетка» редактируется несколько по-другому. Вы не можете пользоваться опцией «subdivide» или «cut» для создания большего числа граней у решетки. Вместо этого, необходимо использовать панель редактирования настроек. Add -Lattice, F9 (Editing Settings)

Blender-Empire I №9

В панели настроек «решетки» есть три поля (Lin, Card, B), для каждого из которых можно выбрать еще 3 параметра (U, V, W). «U», «V», и «W» - определяют число вершин на определенной стороне куба. «U», «V», и «W» являются эквивалентами направлений «X», «Y», и «Z». Зачем было менять имена координат? Я не уверен, но думаю это сделано для того, чтобы не происходило путаницы с глобальной системой координат.

Опции «Lin», «Card», и «B» определяют вид интерполяции. Интерполяция определяет то, каким образом будет просчитываться движение системы частиц (т.е. как будет просчитываться деформация). Я полагаю, что «Lin» (Linear – линейная интерполяция) создает наименее сглаженное движение, «Card» (cardinal) занимает промежуточное значение, а «B» (B-Spline) – создает наиболее сглаженное движение. Так или иначе, я пользуюсь опцией «B-Spline».


уроки про небо

Теперь мы можем переходить к изменению нашей «решетки» (Lattice). Чтобы создать торнадо, мне потребуется больше вершин, которыми я смогу «играться». Поэтому я изменил параметры U, V, и W на 10, 10, и 20, соответственно.

Чтобы частицы «заворачивались» при движении, нам необходимо закрутить нашу «решетку». Сначала необходимо преобразовать решетку в форму, похожую на цилиндрический конус (именно так выглядит торнадо). Для этого скосите «решетку» вдоль оси Z на 5 единиц (нажмите S-Z-5), затем весь объект на 2 единицы. Затем перетащите «решетку» по оси Z на 5 единиц. Таким образом, дно решетки окажется как раз над эмиттером частиц. Измените U, V, и W на 10, 10, и 20, S Z 5, S 2, G Z 5

Чтобы начать «заворачивать» нашу решетку, необходимо войти в режим редактирования (Edit Mode). Самый простой способ сделать необходимые деформации следующий – перейдите в

107


108

вид спереди (front view), («решетка» целиком должна отображаться в этом виде), выберите все вершины за исключением вершин нижнего ряда. Добавьте искажение (Skew) с параметром 1.05. Далее, отмените выделение (deselect) еще и 2го ряда снизу. И опять добавьте искажение (Skew) с параметром 1.05. Далее отмените выделение 3го ряда снизу, добавьте искажение и для него с величиной 1.05. Продолжайте в том же духе, пока выделение не будет снято со всех рядов. У вас должно получиться что-то напоминающее рисунок ниже.

Blender-Empire I №9

Выделите все вершины кроме нижнего ряда, skew = 1.05, снимите выделение с нижнего ряда, skew = 1.05, снимите выделение с нижнего ряда:

Далее мы проделаем точно такие же операции, но теперь вместо искажения будем использовать поворот сегментов. Выберите все ряды кроме нижнего и поверните их на 20 градусов относительно оси Z. Снимите выделение с нижнего выделен-


уроки про небо

ного ряда и осуществите поворот еще на 20 градусов, и т.д. В конечном итоге у вас получится закрученный цилиндрический конус, по которому и будут перемещаться ваши частицы.

Теперь, чтобы все заработало выполните следующие действия: вернитесь в объектный режим (object mode) и выделите эмиттер. Далее в режиме «editing buttons» (F9) в панели модификаторов выберите «решетка» (Lattice). В текстовом поле «Ob:» укажите имя «решетки» (Lattice), которую мы до этого создали. Обычно имя соответствует значению ‘Lattice’. Если теперь вы нажмете «Alt+A», вы сможете увидеть, как частице передвигаются вверх по решетке, закручиваясь по спирали во время подъема. Object Mode, Select Emitter, F9 (Editing Buttons), Add Modifier-Lattice, Type lattice имя в ‘Ob’ text box. Осталось лишь назначить объекту материал, чтобы он действительно выглядел как торнадо. Зайдите в настройки шейдинга «Shading settings», раздел «materials buttons» и нажмите «Add New». Выставьте настройки так же, как это сделано на ри-

109


110

уроки про небо сунке ниже.

Теперь вы уже можете приступить к процессу анимирования торнадо, чтобы увидеть, что у вас получилось.

Blender-Empire I №9

Источник: http://www.forum.darkscarab.com Перевод: Дмитрий Балезин


уроки про огонь

Реалистичная волюметрика или создание газового облака

111


Blender-Empire I â„–9

112


уроки про огонь

113


Blender-Empire I â„–9

114


уроки про огонь

115


Blender-Empire I â„–9

116


уроки про огонь

117


Blender-Empire I â„–9

118


уроки про огонь

Создание спрайтового огня Этот урок покажет вам, как сделать огонь в игровом движке, и к тому же не загружать сильно компьютер. В качестве огня будет текстура с изображенным на ней огнем. В сцена используется объект – плоскость. 1. Прежде чем начать, необходимо выставить какие материалы будут использоваться в игровом движке. Меню окна User Preference >> Game >> Texture Face Materials.

2. Определить способ отображение моделей в игровом движке и к тому же в окне 3D view. Меню окна 3D View >> Viewport Shading box >> Draw type >> Textured. Тип отображение – текстурный. Это самый информативный способ показа информации. 3. Добавление материала для игрового объекта. Меню окна Buttons >> Shading (F5) >> Material buttons >> панель Links and Pipeline: >> Link to Object >> кнопка Add New.

119


120

4. Добавление текстуры. Меню окна Buttons >> Shading (F5) >> Texture buttons (F6) >> панель Texture >> кнопка Add New выбрать из списка Texture Type: Image.

5. Загрузка изображение, которое будет анимироваться. В панели Image нажмите на кнопку Load и найдите текстуру, и затем нажмите на кнопку Premul.

Blender-Empire I №9

6. Добавление UV Texture к материалу. Меню окна Buttons >> Editing (F9) >> панель Mesh нажмите на кнопке New возле UV Texture:. Не забудьте дать её уникальное имя. 7. UV развертка. Выделите плоскость перейдите в режим Edit Mode и нажмите на клавишу U и из выпадающего меню выберите метод развертывания.


8. Перейдите в окно UV/Image Editor. И выберите из списка уже загруженное нами изображение с огнем. Полученную развертку плоскости выставите в левый нижний угол текстуры. 9. Настройка способа перемещения развертки по изображению. Меню окна UV/Image Editor >> View >> Real-time Properties. Где область Tiles отвечает за количество столбцов и строк, и область Anim за временной интервал и скорость замены кадра. Установите параметры X = 5, Y = 2. Start = 0 (означает 1 кадр), End = 9 (число кадров) и Speed = 18.

10. Дополнительные настройки. Меню окна Buttons >> Editing. Панель Texture Face нажмите на кнопки Tex и Tiles.

11. если сейчас отрендерить плоскость, то текстура лежит не корректно. Чтобы это исправить надо: меню окна Buttons >> Shading (F5) >> Material buttons в панели Map Input нажать кнопку UV и в поле UV:

уроки про огонь

121


122

ввести имя, которое давали в 6 пункте. Затем перейти в панель Map To и нажать на кнопку Col.

12. На этом все. Нажмите клавишу P или User Preference menu >> Game >> Start Game и смотрите как горит пламя.

Если вы захотите использовать тип игровых текстур Blender GLSL Materials, то вам надо выбрать соответствующий пункт меню в пункте №1. И при загрузке текстуры вам не надо нажимать на кнопку Premul (пункт №5).

Blender-Empire I №9

Источник: http://www.tutorialsforblender3d.com


Создание огня из частиц

уроки про огонь

Вы как мастер начали переходить на более сложные и интересные работы. И на определенном уровне своего познания вы понимаете, что вам не хватает знаний о том как создать эффект пылающего огня. Что это сделать, надо воспользоваться системой частиц. И сделать объект эмиттером частиц. Затем применить материал типа Halo и добавить мраморную текстуру. Вот и все. А теперь более подробно рассмотрим весь процесс.

Запустим Blender и удалим из сцены не нужный нам куб. В качестве эмиттера частиц у нас будет Circle (пробел >> ADD>Mesh>Circle). Если вы хотите более реалистичной картины, скажем огонь от свечи или факела, то лучше начинать с UVSphere (пробел >ADD>Mesh>UVSphere). Временной интервал действия анимации 250 кадров, если учи-

123


Blender-Empire I №9

124

тывать, что частота кадров определяется 25 кадров в секунду, то продолжительность анимации составит 10 секунд. Это хватит, чтобы полюбоваться созданным огнем и так же не на долго загрузит ваш компьютер при финальной визуализации. Перейдите в окне меню Button в раздел Object (F7) > Particle buttons. Добавьте систему частиц. И настройте систему как показано на рисунке. Число частиц выбрано 200, это достаточно, чтобы показать действие эффекта огня. Можно менять это значение, но по наблюдениям, 10 частиц хватит для отображение пламени свечи и 1000 частиц для сильного огня. Мы выбрали именно 200 частиц еще и потом, что это не очень сильно нагрузит компьютер. Вы, конечно, можете экспериментировать с частицами, как вам этого хочется. К тому же можете получить весьма интересные результаты. Параметры Sta: и End: определяют время (длительность) анимации в кадрах. Параметр Life: отвечает за жизненный интервал частиц и оптимальным значением будет установить его в промежутке между 50 и 100. Учитываю, что мы не собираемся устроить гигантский взрыв значение Rand: выставляем в промежутке между 0,01 – 0,05. Чтобы определить направление огня надо определить направление действия. В панели Physics в области Global effects: установите параметр AccZ: равный 0,3. С этим параметром можно поэкспериментировать. Чтобы частицы расходились в хаотичном порядке нажмите на кнопке Random и из списка выберите Verts. Это сделает испускание частиц из вершины выбранной нами фигуры. Назначение материала. Смотрите на рисунок и выставите все параметры, которые выделены красным.


уроки про огонь

Так же надо добавить текстуру, так как настройки только одного материала не дают нужного нам результата. Проделайте следующие действия, которые показаны на следующем рисунке:

После этих действий у вас появятся те меню, которых не было при настройке материала. Вернитесь к обратно в меню Materials и донастройте параметры.

В заключении, параметр HaloSize определяет размер частиц при рендере. Можете уменьшить этот параметр, чтобы сделать частицы поменьше. На этом все. Рендерьте видео и можете наслаждаться своим результатом.

125


126

Структура проекта для Big Buck Bunny Часть 2. Модели и линкование автор: Зарыпов Владимир (krre)

Blender-Empire I №9

Проект мультфильма «Big Buck Bunny» содержит 422 рабочих файла, из которых 59 файлов содержат в себе модели, начиная от яблок с цветами и заканчивая персонажами. Как мы выяснили в прошлый раз, все файлы структуризированы и разнесены по папками. В конце концов все они собираются в сцены с анимацией в папке scenes, но при этом остаются на своих местах. В итоге, не смотря на то, что типичный анимационный файл, скажем \scenes\01_intro\01.blend, на диске занимает 132 КБ, в памяти он разворачивается на 272 МБ.

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


лизована в Blender, и как она работает.

взгляд изнутри

Вероятно, ни для кого не является секретом, что основной структурной единицей в Blender является датаблок. Это тот кирпичик, из которого складываются и с помощью которого взаимодействуют все объекты и данные. Среди них самым интересным и самым нужным является объектный датаблок, который задаёт свойства трансформаций, такие как перемещение, поворот и мастшабирование, и без которого ни один объект в 3D-пространстве нельзя было бы даже увидеть. К нему подключаются датаблоки, отвечающие за характеристики трёхмерных данных — мешей, NURBS, кривых, камер, источников света и других. Способ их соединения называется линкованием (linking), которое может осуществляться как между датаблоками внутри одной сцены, так и между сценами, находящимися в разных файлах. Наиболее распространённой ситуацией является такая, когда объектный датаблок находится в одном файле, а датаблок с данными — в другом. Откроем чистую сцену Blender с находящимся в ней по умолчанию кубиком, камерой и источником света. Удалим кубик и создадим объект UVSphere. Так интереснее и в дальнейшем будет меньше путаницы. Сохраним теперь сцену в файл test.blend, а после этого снова откроем чистую сцену и начнём процесс линкования.

Выполните команду File → Append or Link. В окне File Browser установите способ подключения данных с Append на Link, затем найдите файл test.blend, войдите в него, перейдите в папку Mesh, выделите имя Sphere и нажмите либо среднюю клавишу мыши, либо кнопку Load Library.

127


Blender-Empire I №9

128

Что-то произошло, но с виду ничего не изменилось. Теперь при выделенном кубе перейдите в панель редактирования объектов, в раздел Link and Materials и нажмите на иконку броузера датаблока. В нём, кроме меша Cube, появился меш L O Sphere. Это и есть тот меш, который мы взяли из файл test.blend. Буква O означает, что данный датаблок в сцене не используется, а L, что он извлечён из внешнего файла. Выберите его, и кубик в окне 3D View сменится на сферу. Посмотрите теперь, что показывает Outliner.

Мешевый объект с именем Cube содержит прилинкованный меш с именем Sphere (на это указывает иконка с надписью Li). Если вы попытаетесь перевести такой объект в режим редактирования, нажав клавишу Tab, то увидите надпись Can‘t edit external libdata, и режим редактирования не включится. Таким образом, датаблоки прилинкованных объектов нельзя редактировать, что может защищать их от нежелательных случайных изменений. Теперь сохраните нашу сцену с прилинкованной сферой в файл с каким-нибудь именем linked_sphere.blend, откройте test.blend, деформируйте сферу любым ужасным способом, сохраните файл и снова откройте linked_sphere.blend. Все ужасные деформации появились и в нём тоже,


взгляд изнутри

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

Создайте снова чистую сцену по умолчанию и переместите 3D-курсор чуть в сторону от кубика. Все создаваемые объекты должны становиться в позиции 3D-курсора, так? Как правило, да. Значит, прилинкованный объект должен появиться не внутри кубика, а рядом с ним. Выполните теперь все те же действия по линкованию сферы из файла test.blend, только выберите не меш Sphere, а сам объект.

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

129


130

Прилинкованным у сферы является не только меш, но и сам объектный датаблок. А в панели объектов, в разделе Link and Materials, изменить датаблок сферы тоже не удаётся. Таким образом, после линкования объект тоже стал нередактируемым. Все трасформации, которые остались у него в файле с мешем, были перенесены и в эту сцену. Поэтому сфера поместилась не в позиции 3D-курсора, а в те координаты, которые были у неё в файле test.blend.

Blender-Empire I №9

Как видно, линковать объекты не очень удобно, разве что в тех случаях, когда мы не хотим в сцене с анимацией трансформировать прилинкованный объект, но такое случается редко. Чаще всего, как минимум, возникает необходимость, такой объект передвигать. Выберите кубик и в Link and Materials назначьте ему датаблок L Sphere. Теперь прилинкованную сферу снова можно двигать, а ту непокорную, голубого цвета, удалите. Это был, конечно, не единственный способ линковать внешние объекты и датаблоки. Рассмотрим ещё один, тем более, что знание его понадобится нам в дальнешейшем, когда мы начнём исследовать линкование на примерах файлов «Big Buck Bunny». А в них отнюдь не всё так просто, как хотелось бы.


взгляд изнутри

Откроем наш многострадальный файл test.blend и добавим сферу в группу с каким-нибудь экзотическим названием SphereGroup (при этом она должна позеленеть). Сохраним файл и очистим сцену, нажатием Ctrl+X. Кубик нам теперь не пригодится, и мы его спокойно удаляем. Начинаем линковать сферу уже привычным нам способом, только в папках файла test.blend заходим в Group и выбираем данные SphereGroup. Визуально при этом снова ничего не изменилось.

Перейдём в меню Add → Group → test → SphereGroup, и в сцене появится наша сфера. Правда, сама она какая-то странная. Во-первых, из неё торчат оси координат, а во-вторых, при попытке перевести её в режим редактирования по клавише Tab ничего не происходит. Но зато она легко трансформируется. Outliner при этом показывает присутствие у объекта датаблока какого-то неопределённого типа, помеченного кружочком, а на панели редактирования данные датаблока вообще отсутствуют.

131


Blender-Empire I №9

132

Всё это наводит на мысль, что мы получили обычный объект Empty, только с привязанной к нему облочкой меша. Так оно на самом деле и есть. Переместите нашу сферу немного в сторону и создайте новый Empty. Перейдите в панель объектов, нажмите в разделе Anim Settings кнопку DupliGroup и в соседнем поле впишите имя SphereGroup. При этом Empty останется на месте, но оденется в меш прилинкованной сферы.

Судя по Outliner и панели объектов, оба наших шарика абсолютно похожи, отличаясь только именами. В одном случае он называется Empty, а в другом SphereGroup. Получается, что их природа одна и та же и реализуется благодаря опции DupliGroup, просто когда мы создали объект через меню Add → Group, Blender все действия по настройке DupliGroup проделал автоматически и дал итоговому объекту имя прилинкованной группы. Собственно говоря, данный способ линковавания объектов из внешних файлов является наиболее часто используемым. С его помощью


взгляд изнутри

собраны все сцены в «Big Buck Bunny». И, кстати, группировать таким образом можно сколь угодно много объектов, однако все они потом после такого группового линкования появятся под одной общей оболочкой и не смогут быть доступны по отдельности. Ну, а буква O в Outliner рядом с иконкой Li как раз и указывает на то, что линкование производится групповое. В завершение нашего затянувшегося ликбеза рассмотрим способ размножения прилинкованного датаблока по полигонам другого объекта. В дальнейшем он нам тоже пригодится.

Удалите в сцене с двумя шариками, оставшейся после предыдущего упражнения, объект Empty, а вместо него создайте Cube. Теперь припарентите сферу к кубику, перейдите в панель объектов последнего и там в разделе Anim Settings включите кнопку DupliFaces. Установите параметр Scale в 0,1, чтобы уменьшить шарики в десять раз, либо уменьшите в масштабе сферу-оригинал. В итоге должна получиться вот такая картина.

133


134

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

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

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

Blender-Empire I №9

Второй плюс заключается в том, что одну и ту же модель можно использовать в разных сценах многократно. Что это означает на практике?

Линкование в «Big Buck Bunny» многоуровневое, то есть оно идёт ступенчато от самых простых моделей к наиболее сложным. Типичный пример — дерево. На самом нижнем уровне иерархии у него находятся листья, затем они подключатся ссылкой в файл с деревьями, которые собираются в местность (файлы из папки sets) и уже после этого местность попадает в пошотовые сцены с анимацией. Таким образом, мы имеем всего одну модель дубового листка, а в конечном файле с анимацией их будет уже несколько тысяч копий. И тогда, к примеру, изменив текстуру листа с зелёного на жёлтый, мы можем тут же получить из летнего леса осенний во всех файлах с анимацией.


взгляд изнутри

А теперь, когда мы вооружены приобретёнными знаниями и опасны, рассмотрим все эти вопросы более детальнее, используя в качестве примеров файлы «Big Buck Bunny». Откроем файл сцены \scenes\09_tree_trunk\02.blend, в котором три грызуна выбегают из поля в сторону камеры, и рассмотрим, из чего она состоит. Данный файл открывается с экраном Compositing, поэтому, прежде чем двигаться дальше, переключим его в состояние 4-Model, которое как раз отобразит для нас Outliner в левой части окна.

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

135


136

поля, оказывающие влияние на траву, созданы непосредственно в сцене.

Blender-Empire I №9

Переключим теперь Outliner в режим отображения библиотек и посмотрим, куда они ведут.

Судя по всему, сцена состоит из нескольких конечных прилинкованных файлов и одной вложенной библиотеки \sets\forestedge.blend, которая является сборкой места действия и ведёт в следующие файлы. Откроем его, произведём те же самые манипуляции с окнами и увидим следующее:


взгляд изнутри

В этом файле мы наблюдаем кусочек леса из двух деревьев (точнее — их нижней половины), двух груд камней и нескольких растений. Собственных элементов тут также содержится мало, но много прилинкованных. Впрочем, это характерно для любого сборочного файла местности. И наш священный долг — разобраться, из чего он в данном случае состоит. Как видно из Outliner, в этой сцене снова есть как конечные элементы, вроде \envs\rock.blend или \envs\root.blend, так и файлы, которые ведут глубже, на более низкий уровень иерархии. Откроем самый первый из них — \envs\trees.blend.

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

137


138

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

Blender-Empire I №9

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

Откроем опять файл trees.blend и посмотрим в Outliner (теперь в обычном режиме Visible Layers). Там мы увидим, что то дерево, которое по умолчанию отображается в 8-м слое, имеет не слишком сложную структуру. Это ствол chubbychestnut_tr.001, ветви tree_chubbychestn и листья leaf_chubbychestn.002. Причём, листья выглядят как-то странно. Если присмотреться к ним поближе, то окажется, что это один меш-объект, который состоит из множества отдельно разбросанных в пространстве полигонов. Однако это ещё не листья, а лишь основа для них. Вокруг каждого полигона располагается не выделяемый сеточный меш параллелепипедной формы. Логика подсказывает,


взгляд изнутри

что как раз этот меш и является листьями. Для проверки можно отрендерить сцену и увидеть, что так оно и есть.

Осталось только выяснить, как эти параллепипеды стали листьями, и как они прикрепляются к полигонам. При выделенном объекте leaf_chubbychestn.002 перейдём в панель объектов и в разделе Anim Settings увидим нажатой кнопку DupliFaces.

139


140

Это указывает на то, что каждый полигон меша leaf_chubbychestn.002 заменяется неким объектом, который к нему припарентен. А в Outliner мы видим, что припарентен к нему объект leaf_oak_lo.001, меш которого находится в файле leaves.blend. Найдём его в сцене. Оказывается, он спрятан внутри корня дерева. Это и есть та самая модель листа leaf_chesnut_meshed, которая прилинкована из файла leaves.blend и размножена потом по всему дереву.

Blender-Empire I №9

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


взгляд изнутри

Пойдём ещё дальше и посмотрим, как же теперь на более высоком уровне иерархии размножаются деревья. Делается это по уже известному нам из ликбеза принципу.

Деревья состоят из нескольких объектов. Как мы уже видели, туда входит ствол, ветви, листья и оригинальная модель листа, прилинкованная из библиотеки листьев. Чтобы перетащить всё это вместе в другой файл, нужно эти объекты объединить в группу. На примере нашего исследуемого дерева такая группа есть, и называется она chubbychestnut_branch.

Переместимся теперь в файл \scenes\06_killing\12.blend и переключим экран в состояние 4-Model. В окне 3D View мы при этом увидим уже знакомое нам дерево. Но если выделить его и поглядеть в панель Editing, то окажется, что оно не имеет датаблока с данными. А объект без такого датаблока — это есть не что иное, как Empty, пустышка.

141


142

Переключимся в режим Object и увидим там в разделе Anim Settings такие настройки:

Группа с деревом chubbychestnut_branch из файла tree.blend была подключена к Empty через опцию DupliGroup. Таким образом, прилинкованное с помощью группы дерево было размещено в сцене с анимацией путём привязки его к объекту Empty.

В отличие от способа размножения листьев через опцию DupliFace (или DupliVerts), опция DupliGroup не позволяет автоматически клонировать объекты. Чтобы разместить в сцене несколько копий одного и того же дерева, придётся создавать несколько Empty и в каждом из них указывать в поле DupliGroup одну и ту же прилинкованную группу. Поэтому данный способ годится для единичных или немногочисленных объектов. В том числе и для персонажей.

Blender-Empire I №9

И раз уж мы подобрались к линкованию персонажей, то рассмотрим сперва, как создатели «Big Buck Bunny» избежали бардака с нагромождением десятков объектов в сценах с анимацией. Поскольку один из таких файлов, \scenes\06_killing\12.blend, у нас уже открыт, то его и будем разбирать.

Первые десять слоёв обычно отдаются свету и персонажам. В первом слое чаще всего содержатся источники света, хотя они также распределены и по другим слоям, освещая каждый свою часть сцены. Со второго по четвёртый слой находятся персонажи, а в нижнем ряду, строго под этими слоями — риги этих персонажей. Например, в слое 2 помещена белка-летяга Фрэнк, а в слое 7 — его риг. В слое 3 — косоглазая белка, а в слое 8 — его риг.


взгляд изнутри

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

143


144

взгляд изнутри

Однако на этом мы немного остановимся и сделаем передышку. Дело в том, что все вопросы, касающиеся как самих персонажей в целом, так и их линкования и настройки, требуют отдельной большой главы и будут более подробнее рассмотрены в следующий раз. А пока, в завершение нынешней темы, как всегда, на прощание предлагаю взглянуть на то, какая иерархия вложенных библиотек использовалась в мультфильме «Elephants Dream».

Blender-Empire I №9

Надо сказать, что не смотря на то, что сцены из «Elephants Dream» гораздо более тяжёлые, чем в «Big Buck Bunny», и дольше загружаются в память, объектов из внешних файлов там линкуется очень немного. А вложенные библиотеки вообще отсутствуют. По крайней мере, просмотрев пару десятков файлов с анимацией, я ни разу не встретил библиотеки, которая была бы вложена в другую. Так что в этом смысле файлы изучать файлы «Elephants Dream» намного проще (если не считать времени их загрузки). Причём, что интересно, даже персонажи, Пруг и Эмо, не линкуются в сцены, а загружаются в них целиком вместе с мешем и скелетом. Впрочем, возможно, это было сделано уже на конечном этапе производства, чтобы корректно просчитать симуляцию движения одежды, которая не работает, если ткань находится во внешнем файле. Типичная же сцена с библиотекой выглядит так (файл \02_scissor_attack\02_02.blend):


Галерея

т е м а : Ав т о к о л о н н а

DISK AlfaRomeo автор Димка


146

Audi R-8 автор IceCube

Blender-Empire I №9

Ferarri 599 автор IceCube


Галерея

Katjusha автор ro barracuda автор ro

147


148 RangeRover автор ro

Blender-Empire I №9

thomas-cheetah-GT авт

Winger the car автор Mixaill


Галерея

Lamborghini_Murcielago автор Димка

тор MozG

Аudi R8 автор Димка

149


150

Бананоход автор Alex_Monster

Blender-Empire I №9

Экскаватор автор try_out

Трактор автор try_out


Галерея Взрыв из прошлого автор Димка

Машина автор Димка

151


На этом все!


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.