Чем удобна предложенная вашему вниманию программа? Ведь что ни говори, но в стране сложилась удивительная ситуация. Многие знают, что существует редактор 3ds Max, многие считают себя специалистами трехмерного моделирования, работая именно с этим редактором, но количество купленных легально пакетов ничтожно мало. С Cinema картина иная. Об этой программе знает меньше людей, но в стране есть законные владельцы данного пакета, хотя их количество могло бы быть и больше. Работая с 3D-пакетами, вы наверняка обращали внимание на то, что некоторые из них слишком уж «тормозят», особенно когда приходится иметь дело с большими файлами и детализированными объектами. Попробуйте ввести такой объект в среду Cinema, и вы увидите, что программа достаточно легко управляет файлами больших размеров, не «вылетая» при этом и не зависая. Это очень важно, если вы хотите получить от своей деятельности нужный результат. К тому же интерфейс редактора легко перенастраивается, каждый из элементов инструментария, образно говоря, лежит на своей полочке, совершенно различные по назначению инструменты не перемешаны, не свалены в одну кучу. Вводить в сцену объекты и модификаторы можно из меню, используя пиктограммы, многие функции доступны через контекстные меню, вызываемые правой кнопкой мыши. Передвигать объект допустимо одной лишь мышкой, используя обе кнопки и колесико прокрутки, для управления камерой служат они же, но при нажатой клавише Alt. Подобное управление знакомо по работе с Maya, с которой много общего и при выполнении ряда более сложных преобразований.

С чего начать статью, чтобы, прочитав ее, вы смогли научиться работать с основными инструментами данной программы и моделировать трехмерные объекты? Это вовсе не праздный и не риторический вопрос, ведь, как это принято большинством авторов книг и статей, призванных помочь человеку овладеть какой-либо программой, здесь также можно было бы долго и нудно рассказывать об основных операциях, командах меню, настройках вида окна программы, о том, как открывать документы и вводить в сцену новые объекты… В общем, прочитав вроде бы новый для себя материал, читатель в очередной раз так и не понял бы, как же работать с понравившейся ему программой. Поэтому не будем отвлекаться на то, что и так известно продвинутому пользователю. В крайнем случае узнаете сами. Замечу только, что и в самых, казалось бы, общеизвестных и простых командах скрываются порой некоторые нюансы. Ну например. Какая операция подразумевается под командой File • Merge (ввести, поместить)? То же самое, что и при операции Paste (ввести в документ объект, фрагмент изображения, информацию о состоянии объекта и др., скопированное из буфера)? Нет. Впрочем, ничего сложного, Merge — это аналог команды Import (импорт), и с ее помощью в сцену можно ввести новый объект. В качестве такового может выступать трехмерная модель какого-либо из воспринимаемых форматов, двумерное изображение, кривая и др. Более подробно о командах Import, Merge и ряде других читайте во врезке «Малоизвестное об общеизвестных командах». Но давайте, как и было обещано, после минимума важной и необходимой информации поскорее перейдем к конкретным вещам, которые позволят нам вместе осуществить задуманное. И еще не помешало бы вам прочесть статью о Cinema 4D 10-й версии, опубликованную в журнале «Мир ПК», №10/07, с. 95.

Примитивы, группирование и модификаторы

Очень часто сложные на первый взгляд трехмерные объекты создаются самыми простыми способами. Речь идет о простейших преобразованиях, в основе которых лежат такие операции, как изменение позиции объекта (перемещение и вращение), изменение его размеров по одной, двум или трем осям, группирование. Для наглядности представьте себе: если шар вытянуть по одной из осей, а по двум другим сжать, по форме он станет напоминать копье. Для большей схожести понадобятся текстуры, а после применения карты выпуклостей или небольших изменений полигональной сетки с помощью магнита объект действительно будет походить на копье. Группирование относится к простейшим методам моделирования, но с его помощью создаются здания, различные сооружения, военная техника и многое другое. Например, чтобы изобразить булаву, понадобятся такие примитивы (подробнее о примитивах см. ниже), как шар, несколько конусов, два-три цилиндра. При построении зданий чаще всего используют такие примитивы, как куб, несколько реже — шар, конус, капсулу, тор, цилиндр…

