[LinuxFocus-icon]
<--  | Домой  | Карта  | Индекс  | Поиск

Новости | Архивы | Ссылки | Про LF
эта страница доступна на следующих языках: English  Castellano  Deutsch  Francais  Italiano  Nederlands  Russian  Turkce  

[Photo of the Author]
автор Katja Socher
<katja(at)linuxfocus.org>

Об авторе:

Автор заметки, Katja Socher, является редактором немецкого выпуска журнала LinuxFocus. Она обожает пингвинов по имени Tux ;), увлекается компьютерной графикой, фотографией и кино и очень любит море. Ее домашняя страничка находится здесь.



Перевод на Русский:
Евсиков Сергей Вячеславович <yevsikov(at)mail.ru>

Содержание:

 

Осваиваем 3d-графику с Blender'ом: первые шаги

[ Шар, куб, сцена, пингвины... ]

Резюме:

Эта заметка открывает собой серию статей, посвященных обсуждению техники трехмерного моделирования (позднее, возможно, и анимации) с помощью программы Blender — уникального в своем роде инструмента для работы с трехмерной графикой. В настоящей статье мы лишь коснемся только самых основ, а также создадим наш первый трехмерный проект, который будет служить основой для последующих проектов.

_________________ _________________ _________________

 

Осваиваем 3d-графику с Blender'ом: первые шаги

Не так давно Blender наконец-то стал распространяться с открытыми исходными кодами! Настало время поближе познакомиться с этим замечательным инструментом, позволяющим реализовать самые сложные задумки и идеи. Огромное число разнообразных возможностей, настроек, параметров и кнопочек способно привести новичка, никогда ранее не пользовавшегося Blender'ом (или другим инструментом 3d-графики), в замешательство. А посему давайте начнем с самих основ.

В некотором смысле работу с трехмерной графикой можно сравнить с процессом фотосъемки (или киносъемки, если речь идет о трехмерной анимации). Вначале фотограф выбирает объект, который он хочет снять, и помещает его в некоторую среду (которая называется фоном или сценой); затем он подсвечивает объект с помощью источников света и настраивает свою камеру на объект; после этого происходит собственно съемка. Все то же самое справедливо и для создателя трехмерной графики: ему тоже требуется некоторый объект для «съемки», и он точно так же использует сцену, источники освещения и камеру. Финальной частью в работе с трехмерной графикой является рендеринг (визуализация), при котором компьютер просчитывает модель и создает готовое трехмерное изображение.

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

