78374

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

Лекция

Информатика, кибернетика и программирование

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

Русский

2015-02-07

60 KB

4 чел.

ТЕМА № 7. ТРЕХМЕРНАЯ ГРАФИКА

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

Основные понятия трехмерной графики

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

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

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

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

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

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

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

Основную долю рынка программных средств обработки трехмерной графики занимают три пакета: 3D Studio Max фирмы Kinetix; Softimage 3D компании Microsoft; Maya, разработанная консорциумом известных компаний (Alias, Wavefront, TDI). На сегодняшний день Maya является наиболее передовым пакетом в классе средств создания и обработки трехмерной графики для персональных компьютеров.

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

В упрощенном виде для пространственного моделирования объекта требуется:

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

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

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

Закраска поверхностей осуществляется методами Гуро (Gouraud) или Фонга (Phong). В первом случае цвет примитива рассчитывается лишь в его вершинах, а затем линейно интерполируется по поверхности. Во втором случае строится нормаль к объекту в целом, ее вектор интерполируется по поверхности составляющих примитивов и освещение рассчитывается для каждой точки.

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

  •  свет, пришедший с обратной стороны поверхности, то есть преломленный свет (Refracted);
  •  свет, равномерно рассеиваемый поверхностью (Diffuse);
  •  зеркально отраженный свет (Reflected);
  •  блики, то есть отраженный свет источников (Specular);
  •  собственное свечение поверхности (Self Illumination).

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

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

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

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

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

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

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

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

На персональных компьютерах основную долю рынка программных средств обработки трехмерной графики занимают три пакета. Эффективней всего они работают на самых мощных машинах (в двух- или четырехпроцессорных конфигурациях Pentium II/III, Xeon) под управлением операционной системы Windows NT.

Программа создания и обработки трехмерной графики 3D Studio Max фирмы Kinetix изначально создавалась для платформы Windows. Этот пакет считается «полупрофессиональным». Однако его средств вполне хватает для разработки качественных трехмерных изображений объектов неживой природы. Отличительными особенностями пакета являются поддержка большого числа аппаратных ускорителей трехмерной графики, мощные световые эффекты, большое число дополнений, созданных сторонними фирмами. Сравнительная нетребовательность к аппаратным ресурсам позволяет работать даже на компьютерах среднего уровня. Вместе с тем по средствам моделирования и анимации пакет 3D Studio Max уступает более развитым программным средствам.

Программа Softimage 3D компании Microsoft изначально создавалась для рабочих станций SGI и лишь сравнительно недавно была конвертирована под операционную систему Windows NT. Программу отличают богатые возможности моделирования, наличие большого числа регулируемых физических и кинематографических параметров. Для рендеринга применяется качественный и достаточно быстрый модуль Mental Ray. Существует множество дополнений, выпущенных “третьими” фирмами, значительно расширяющих функции пакета. Эта программа считается стандартом «де-факто» в мире специализированных графических станций SGI, а на платформе IBM PC выглядит несколько тяжеловато и требует мощных аппаратных ресурсов.

Наиболее революционной с точки зрения интерфейса и возможностей является программа Мауа, разработанная консорциумом известных компаний (Alias, Wavefront, TDI). Пакет существует в вариантах для разных операционных систем, в том числе и Windows NT. Инструментарий Мауа сведен в четыре группы: Animation (анимация), Modeling (моделирование), Dynamic (физическое моделирование), Rendering (визуализация). Удобный настраиваемый интерфейс выполнен в соответствии с современными требованиями. На сегодняшний день Мауа является наиболее передовым пакетом в классе средств создания и обработки трехмерной графики для персональных компьютеров.


 

А также другие работы, которые могут Вас заинтересовать

11540. Разработка оконных приложений, использующих автономные модули 91.98 KB
  Лабораторная работа №8 Разработка оконных приложений использующих автономные модули Условие Задача 3.4. Составьте подпрограмму исходными данными которой являются числовые массивы C и или D из n элементов. Основной её результат – также массив получающий некотор
11541. Анализ требований (UML) 60.25 KB
  Лабораторная № 1. Анализ требований UML Анализ требований – процесс изучения потребностей и целей пользователей классификация и преобразование их к требованиям к системе аппаратуре и программному обеспечению разрешение конфликтов между требованиями определение г
11542. Концептуальная модель ПО (UML) 29.21 KB
  Лабораторная № 2. Концептуальная модель ПО UML Построение модели предметной области начинается с выявления абстракций существующих в реальном мире то есть тех основных концептуальных объектов которые встречаются в системе. Концептуальная модель – это представлени...
11543. Концептуальная и физическая модели базы данных (IDEF1x) 73.85 KB
  Лабораторная № 3. Концептуальная и физическая модели базы данных IDEF1x Концептуальная модель базы данных Логическая модель Концептуальная модель базы данных рис. 2 описывает объекты предметной области их атрибуты и связи между ними в том объеме в котором они подл
11544. Ограничения на данные (DEFAULT и CHECK) и ссылочную целостность 18.35 KB
  Лабораторная № 5. Ограничения на данные DEFAULT и CHECK и ссылочную целостность Добавление отношения Конт. м. таблицы содержащей FK Отношения Добавить Спецификация таблиц и столбцов ИЛИ Проект таблицы кнопка Отношения Добавить... Слева все про РК имя таблицы поле...
11545. Загрузка информации в базу данных Загрузка информации в базу данных средствами Management Studio 37.5 KB
  Загрузка информации в базу данных Загрузка информации в базу данных средствами Management Studio Среда Management Studio предоставляет возможность заполнения БД информацией средствами графического интерфейса. Для этого следует воспользоваться командой Открыть таблицу контекст...
11546. Общая структура запроса SELECT 70 KB
  Разделы SELECT и FROM обязательно должны присутствовать в каждом запросе; остальные разделы могут присутствовать частично или отсутствовать вовсе...
11547. Триггеры. Сравнение триггеров и хранимых процедур 57 KB
  Триггеры 1. Сравнение триггеров и хранимых процедур Хранимые процедуры Триггеры Являются самостоятельным объектом базы данных Привязываются к таблице или виду Явно вызываются на
11548. Хранимые процедуры 40.5 KB
  Хранимые процедуры 1. БД Аналог приложения на языке программирования Borland Delphi База данных Приложение Таблица поле таблицы триггер Объект свойство объект