Рис. 1. Модели, созданные группированием примитивовКакие-то из способов моделирования трехмерных моделей могут быть относительно сложными, какие-то  — довольно простыми. Иногда очень сложная внешне трехмерная модель создается прямо на глазах, но чаще всего для этого требуется немало времени. На рис. 1 показаны объекты и здания, построенные студентами и слушателями, изучившими основы трехмерного моделирования и базовые прин-ципы моделирования в Cinema 4D. Все модели собраны из примитивов чаще всего с помощью группирования и булевых операций, примитивы изменялись в размерах, им задавалось требуемое положение в пространстве, им скругляли фаски и проч. Реже применялись выдавливание, выдавливание из сплайна, операция Lather, посредством которой сплайн методом вращения преобразуется в объект вращения — купол, и др. Также использовались массивы, клонирование, зеркальное отражение…

На что еще стоит обратить внимание, прежде чем приступить к работе с редактором Cinema 4D? Для выделения объекта следует щелкнуть по нему или по его надписи (пиктограмме) в менеджере Objects (менеджер объектов) (рис. 2, пикт. 3). Команда Delete удаляет выделенный объект. Обычно после ввода примитива в сцену с ним сразу можно выполнять операции по его преобразованию. Во многих случаях такой подход эффективен и в C4D. Но для получения доступа к ряду сложных преобразований необходимо сначала выполнить команду Make Object Editable («горячая» клавиша C или щелчок по пиктограмме 2 на рис. 2).

Рис. 2. Расположение основных элементов управления программы Cinema 4D 10-й версии. Показан вид окна в режиме Standard

И еще. В Cinema 4D по умолчанию используются единицы измерения в метрах (м). Но вы имеете возможность назначить такую единицу измерения, которая вам потребуется. Конечно же, эти единицы виртуальные и относительные. На экране монитора вы не увидите разницы во внешнем облике объектов и моделей, задав единицу измерения в миллиметрах, метрах, километрах… Внешне ничего не изменится по той причине, что автоматически и пропорционально изменятся все размеры всех объектов. Но если вы импортируете объект, созданный в другом редакторе или с другими установками, может случиться, что он окажется довольно большим или маленьким по сравнению с вашими сооружениями. В этом случае, образно говоря, все размеры следует привести к единому знаменателю, т. е. выбрать такую единицу измерения, которая для данного случая является наиболее подходящей и соответствует уже заданным параметрам. Разница в размерах может быть колоссальной, чаще всего в 100 или 1000 раз. Это примерно то же самое, как если бы сравнивались два объекта длиной в 100 единиц каждый, но в одном случае единица равна 1 мм, а в другом — 1 м. Тот, кто вводил объекты, например, из Poser в Cinema 4D или 3ds Max с установками, заданными разработчиками, мог столкнуться с подобной проблемой. Правильный подбор единиц измерения также важен при выполнении точных построений по чертежам, когда моделируемые объекты сравниваются и взаимосвязаны.

Примитивы (Primitives)

Примитивы — простые трехмерные объекты, преобразуя и сочетая которые получают более сложные формы. Примитивы входят в библио-теки любого редактора трехмерной графики. В качестве примитивов чаще всего выступают шар, куб, тор, конус, цилиндр, плоские фигуры в виде квадрата, круга или треугольника, а также более сложные объекты. Выбираются примитивы в Cinema 4D посредством команды меню: Objects • Primitive • Cone (Cube, Cylinder, Sphere, Capsule или другой примитив из предложенного списка). Другой способ их ввода в сцену подразумевает щелчок по пиктограмме в виде куба (рис. 2, пикт. 1). Стоит обратить внимание на ряд особенностей, которые следует учитывать, воздействуя на примитивы с помощью модификаторов. Дело в том, что каждый из объектов (примитивов) имеет свои настройки, которые можно изменять, как и настройки модификаторов. От того, какие значения заданы для каждого из параметров того или иного примитива, зависит и результат вашей деятельности. Поэтому, прежде чем продолжить работу, присмотритесь к предлагаемым разработчиками примитивам повнимательнее. Более того, запомните приведенное ниже правило и не пренебрегайте им. Всегда начинайте работу с изучения свойств того или иного примитива, того или иного модификатора, чтобы в дальнейшем использовать полученные сведения наиболее эффективно. К сожалению, сколько же лишней работы проделывают начинающие специалисты 3D-моделирования только из-за того, что они с ходу берутся за дело, не утруждая себя изучением тех самых свойств используемых ими объектов. Особенно это касается случаев, когда строятся сложные трехмерные модели. Происходит накопление ошибок, на исправление которых уходит масса времени, а то и вовсе всю работу приходится выполнять заново. Рассмотрим же поподробнее некоторые из примитивов.