Взяв за основу несколько форм (которые в Blender'е называются «примитивами»), вы, с помощью специальных инструментов, сможете создавать свои, достаточно сложные, объекты и модели.

Итак, для начала, наверное, теории достаточно — пора применить наши знания на практике. Ключ на старт — поехали!

 

Рабочее пространство Blender'а

После запуска Blender'а (на момент написания статьи последней доступной версией была 2.27; скачать Blender можно с сайта http://www.blender.org) вы увидите экран, по умолчанию разделенный на два окна — большее (назовем его рабочим) и меньшее (назовем его служебным), как показано на следующем рисунке.

[ Рис. 1. Загружаемый по умолчанию экран программы Blender ]
Рис. 1. Загружаемый по умолчанию экран программы Blender

Служебное окно сплошь усыпано мелкими кнопками, в то время как рабочее окно практически пустое: в нем мы будем создавать нашу трехмерную модель.
В нижнем меню рабочего окна найдите кнопку с изображенной буквой «T» на оранжевом фоне. Эта буква указывает на то, что текущий вид в рабочем окне — вид сверху (Top). С помощью данной кнопки можно переключиться на вид спереди (Front) или сбоку (Side).

В процессе построения трехмерной модели требуется постоянно видеть ее со всех трех сторон. Для этого разобьем рабочее окно на три малых, каждое со своим видом. Поместите курсор мыши над горизонтальной линией, разделяющей рабочее и служебное окно, курсор мыши при этом изменится на двойную вертикальную стрелку. Щелкните по линии средней (или правой — прим. перев.) кнопкой мыши, в результате чего появится небольшое окошко, предлагающее разделить область (Split Area) либо, наоборот, объединить области (Join Areas). Для нашего случая нужно выбрать пункт Split Area. Установите появившуюся вертикальную линию примерно по середине окна и подтвердите свой выбор нажатием левой кнопки мыши. Теперь одну из половинок окна (например, правую) разделим по горизонтали еще на две части. Поместите курсор мыши над вертикальной линией, разделяющей два только что созданных нами окна, курсор мыши при этом изменится на двойную горизонтальную стрелку. Чуть сдвиньте курсор вправо — так, чтобы большая часть двойной стрелки оказалась по правую сторону от вертикальной линии (тем самым мы указываем программе делить правую, а не левую половинку окна — прим. перев.). Щелкните по линии средней кнопкой мыши, выберите пункт Split Area и установите появившуюся горизонтальную линию так, как показано на рис. 2. Теперь в каждом из окон необходимо установить свой вид: в левом окне установите вид спереди, в правом верхнем — вид сверху, в правом нижнем — вид сбоку. Итак, мы имеем три рабочих окна и одно служебное.
[ Рис. 2. Экран Blender'а с тремя разными видами модели ]
Рис. 2. Экран Blender'а с тремя разными видами модели

Заметим, что горизонтальное меню, в котором находится кнопка переключения вида и другие кнопки, называется панелькой (header) окна моделирования. Щелкнув по панельке правой кнопкой мыши, можно выбрать ее месторасположение относительно окна (сверху (Top), снизу (Bottom) или отсутствует (No Header)). Чтобы вернуть отсутствующую панельку, следует встать на разделительную линию (как мы делали это ранее), щелкнуть по ней средней или правой кнопкой мыши и выбрать из меню пункт Add header.

Итак, мы немного изменили рабочую среду. Давайте теперь создадим наш первый простенький проект со многообещающим названием «Пол со стеной» :) Начнем с камеры, чтобы хоть как-то ориентироваться в нашем виртуальном трехмерном пространстве…

 

Камера

Если в ходе наших предыдущих экспериментов вы случайно (или намеренно) удалили камеру (объект в виде маленького треугольника — см. рис. 2), то нужно создать новую. Для этого встаньте мышью над окном «Вид сверху» (это важно: окно, над которым в данный момент находится курсор мыши, становится активным — прим. перев.), нажмите клавишу «Пробел» и выберите «ADD --> Camera». Нажмите клавишу «g» и переместите камеру примерно в ту же позицию, что на рис. 2. Подтвердите свой выбор нажатием левой кнопки мыши.

 

Трехмерная сцена

 

Пол

Встаньте мышью над окном «Вид сверху», нажмите клавишу «Пробел» и выберите «ADD --> Mesh --> Plane». На месте курсора в виде красно-белого кружка с перекрестием появится плоскость. Точно так же любой другой объект, который вы будете добавлять в сцену, будет позиционироваться в то место, где находится красно-белый курсор. Сам курсор можно перенести, просто щелкнув левой кнопкой мыши в нужное место окна.

Добавив плоскость, мы автоматически перешли в режим редактирования вершин, в котором можно работать с каждой вершиной объекта по отдельности. Активные вершины при этом подсвечиваются желтым цветом, а неактивные — фиолетовым. Теперь нужно увеличить плоскость, и так как режим редактирования для этой операции необязателен, выйдем из него с помощью клавиши «Tab» (разумеется, можно было бы отмасштабировать плоскость и в режиме редактирования, но есть более удобный способ сделать это). Плоскость осталась активной, но теперь ее граница окрасилась в розовый цвет. Нажмите клавишу «s» и двигайте курсор мыши в сторону от плоскости, что приведет к увеличению ее размера. Нажмите левую кнопку мыши, чтобы зафиксировать новый размер.

Заметим, что в Blender'е отсутствует давно ставшая привычной в других приложениях операция отмены (Undo). Точнее, такая операция есть, но она несколько своеобразна (пусть все-таки стакан будет наполовину полон, чем наполовину пуст :) — прим. перев.). Например, если в процессе масштабирования объекта вы решили вернуться к исходному его размеру, то нужно завершить эту операцию нажатием не левой, а правой кнопки мыши (либо клавишей «Esc» — прим. перев.). В результате объект примет свои старые размеры. Будьте внимательны: если вы ошиблись и нажали левую кнопку мыши, отмену выполнить невозможно. Единственный совет в этой ситуации — сохраняться перед тем, как будет производиться ответственная операция (как это сделать, будет сказано ниже).

Теперь встаньте мышью над окном «Вид сбоку», нажмите клавишу «g» и сдвиньте плоскость так, чтобы она оказалась чуть ниже камеры.

Теперь раскрасим наш пол зеленым цветом. В панельке служебного окна, которое сплошь усыпано разнообразными кнопочками, найдите кнопку «Material» (на ней изображена красная сфера) и нажмите ее. Затем в этой же панельке разыщите кнопку с ма-а-леньким белым прямоугольничком, нажмите на нее и выберите пункт ADD NEW для добавления нового материала (см. рис. 3). В левой части служебного окна разыщите регуляторы, с помощью которых задаются RGB-значения для цвета объекта. Чтобы окрасить плоскость пола в зеленый цвет, установите бегунок регулятора «R» в значение 0, регулятора «G» — в значение 1 и регулятора «B» — в значение 0.

[ Рис. 3. Некоторые наиболее важные элементы управления ]
Рис. 3. Некоторые наиболее важные элементы управления

Обратите внимание: проект, загружаемый Blender'ом по умолчанию, уже может содержать в себе одну плоскость. Если нужно удалить эту плоскость, выделите ее правой кнопкой мыши и нажмите клавишу «x».

 

Задняя стена

Теперь, когда вы освоились с простейшими операциями, добавление задней стены не составит больших проблем. Встаньте мышью над окном «Вид спереди», нажмите «Пробел» и выберите «ADD --> Mesh --> Plane». Нажав клавишу «Tab», выйдите из режима редактирования вершин и с помощью клавиши «s» увеличьте плоскость до нужного вам размера. Встав мышью над окном «Вид сбоку» и нажав клавишу «g», сдвиньте плоскость вправо, чтобы она находилась подальше от камеры.

Чтобы окрасить стену в синий цвет, вновь нажмите кнопку «Material» с изображенной на ней красной сферой. Далее нажмите кнопку с белым прямоугольником и выберите пункт ADD NEW, чтобы добавить новый материал. Для получения синего цвета установите бегунок регулятора «R» в значение 0, регулятора «G» — в значение 0, регулятора «B» — в значение 1.

[ Рис. 4. Примерно так должна выглядеть ваша сцена ]
Рис. 4. Примерно так должна выглядеть ваша сцена
 

Да будет свет!

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

Воспользуемся стандартной схемой освещения от трех источников света. Встаньте мышью над окном «Вид спереди», нажмите «Пробел» и выберите «ADD --> Lamp». В панельке служебного окна нажмите кнопку «Lamp» (с изображенной лампочкой). По умолчанию для источника света устанавливается тип Lamp (лампа), но для первого источника освещения нам нужен тип Spot (световое пятно), так как только с помощью него можно получить тени от объектов. Итак, разыщите в служебном окне кнопку с надписью «Spot» и нажмите ее. Теперь, путем поворотов и перемещений источника света, добейтесь примерно такой же картины, как на рис. 5. Для этого встаньте мышью над окном «Вид сбоку», нажмите клавишу «g» и перетащите источник света влево вверх. Затем в окне «Вид сверху» нажмите клавишу «g» и перетащите источник вправо, после этого нажмите клавишу «r» и поверните его влево. Наконец, в окне «Вид сбоку» нажмите клавишу «r» и поверните источник книзу. Таким образом, путем различных манипуляций мы добились того, что свет будет падать на сцену спереди сверху с правой стороны («Источник © 1» на рис. 5).

Теперь нужно подсветить заднюю часть сцены. Для этого разместите второй источник света так, как это показано на рис. 5 («Источник © 2»). Тип его оставьте по умолчанию (Lamp).

Наконец, нам нужен третий источник света для осветления слишком темных мест (fill in the dark spots) на сцене. Обычно этот источник помещают позади камеры. Так и сделаем («Источник © 3» на рис. 5).

Если вы хотите изменить яркость какого-либо из источников освещения, найдите в служебном окне параметр Energy и поиграйтесь с различными его значениями.

[ Рис. 5. Сцена Blender'а после добавления источников света ]
Рис. 5. Сцена Blender'а после добавления источников света


 

Визуализация (рендеринг)

Итак, мы закончили создание базового проекта, который будет служить основой для последующих проектов. Теперь самое время взглянуть на результаты нашей работы. Нажмите клавишу F10 или кнопку «Display» в панельке служебного окна. Задайте желаемые размеры SizeX и SizeY выходного изображения; лично я предпочитаю следующие значения: SizeX: 640, SizeY: 480 — с одной стороны, этого более чем достаточно, чтобы рассмотреть всю картину в мельчайших подробностях, с другой стороны, время рендеринга такой сцены относительно невелико. Чтобы отображались тени от объектов, нажмите кнопку Shadows. Как правило, при рендеринге сложной, комплексной сцены немало времени уходит на просчет теней, поэтому я включаю параметр Shadows только по необходимости. На данный момент модель не содержит ни одного объекта, который бы мог отбрасывать тени, поэтому кнопку Shadows пока можно не трогать. Наконец, чтобы выполнить собственно рендеринг, нажмите кнопку RENDER либо клавишу F12. Откроется новое окно, где через некоторое время отобразится созданная вами сцена. С помощью клавиши F11 можно переключаться между этим окном и главным окном Blender'а (без рендеринга).

 

Сохранение проекта в формате blend

Теперь я предлагаю сохранить нашу работу в файле с расширением .blend. Мы будем использовать этот проект в дальнейшем при создании новых работ. Чтобы сохраниться, выберите пункт File, затем Save As и сохранитесь под именем, которое предлагает Blender, либо под любым другим (проверьте, что в конце имени файла стоит расширение .blend).

 

Добавляем сферу и куб

Потренируемся еще чуть-чуть — добавим в сцену сферу и куб.

Для добавления сферы встаньте мышью над окном «Вид спереди» нажмите клавишу «Пробел», выберите «ADD --> Mesh --> UVsphere»; число сегментов (Segments) и колец (Rings) оставьте по умолчанию (32). Для выхода из режима редактирования вершин нажмите клавишу «Tab». Чтобы окрасить сферу в красный цвет, нажмите кнопку «Material» либо клавишу F5, щелкните кнопку с маленьким белым прямоугольником, выберите из появившегося меню пункт ADD NEW. Установите бегунок регулятора «R» в 1, регуляторов «G» и «B» — в 0.

Поместите сферу в центр сцены и нажатием клавиши F9 перейдите в режим «Edit». В служебном окне найдите красный квадратик и в том же столбце, в самом низу, нажмите кнопку с надписью «Set Smooth». Параметр Set Smooth дает указание сфере сглаживать свою поверхность при рендеринге.

Теперь добавьте куб: как обычно, встаньте мышью над окном «Вид спереди» нажмите клавишу «Пробел», последовательно выберите «ADD --> Mesh --> Cube», после чего раскрасьте куб в желтый цвет (R = 1, G = 1, B = 0).

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

В Blender'е с помощью специальной группы кнопок можно задать центр, относительно которого будет осуществляться поворот или масштабирование. Например, если нажать первую кнопку (см. рис. 6), то объект будет поворачиваться или масштабироваться относительно центра воображаемого параллелепипеда, окаймляющего (описывающего) все выделенные объекты. Если переключиться на третью кнопку, то поворот или масштабирование будут осуществляться относительно красно-белого курсора.

[ Рис. 6. Группа кнопок, задающих центр для поворота/масштабирования ]
Рис. 6. Группа кнопок, задающих центр для поворота/масштабирования

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

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

 

Сохранение полученного изображения в формате jpeg

Возможно, вам захочется сохранить полученную картинку в каком-либо графическом формате, чтобы в дальнейшем распечатать ее или выложить на свой веб-сайт. Перейдите в режим «Display» (клавиша F10 или кнопка «Display»). В левом верхнем углу служебного окна имеется строка, где прописан путь «//render/» (или что-то похожее), по которому будут сохраняться готовые изображения; в этой строке вы можете указать свой путь, только убедитесь, что он реально существует, иначе Blender не сохранит вашу работу и не выдаст сообщения об ошибке. Нажмите кнопку OSA (oversampling, оверсэмплинг) и, под ней, одну из кнопок с числом; чем больше число, тем выше качество выходного изображения (и тем длительнее процесс рендеринга). Оверсэмплинг в трехмерной графике выполняет примерно ту же функцию, что и сглаживание (антиалиасинг, antialiasing) в двумерной графике. Далее, чтобы получить тени, нажмите кнопку Shadows. Поменяйте параметр End: 250 на End: 1, поскольку наша сцена представляет собой статическое изображение, состоящее из одного кадра, а не анимационную последовательность из 250 кадров. Укажите размеры SizeX и SizeY выходного изображения; формат, в котором будет сохранено изображение, смените на Jpeg (или другой доступный) и задайте в процентах его качество (Quality). И, наконец, нажмите кнопку ANIM, в результате чего изображение после рендеринга будет сохранено в файле на жестком диске (обратите внимание: в имени файла будет отсутствовать расширение .jpg).


[ Рис. 7. Конечный результат ]
Рис. 7. Конечный результат

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

Удачи! :)
 

Ссылки

 

Страница отзывов

У каждой заметки есть страница отзывов. На этой странице вы можете оставить свой комментарий или просмотреть комментарии других читателей
 talkback page 

<--, перейти к начальной странице выпуска

Webpages maintained by the LinuxFocus Editor team
© Katja Socher, FDL
LinuxFocus.org
Translation information:
en --> -- : Katja Socher <katja(at)linuxfocus.org>
en --> ru: Евсиков Сергей Вячеславович <yevsikov(at)mail.ru>

2004-01-05, generated by lfparser version 2.43