Программы для работы с трехмерной графикой

Автор работы: Пользователь скрыл имя, 16 Декабря 2010 в 21:55, доклад

Описание

Что такое трёхмерная графика? Принципы создания трёхмерной графики. Редакторы трёхмерной графики.

Работа состоит из  1 файл

Доклад по СППО..rtf

— 58.42 Кб (Скачать документ)

Что такое трёхмерная графика?

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

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

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

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

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

Принципы создания трёхмерной графики

Для получения трёхмерного изображения требуются следующие шаги:

  • моделирование -- создание математической модели сцены и объектов в ней;
  • рендеринг -- построение проекции в соответствии с выбранной физической моделью;

Моделирование

Сцена (виртуальное пространство моделирования) включает в себя несколько категорий объектов:

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

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

Рендеринг

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

Таким образом рендеринг преобразует трёхмерную векторную структуру данных в плоскую матрицу пикселов.

Технологии рендеринга:

Z-буфер (используется в OpenGL и DirectX);

  • сканлайн (scanline) -- расчёт цвета каждой точки картинки построением луча из точки зрения наблюдателя через воображаемое отверстие в экране на месте этого пиксела «в сцену» до пересечения с первой поверхностью. Цвет пиксела будет таким же, как цвет этой поверхности;
  • трассировка лучей (рейтрейсинг, англ. raytracing) -- то же, что и сканлайн, но цвет пиксела уточняется за счёт построения дополнительных лучей (отражённых, преломлённых и т. д.) от точки пересечения луча взгляда;
  • глобальная иллюминация (англ. global illumination, radiosity) -- расчёт взаимодействия поверхностей и сред в видимом спектре излучения с помощью интегральных уравнений

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

Редакторы трёхмерной графики

Программные пакеты, позволяющие производить трёхмерную графику, то есть моделировать объекты виртуальной реальности и создавать на основе этих моделей изображения, очень разнообразны. Последние годы устойчивыми лидерами в этой области являются: Autodesk 3ds Max, Maya, Newtek Lightwave, SoftImage XSI и сравнительно новые Rhinoceros 3D, Cinema 4D или ZBrush, Blender, K-3D и Wings3D.

3ds Max

3ds Max -- полнофункциональная профессиональная программная система для работы с трёхмерной графикой, разработанная компанией Autodesk. Работает в операционных системах Microsoft Windows и Windows NT (как в 32 битных, так и в 64 битных). Весной 2008 года выпущена одиннадцатая версия этого продукта под названием «3ds Max 2009».

Моделирование

3ds Max располагает обширными средствами по созданию разнообразных по форме и сложности трёхмерных компьютерных моделей реальных или фантастических объектов окружающего мира с использованием разнообразных техник и механизмов, включающих следующие:

  • полигональное моделирование в которое входят Editable mesh (редактируемая поверхность) и Editable poly (редактируемый полигон) - этот метод самый распространенный метод моделирования, используется для создания сложных моделей и моделей для игр;
  • моделирование на основе неоднородных рациональных B-сплайнов (NURBS) -в 3ds max этот метод моделирования не очень хорошо реализован, и довольно таки неудобен ;
  • моделирование на основе порций поверхностей Безье (Editable patch) -подходит для моделирования тел вращения;
  • моделирование с использованием встроенных библиотек стандартных параметрических объектов (примитивов) и модификаторов.
 

Моделирование на основе стандартных объектов, как правило, является основным методом моделирования и служит отправной точкой для создания объектов сложной структуры, что связано с использованием примитивов в сочетании друг с другом как элементарных частей составных объектов. 3ds Max располагает библиотекой следующих объектов: прямоугольный параллелепипед (Box), сфера (Sphere), цилиндр (Cylinder), тор (Torus), чайник (Teapot), конус (Cone), труба (Tube), пирамида (Pyramid), геосфера (GeoSphere), многогранник (Hedra), цистерна (OilTank), веретено (Spindle), многогранная призма (Gengon), тороидальный узел (Torus knot), капсула (Capsule), L-образное тело выдавливания (L-Ext) и др. Каждый из них обладает набором параметров, однозначно определяющих форму трёхмерного тела. После создания объекта каждый из параметров может быть изменён так, что это моментально отразится на внешнем виде объекта в окне редактирования. Подавляющее большинство параметров также могут быть впоследствии подвергнуты анимации. Стандартный объект «Чайник» входит в этот набор в силу исторических причин: он используется для тестов материалов и освещения в сцене, и, кроме того, давно стал своеобразным символом трёхмерной графики.

Динамика

В 3ds Max реализована возможность создания нескольких основных источников частиц. Традиционными источниками частиц в 3ds Max являются Spray (Брызги), Snow (Снег), Blizzard (Метель), PArray (Массив частиц), PCloud (Облако частиц) и Super Sprays (Супербрызги). Particle Flow -- это изощрённая нелинейная событийно-управляемая система частиц, разработанная Олегом Байбородиным, одна из семи систем частиц 3ds Max. Подобно большинству систем частиц, доступных в современных пакетах трёхмерной графики Particle Flow позволяет пользователю моделировать поведение частиц на основании серий предопределённых процедур (событий) средствами удобного наглядного интерфейса. 3ds Max также включает механизм расчёта физики reactor, изначально разработанный Havok. Reactor позволяет моделировать поведение твёрдых тел, мягких тел, ткани с учётом силы тяжести и других воздействий.