Шар (Sphere)

Рис. 3. Распределение полигонов при построении шара может быть разнымПо умолчанию объект Sphere состоит из 24 сегментов (полигонов). Это значение прописывается в менеджере Attributes (атрибуты, установки), рис. 2 справа, пикт. 5. Чтобы поверхность шара выглядела более гладко, количество сегментов увеличивают. Чем их больше, тем точнее выполняются преобразования, тем более детализированной может быть конечная модель. Стоит заметить, что большое количество полигонов требует и повышенных требований к ресурсам и оборудованию. Именно по этой причине для моделей, используемых в компьютерных играх и выступающих в качестве виртуальных актеров второго плана при создании кинофильмов, количество полигонов, из которых они состоят, ограничивают. Как известно, полигоны чаще всего бывают трех- и четырехугольными, реже  — многоугольными. Состоят они из вершин, граней и собственно плоскости полигона. Воздействовать допустимо на любой из элементов полигона. Есть еще такой элемент, как нормаль, — вектор, направленный перпендикулярно к поверхности полигона. Именно исходя из положения нормали выстраивается изображение объекта, учитывается степень и направление освещения, распределение теней и пр. Существуют полигоны односторонние и двусторонние. Первые характеризуются тем, что имеют лишь одну нормаль, и направлена она к плоскости полигона с одной стороны. По этой причине такой полигон с одной стороны виден, а с другой — нет. Точно так же и шар или иной объект, построенный из односторонних полигонов, отображается лишь с наружной стороны. Изнутри такого объекта полигоны увидеть нельзя. У двусторонних полигонов нормали направлены к его плоскости с двух сторон, соответственно модель, созданная из таких полигонов, видна как снаружи, так и изнутри. Есть следующие типы построения объекта Шар с помощью полигонов: Standard, Tetrahedron, Hexahedron, Octahedron, Icosahedron, Hemisphere. Как можно видеть (рис. 3), распределение полигонов в зависимости от выбранного типа построения меняется. Это обстоятельство можно использовать при полигональном моделировании трехмерных моделей, выбирая наиболее удобное распределение полигонов. Например, для моделирования головы персонажа, возможно, лучше выбрать тип Tetrahedron или Hexahedron, а не Standard.

Куб (Cube)

Этот примитив изначально имеет всего лишь по одному сегменту на каждую из своих сторон (Segment по X, Y, Z равно 1, см. менеджер Attributes, колонка Object). Если в дальнейшем с моделью, основанной на таком кубе, не будут выполняться сложные преобразования, можно оставить данные значения без изменений. В противном случае количество разбиений нужно увеличивать. Говоря другими словами, если из куба создается стена здания или само здание, стены которого не имеют сложных выступов, не стоит усложнять себе задачу — оставьте предлагаемые установки без изменений. Но если куб подвергается сложным деформациям и преобразованиям, операциям, связанным с полигональным моделированием, количество сегментов нужно увеличивать. Впрочем, эту операцию можно оставить и на потом. Cinema располагает инструментарием, например HyperNURBS, благодаря которому можно выполнять сложные построения и позже. Обратите также внимание на команды Fillet (фаска, скругление кромки, грани), Fillet radius (радиус скругления), Fillet Subvision (количество разбиений: чем их больше, тем более плавно выглядят элементы закруглений). С их помощью можно легко превратить куб, например, в подушку для дивана.

