УДК 0.049
Егорова И. Н., ИССЛЕДОВАНИЕ ПРОГРАММНЫХ СРЕД
Гахдамащук л. в. 3В-МОДЕЛИРОВАНИЯ
Проведено исследование программных пакетов трехмерного моделирования Autodesk 3D Maya, Autodesk 3Ds MAX, Pixologic ZBrush. Создана компьютерная сцена с трехмерными элементами, разработанными средствами исследуемых программных пакетов. Разработаны практические рекомендации по наиболее эффективному их применению, которые могут быть использованы как профессионалами, так и начинающими пользователями.
Ключевые слова: трехмерное моделирование, графика, полигон, сплайн, примитив, текстури-рование, анимация, визуализация.
1. Введение
3D-моделирование представляет собой процедуру разработки 3D-модели (или же каркасной модели в виде трехмерного объекта — воодушевленного или невоодушевленного) с использованием специализированного программного обеспечения. Трехмерная модель создается посредством множества точек (Points), соединенных между собой линиями (Lines) и изогнутыми поверхностями (Curved Surfaces) [1].
Область применения трехмерного моделирования постоянно расширяется и охватывает: игры, для которых производится моделирование реалистичных персонажей и локаций; медицину — для создания детальных моделей органов человеческого тела; инженерию — для воспроизведения моделей транспортных средств, новых устройств и сооружений; кинематограф — для создания различных спецэффектов и вымышленных персонажей. В области рекламы также нередки случаи использования 3D-моделирования [2].
Необычайный интерес к играм в нынешнее время привел к тому, что производители компьютерных 3D-пакетов были вынуждены создавать все более и более совершенные приложения. Они позволили разработчикам компьютерных игр и художникам по спецэффектам в кинематографе воплощать в жизнь те идеи, которые нельзя осуществить в реальности. Новые возможности трехмерного моделирования значительно экономят время на создание персонажа в мультипликации. Программный пакет позволяет легко придать движение объекту, затрачивая при этом минимум времени [3].
Таким образом, следует отметить широкий спектр возможностей, предоставляемый современными 3D-m-кетами; простоту и дружественность их интерфейса, а также большую практическую область применения трехмерного моделирования.
2. Постановка проблемы
С целью детального исследования возможностей программных пакетов трехмерного моделирования в работе необходимо создать компьютерную сцену, содержащую трехмерные элементы. Для эффективной оценки возможностей всех исследуемых пакетов целесообразно включить в сцену локацию, смоделированную в программе Autodesk 3Ds MAX; персонаж, спроектированный
в среде ZBrush; анимацию персонажа, реализованную средствами программного пакета Autodesk 3D Maya.
Решение задачи в такой постановке затруднено необходимостью объединения всех трех результатов в готовом продукте. Предварительное исследование показало, что для каждого из анализируемых программных продуктов существуют свои наиболее эффективные области их использования. Так, Autodesk 3Ds MAX больше ориентирован на создание и визуализацию статических сцен, или же локаций, так часто используемых в игровой индустрии, в то время как 3D Maya позволяет придать движениям реалистичность. Pixologic ZBrush кардинально отличается от вышеназванных программных пакетов и позволяет создать сложные полигональные поверхности без особых усилий со стороны пользователя. Это часто используется в создании персонажей [4].
Совместное использование названных программных продуктов позволит создать реалистичную игровую сцену
3. Исследование программных пакетов трехмерного моделирования
Исследование существующих программных пакетов трехмерного моделирования осуществляется в работе с целью определения особенностей, достоинств и недостатков каждого из пакетов, а также наиболее эффективных областей их применения. Для проведения исследования в работе проанализированы наиболее популярные в настоящее время программные продукты, такие как: Autodesk Maya; Autodesk 3Ds Studio Max; Lightwave 3D;Maxon Cinema 4D; Blender;ZBrush.
Autodesk Maya — это самый востребованный на данный момент программный пакет трехмерного моделирования, отличительной чертой которого является работа с анимацией. По этой причине Maya используется в кинематографе и мультипликации для создания реалистичности.
3Ds Studio MAX ориентирован в первую очередь на создание трехмерных изображений, локаций и интерьеров. Он позволяет работать также с анимацией и моделированием персонажей, однако наиболее эффективно его использование для проектирования локаций. Именно с учетом такой направленности, данный пакет широко используется в игровой индустрии.
Lightwave 3D — еще одна программная среда, хорошо поддерживающая анимацию, обеспечивает
TECHNOLOGY AUDiT AND PRODUCTiON RESERVES — № 6/1(14), 2013, © Егорова И. H., Гайдамащук А. В.
773^)
рендеринг (визуализацию) высокого качества и глобальное освещение.
Maxon Cinema 4D — профессиональный 3D-m^T для создания анимации, позволяющий быстро переключаться между моделированием, анимацией и шаблонами.
Blender — программный пакет, находящийся в свободном доступе. Пригоден для создания мультипликационных фильмов, однако имеет ограниченные возможности для профессионального проектирования.
ZBrush — программная среда трехмерного моделирования от компании Pixologic с уникальной технологией «скульптинга», позволяющего моделировать объекты очень высокой детализации без сильных нагрузок на аппаратное обеспечение [5].
Следует отметить характеристики, являющиеся общими для всех рассмотренных программных пакетов. Так, программные продукты, разработанные с помощью этих пакетов, требуют высокой производительности аппаратной части, что не всегда возможно. Поэтому создатели игр и конечных продуктов упрощают структуру трехмерных моделей. Для этого они используют ряд методов.
Одним из них является метод «Невидимые полигоны» (Unseen polygons). В некоторых случаях пользователь не сможет увидеть некоторые части модели, поэтому удаление этих «невидимых» частей вполне целесообразно для сокращения количества полигонов и, соответственно, сокращения времени визуализации. К примеру, если персонаж все время находится в одной и той же одежде, разумно оставить его изнутри полым, состоящим лишь из отдельных частей этой самой одежды, приобретающих в целом форму человека.
Метод «Треугольники и четырехугольники» (Triangles and Quads) предполагает, что для более легких вычислений каждый четырехугольный полигон модели, импортируемой в игровой движок, разбивается на два треугольных полигона. Система производит подобную операцию путем создания новых граней, соединяющих существующие вершины на модели. И чем больше углов имеет многоугольник (полигон), тем больше существует различных вариантов разбиения его на треугольники, что может привести к усложнению модели. Если же она первоначально разбита на треугольные полигоны, системе ничего не нужно будет делать, и, по сути, так и будет выглядеть заключительная модель. Например, в случае с пятиугольным полигоном вариантов разбиения уже шесть, что значительно тормозит визуализацию [6].
Среди вышеперечисленных пакетов были выбраны Autodesk Maya, Autodesk 3Ds MAX, ZBrush. С помощью Maya может быть создана анимация на профессионально качественном уровне, 3Ds MAX дает возможность спроектировать локацию, а ZBrush, благодаря своей технологии «скульптинга», позволяет быстро создать модель/персонажа с высокой детализацией.
Использование различных программных пакетов для трехмерного моделирования компьютерной сцены целесообразно, поскольку позволяет применить каждый пакет для разработки именно того продукта, для которого он наиболее эффективен. Так, существуют примеры такого использования, когда проектирование топологии персонажа осуществлялось в программной среде ZBrush, а экспорт для текстурирования — в Autodesk Maya. Анимация реализована посредством ретопологии, т. е. перестройки модели для использования ее в игре или среде
анимации, что позволяет избежать проблем, вызванных полигонами нетреугольной и нечетырехугольной форм. В результате получена модель учителя, спроектированная в программных пакетах Zbrush и Autodesk Maya [7].
4. Математическое представление
основных операций трехмерной графики
Информация, представляющая собой трехмерную модель, в основном сосредоточена в форме полигонов (Polygons) и вершин (Vertices). Полигон представляет собой многоугольную поверхность, которая состоит из вершин, соединенных между собой линиями. Координаты полигонов хранятся в вершинах. Самая общая форма полигона — это треугольник (Triangle). Поскольку такая форма является плоской, то ее проще всего обрабатывать.
Над трехмерными моделями можно совершать трансформации (Transformations) — операции, которые изменяют координаты объекта или же его части в пространстве. Трехмерные преобразования в основном хранятся как трехмерные матрицы. Основными видами трансформаций трехмерного моделирования являются: перемещение (Translation); вращение (Rotation) и масштабирование (Scaling).
Во время перемещения все вершины объекта передвигаются вдоль одной из осей (X, Y или Z). При этом матрица перемещения выглядит следующим образом:
(1)
Вращение объекта производится вокруг оси z, оси х и может быть описано с помощью матриц (2, 3) соответственно:
x' "1 G G tx "x
у' G 1 G ty y
z' G G 1 tz z
_ 1 _ IG G G 1 _ _ 1
x' cosG -sinG G G x
y' sinG cosG G G y
z' G G 1 G z
1 G G G I 1
x' О G G x
y' G cosG - sinG G y
z' G sinG cosG G z
1 G G G 1
(2)
(3)
Масштабирование позволяет пропорционально изменить размеры объекта, если оно производится соответственно по всем направлениям. При масштабировании же по какой-то одной или паре осей не удастся пропорционально изменить модель. Матрица масштабирования представлена в следующем виде:
S=
Sx G G G
G S y G G
G G Sz G
G G G 1
S-1(SX, Sy, Sz) = S f Sk Sk S- ].
\ Sx Sy Sz J
(4)
технологический аудит и резервы производства — № 6/1(14), 2013
Таковы основные операции, производимые над трехмерными объектами, в математическом виде [8].
5. Разработка компьютерной сцены
Рассмотрим последовательно весь процесс создания компьютерной сцены с использованием анализируемых программных пакетов.
Так, для построения интерьера выбран пакет 3Ds MAX. Для построения стен берется изначальная плоскость (Plane), разбитая на равные части. В результате преобразования в Редактируемую Поверхность (Editable Mesh) эти части становятся полигонами. При изменении соотношения размеров полигонов с помощью выделения в режиме Иерархии, их можно выдавливать вверх посредством операции Extrude (Выдавливание).
Для моделирования непосредственно предметов интерьера использованы следующие модификаторы и преобразования:
— Lathe (Вращение) — для создания вазы;
— Extrude (Выдавливание) — для создания элементов типа книжные полки, окно, воспроизводимых из замкнутого сплайна;
— Преобразование примитивов с помощью булевых операций (Вычитание — Subtract) — для объекта «колонки»;
— Операции с полигонами и вершинами (Перемещение, Выдавливание, Выдавливание со скосом) после преобразования объекта в Редактируемую Полигональную Поверхность (Editable Poly), как в объектах «компьютерное кресло», «диван»;
— Модификатор Mesh Smooth (Сглаживание сетки)
— для объектов «компьютерное кресло», «диван». Компьютерная сцена включает пейзаж за окном,
который на самом деле представляет собой двухмерное изображение, расположенное по оси Z. Для создания пейзажа использованы материалы с применением растровой карты (Bitmap) в качестве процедурной, которая позволяет использовать двухмерное изображение для текстуры. Например, текстура паркета на полу, текстура дерева на столе и полках, текстура обоев на стенах, ткани — на диване и кресле [9].
Для создания персонажа (человека) выбран пакет ZBrush. Прежде всего, следует создать каркас, который затем будет использован для «вылепливания» модели. Самая удобная форма при создании каркаса — это ZSphere ^Сфера), из которой впоследствии выдавливаются и другие части (плечи, руки, тело и т. д.). Когда общая форма готова, каркас нужно преобразовать в полисетку, и уже с помощью различных скульптурных кистей (Move, Inflat, Standard add and sub) очерчиваются более узнаваемые контуры. На тех стадиях, когда с настоящим количеством полигонов нельзя добиться большей детализации, производится переход на новый уровень Divide, в результате которого каждый полигон делится на четыре. Таким способом осуществляется сглаживание модели, однако переход на новый уровень детализации целесообразен только тогда, когда на данном уровне уже ничего больше сделать нельзя. На более высоких уровнях детализации к инструментарию добавились кисти Smooth (выравнивающая), и Clay Tubes, имитирующая лепку глины. Кроме того, с целью облегчения моделирования желательно включать режим симметрии c помощью кнопки Х.
Для наложения материала в лучшем случае нужно производить развертку, которую при экспорте из ZBrush в Adobe Photoshop можно будет изменить подобающим образом. Все это возможно благодаря плагину ZAppLink [10].
Для создания анимации в Maya, необходим персонаж. В дальнейшем необходимо построить так называемый «скелет» с помощью инструмента Joint Tool посредством обычных кликов мыши. По завершению постройки скелета необходимо выбрать главную кость (Root Joint), существующую в единственном экземпляре.
Лучшая поза для последующей анимации персонажа — Т-поза (руки в стороны, лучше под прямым углом, ноги в стороны). После построения по модели персонажа его скелета нужно проверить правильность ориентированности вращательных осей (join orientation) и назвать каждый узел (кость) своим именем. Для симметричности костей на руках и ногах следует применить операцию Mirror Joint, после чего скелет будет готов.
Затем для каждой кости (узла) необходимо создать управляющие объекты из NURBS-кривых и построить иерархию, где будут присутствовать как дочерние элементы, так и родительские. Такая последовательность действий повторяется для всех частей тела, начиная от ноги и заканчивая рукой [11].
Таким образом, осуществляется построение компьютерной сцены, содержащей трехмерные элементы, созданные с применением исследуемых программных пакетов.
Результаты создания интерьера в 3Ds MAX показаны на рис. 1. Созданный с помощью Zbrush персонаж, представлен на рис. 2.
б
Рис. 1. Интерьер, созданный средствами 3Ds MAX: а — сцена в основном окне программного пакета; б — сцена, прошедшая визуализацию
TECHNOLOGY AUDIT AND PRODUCTION RESERVES — № 6/1(14), 2013
Рис. 2. Персонаж, созданный в ZBrush
6. Выводы
Исследование программных сред трехмерного моделирования показывает, что работа с названными пакетами требует высокого уровня подготовки пользователя. Проведенное в работе практическое исследование программных пакетов, таких как: Autodesk Maya; Autodesk 3Ds Studio Max; Lightwave 3D; Maxon Cinema 4D; Blender; ZBrush, позволило прежде всего выбрать наиболее эффективные из них. Таким пакетами оказались Autodesk Maya, Autodesk 3Ds Studio Max и ZBrush. Затем эти программные пакеты были использованы для создания комьютерной сцены, основными элементами которой являются: интерьер, персонаж и анимация. Практическое исследование позволило определить области наиболее целесообразного применения каждого из пакетов. Так, Maya может быть использован для создания анимации на высоком профессиональном уровне; 3Ds MAX целесообразно использовать для проектирования интерьра; ZBrush может быть применен для создания модели/персонажа с высокой детализацией.
литература
1. Anurag Ghosh. What is 3D Modeling? [Электронный ресурс] / Anurag Ghosh. — Режим доступа: \www/ URL: http:// www.wisegeek.com/what-is-3d-modeling.htm#. — 15.10.2013 г. — Загл с экрана.
2. 6 Industries that Use 3D Modeling Software [Электронный ресурс]. — Режим доступа: \www/ URL: http://www.steves-digicams.com/knowledge-center/how-tos/video-software/6-in-dustries-that-use-3d-modeling-software.html#b. — 02.11.2013 г. — Загл. с экрана.
3. Keller, E. Introducing ZBrush [Текст] / Eric Keller. — In-dianopolis, Indiana: Wiley Publishing, Inc., 2008. — 474 c.
4. Гайдамащук, А. В. Исследование программных сред 3D-мо-делирования [Текст] / А. В. Гайдамащук // XVII международный молодежный форум «Радиоэлектроника и молодежь в XXI веке». Сб. материалов форума. Т. 7. — Харьков: ХНУРЭ, 2013.
5. Aakash Singh. Best 3D Software [Электронный ресурс] / Aakash Singh. — Режим доступа: \www/ URL: http:// www.ibuzzle.com/articles/best-3d-software.html. — 10.04.2011 г. — Загл. с экрана.
6. Silverman, D. ЗБ Primer for Game Developers: An Overview of ЗБ Modelling in Games/Article [Электронный ресурс] / David Silverman. — Режим доступа: \www/ URL: http://gamedev tutsplus.com/articles/glossary^d-primer-for-game-developers-an-overview-of^d-modeling-in-games/. — 05.03.2013 г. — Загл. с экрана.
7. Прокофьева, З. Создание персонажа в Maya. Моделирование [Электронный ресурс] / Зоя Прокофьева; С.-Петерб. гос. ун-т, фак. переподготовки специалистов. — Режим доступа: \www/ URL: http://www.avalon.ru/OpenLessons/Maya /Lessons/Personage-modeling/. — 01.11.2013 г. — Загл. с экрана.
8. 3D Math Overwiew and 3D Graphics Foundations [Текст] / Multimedia Applications Devision of Freescale Semiconductors, Inc, 2010. — 16 p.
9. Flavius Cristea. Modeling & Rendering an Interior Scene using Зds Max and Vray [Электронный ресурс] / Flavius Cristea. — Режим доступа: \www/ URL: http://cg.tutsplus.com/tutorials /autodesk^d-studio-max/modelling-and-rendering-an-interior-scene-in^ds-max/. — 27.07.2010 г. — Загл. с экрана.
10. Spencer, S. Human Anatomy [Текст] / Scott Spencer, Eric Keller, Paul Gaboury. — Indianopolis, Indiana: Wiley Publishing, Inc., 2010. — З98 p.
11. Koning, W. F. Adding Controllers to a Rig [Электронный ресурс] / Wobbe F. Koning // Maya Instructions and Tutorials. — Режим доступа: \www/ URL: http^/www.ideepix.nl/aril^d /maya/?show=28/. — 05.11.201З г. — Загл. с экрана.
дослідження програмних середовищ 3D-М0ДEЛЮВAHHЯ
Проведено дослідження програмних пакетів трьохвимірного моделювання Autodesk ЗЭ Maya, Autodesk 3Ds MAX, Pixologic ZBrush. Створено комп’ютерну сцену з трьохвимірними елементами, розробленими завдяки засобам досліджуваних програмних пакетів. Розроблені практичні рекомендації з найбільш ефективного їх застосування, які можуть бути використані як професіоналами, так і користувачами-початківцями.
ключові слова: тривимірне моделювання, графіка, полігон, сплайн, примітив, текстурування, анімація, візуалізація.
Егорова Ирина Николаевна, кандидат технических наук, профеcсор, кафедра медиасистем и технологий, Харьковский национальный университет радиоэлектроники, Украина, e-mail: [email protected].
Гайдамащук Алиса Владимировна, кафедра медиасистем и технологий, Харьковский национальный университет радиоэлектроники, Украина, e-mail: [email protected].
Єгорова Ірина Миколаївна, кандидат технічних наук, професор, кафедра медіасистем та технологій, Харківський національний університет радіоелектроніки, Україна.
Гайдамащук Аліса Володимирівна, кафедра медіасистем та технологій, Харківський національний університет радіоелектроніки, Україна.
Iegorova Irina, Kharkov National University of Radioelectronics, Ukraine, e-mail: [email protected].
Gaidamashchuk Alisa, Kharkov National University of Radioelectronics, Ukraine, e-mail: [email protected]
технологический аудит и резервы производства — № 6/1(14], 2013