Визуализация

  • Собственный рендер (ScanLine)

Постоянно критикуется за его «пластмассовые» изображения. Хотя при грамотной настройке можно получить достаточно качественные изображения.

  • Scanline - cканирующая визуализация.

Исходным методом визуализации в 3DS Max является сканирующий построчный алгоритм. Некоторые расширенные возможности были добавлены в сканирующий визуализатор спустя годы, такие как расчёт всеобщего освещения, анализ излучательности и трассировка лучей, однако большинство функций перешло а нему от других визуализаторов (Например - RadioRay).

  • Mental ray

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

  • V-Ray

Популярнейший в русскоязычном пространстве внешний визуализатор.

  • RenderMan
  • Final Render

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

Maya

Maya -- редактор трёхмерной графики. В настоящее время стала стандартом 3D графики в кино и телевидении. В настоящее время существует как для 32, так и для 64-битных систем. Maya названа в честь Санскритского слова, которое означает иллюзия. Maya существует в трёх версиях:

  • Maya Unlimited -- самый полный и самый дорогой пакет. Содержит расширения Hair, Fur, Maya Muscule, Fluid Effects, Cloth и некоторые другие.
  • Maya Complete -- базовая версия пакета, в которой присутствует полноценные блок моделирования и анимации, но отсутствуют модули физической симуляции.
  • Maya Personal Learning Edition -- бесплатный пакет для некоммерческого использования. Есть функциональные ограничения, ограничение на размер визуализированного изображения, пометка водяными знаками финальных изображний.

Важная особенность Maya -- её открытость для сторонних разработчиков, которые могут преобразовать её в версию, которая более удовлетворяет требованиям больших студий, которые предпочитают писать код, специфичный для их нужд. Даже не взирая на присущую Maya мощь и гибкость, этой особенности достаточно для того, чтобы повлиять на выбор. В Maya встроен мощный интерпретируемый кросс-платформенный язык: Maya Embedded Language (MEL), очень похожий на Tcl. Это не просто скриптовый язык, это способ настроить основную функциональность Так аниматоры могут добавлять функциональность к Maya даже не владея языками C или C++, оставляя при необходимости такую возможность. Для написания расширений на языке C++ имеется подробно документированный C++ API. Файлы проектов, включая все данные о геометрии и анимации, сохраняются как последовательности операций MEL. Эти файлы могут быть сохранены в текстовом файле (.ma -- Maya ASCII), который может быть отредактирован в любом текстовом редакторе. Это обеспечивает непревзойденный уровень гибкости при работе с внешними инструментами. (Похожие продукты Autodesk 3ds Max)

Визуализация: Software render, Hardware render, Vector render, mental ray, V-Ray, RenderMan, finalRender, 3Delight, Gelato, Turtle, Maxwell Render, Fryrender, Indigo Renderer, Brazil R/S.

Blender

Blender -- пакет для создания трёхмерной компьютерной графики, включающий в себя средства моделирования, анимации, рендеринга, постобработки видео, а также создания интерактивных игр. Особенностями пакета являются малый размер, высокая скорость рендеринга, наличие версий для множества операционных систем -- FreeBSD, GNU/Linux, Mac OS X, SGI Irix 6.5, Sun Solaris 2.8 (sparc), Microsoft Windows, SkyOS, MorphOS и Pocket PC. Пакет имеет такие функции, как динамика твёрдых тел, жидкостей и мягких тел, систему горячих клавиш, большое количество легко доступных расширений, написанных на языке Python. Программа является свободным программным обеспечением и распространяется под лицензией GNU GPL.

Возможности

Характерной особенностью пакета Blender является его небольшой размер. Установленный пакет занимает около 10 МБ. В базовую поставку не входят развёрнутая документация и большое количество демонстрационных сцен.

Функции пакета:

  • поддержка разнообразных геометрических примитивов, включая полигональные модели, систему быстрого моделирования в режиме subdivision surface (SubSurf), кривые Безье, поверхности NURBS, metaballs (метасферы), скульптурное моделирование и векторные шрифты.
  • универсальные встроенные механизмы рендеринга и интеграция с внешним рендерером YafRay.
  • инструменты анимации, среди которых инверсная кинематика, скелетная анимация и сеточная деформация, анимация по ключевым кадрам, нелинейная анимация, редактирование весовых коэффициентов вершин, ограничители, динамика мягких тел (включая определение коллизий объектов при взаимодействии), динамика твёрдых тел на основе физического движка Bullet, система волос на основе частиц и система частиц с поддержкой коллизий.
  • Python используется как средство создания инструментов и прототипов, системы логики в играх, как средство импорта/экспорта файлов (например COLLADA), автоматизации задач.
  • базовые функции нелинейного редактирования и комбинирования видео.
  • Game Blender -- подпроект Blender, предоставляющий интерактивные функции, такие как определение коллизий, движок динамики и программируемая логика. Также он позволяет создавать отдельные real-time приложения начиная от архитектурной визуализации до видео игр.

Дополнительные особенности

Информация о работе Программы для работы с трехмерной графикой