Конус (Cone)

Рис. 4. Спускаемый аппарат КК «Союз» и летающая тарелка не что иное, как слегка преобразованные примитивы Cone и TorusЕще один примитив, на который предлагаю вам обратить внимание, — конус. Его характеристики позволяют ему легко превращаться в усеченный конус или цилиндр. Начальные установки подразумевают, что верхний радиус (Top radius) рассматриваемого объекта имеет значение, равное нулю. Если увеличить это значение, мы получим усеченный конус, а если верхний и нижний диаметры (Bottom radius) будут равны, конус станет цилиндром. Влияя на кромку (Fillet), подобрав нужные значения для верхнего и нижнего радиусов, конус можно превратить, например, в капсулу спускаемого аппарата космического корабля «Союз»
(рис. 4).

Тор (Torus)

Иногда тор называют кольцом. Геометрически его образовывает окружность (круг) или эллипс при движении по направляющей в виде окружности или эллипса, как правило, несколько большего диаметра по сравнению с образующим объектом. Если уменьшить количество элементов тора, образующих кольцо Ring Segments, до трех—шести, можно получить плавательный надувной круг. Если же уменьшить до трех или четырех количество элементов Pipe Segments (сегментов образующего кольца) и увеличить радиус Pipe Radius (дословно  —  радиус трубы, по сути — радиус образующего кольца), тор станет напоминать летающую тарелку (рис. 4).

Другие примитивы и их параметры предлагаю вам изучить самостоятельно. Среди них вы также найдете и более сложные объекты, например Landscape и Relief, благодаря которым можно создавать ландшафтные поверхности и рельефы. Второй из этих двух объектов преобразовывается в рельефную поверхность с помощью карты выпуклости (Bump).

Попробуйте на примере 1 научиться создавать модели, используя только группирование.

Пример 1

  1. В результате должна получиться стрела — примерно такая, как на рис. 5. Откройте редактор Cinema 4D, введите в сцену объект Cylinder. По умолчанию он ориентирован по оси Y, если это не так, установите требуемое в менеджере объектов (Orientation +Y).
  2. В менеджере объектов введите значения Radius — 10 m, Height — 1000 m. В результате цилиндр примет вид древка (нарочно делаем его не слишком длинным).
  3. Введите объект Cone и в менеджере объектов проставьте значение Bottom Radius (внутренний радиус) — 20 m, тем самым уменьшив размеры (толщину) будущего наконечника стрелы.
  4. В менеджере Coordinates (координаты) в графе Position (позиция), см. рис. 2, задайте значение Y = 520 и нажмите Apply (применить). Конус должен переместиться вверх, к самой верхней части цилиндра. Можно поступить иначе: с помощью Move Tool (инструмент перемещения) переместить объект по зеленой стрелке, соответствующей оси Y, вверх.
  5. Введите объект Capsule. Действуя по аналогии с пунктом 4, в менеджере координат установите значение по оси Y 455 m и выполните команду Apply. Капсула должна переместиться к нижней части древка.
  6. Выполните команду Make Object Editable (объект Capsule должен быть выделен).
  7. В менеджере координат в графе Size (размер) установите X = 10 m, Z = 50 m и примените команду Apply. Таким образом мы создали оперение стрелы.
  8. Используя менеджер объектов, выделите все три преобразованных примитива и, нажав на правую кнопку мыши, через контекстное меню примените команду Group Objects (группировать, «горячие» клавиши + G). После этого создается нуль-объект (Null Objects), объединяющий все выделенные объекты.

Как работать с модификаторами?

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

На «Мир ПК-диске» приводится несложный пример, помогающий понять принципы некоторых преобразований в C4D. Во избежание некоторой путаницы стоит оговориться, что трехмерный редактор (кстати, это касается не только Cinema 4D) и примитивы, и модификаторы воспринимает как объекты. Поэтому вольно или невольно для описания той или иной операции приходится использовать одни и те же термины: объект-модификатор, объект-примитив и т. п.

Об авторе Виктор Солодчук — писатель, художник, журналист.


МалоизвестныЕ подробности об общеизвестных командах

Команды Copy, Paste

Команда Paste ( + P) активизируется после выполнения команды Copy (копирование, + C). Да, эти команды взаимосвязаны и обычно отнесены к меню Edit (редактирование). Если вы работаете с редактором растровой графики, по команде Copy копируется изображение или выделенный фрагмент изображения, которые можно поместить в документ, открытый не только данным редактором, но и другим. То есть если вы скопировали изображение в Paint, можете поместить его в документ Adobe Photoshop. Имейте в виду важное обстоятельство: Adobe Photoshop автоматически настраивает размер нового документа под размер копируемого фрагмента изображения. Это важно при «фотографировании» диалоговых окон по команде + , так как не нужно заниматься подгонкой размеров документа под размер изображения.

При работе в текстовых редакторах в случае необходимости по команде Copy копируется выделенный фрагмент текста, который в дальнейшем допустимо редактировать в графическом редакторе. Если после этого вы откроете Adobe Photoshop, информация из буфера будет доступна для ее использования в данной программе. Что интересно, она (информация) воспринимается по-разному в зависимости от того, в каком режиме вы работаете. Так, при работе с текстом по команде Paste ранее скопированный текст будет помещен в указанное вами место и в дальнейшем его можно редактировать — заменять слова, менять шрифт и т. п., если только это допустимо для выбранного редактора в данном режиме. Однако во всех других случаях после выполнения команды Paste образуется новый слой, куда будет помещен ранее скопированный текст. Разница в том, что этот текст воспринимается как растровое изображение, иначе говоря, как картинка. Соответственно текст-изображение не может быть редактируемым именно как текст.

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

Также в ряде редакторов копируется не сам объект, а информация о его местоположении в пространстве (координаты) и данные, касающиеся изменения его размеров по каждой из осей и т. п. Это позволяет перенести имеющиеся данные на другой объект, автоматически размещенный в том же месте, в той же позиции и с теми же настройками размеров, что и первичный, информация о котором была использована как основа для расположения вводимых в сцену объектов. Стоит отметить, что информация переносится не только на одинаковые примитивы. Например, если вы поместите куб в определенное место, повернете его на 45о по оси X, увеличите его размеры по оси Y в 2 раза, то в дальнейшем вся эта информация при необходимости переносится на шар, конус или любой другой примитив.

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

Кстати, указанные команды в одном и том же редакторе способны работать по-разному в зависимости от выбранного режима. Так, в трехмерных редакторах они могут копировать двумерное изображение в режиме рендеринга, трехмерный объект (или информацию о нем) при работе в трехмерной сцене. Также могут быть скопированы видеофрагменты, звук, треки анимации…

Команды Import, Place, Merge, Export

В общем-то Import и Merge — это разное обозначение одной и той же команды, по которой тот или иной редактор позволяет вводить в открытый документ трехмерные объекты, двумерные изображения, сплайны, текст, звук, видеофрагмент, информацию о движении, морфах, иерархию, анимационные сцены и др. Команду Place используют разработчики компании Adobe. Она расширяет возможности команды Import в среде популярных редакторов Photoshop и Illustrator.

Как правило, программы открывают документы «своих» форматов. Редакторы растровой графики — растровые изображения форматов TIFF, PSD, JPEG, PNG, BMP и др. Если речь идет о трехмерных редакторах, они чаще всего открывают только «свои» файлы и могут сохранять документы также лишь в этих форматах. Но есть исключения, и в последнее время список подобных программ расширяется. Например, редактор Carrara, который сейчас принадлежит компании DAZ 3D, способен открывать и сохранять документы в ряде широко распространенных трехмерных форматов.

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

В свою очередь команда Export расширяет список форматов, в которых тот или иной редактор может сохранять документ. Благодаря этой команде редакторы векторной графики сохраняют документы в растровых форматах. Популярная программа Flash (ее владельцем ныне является компания Adobe) сохраняет файлы в формате SWF — он используется для публикаций в Интернете именно по команде Export.