Файл: Мультимедиа технологии.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 29.11.2023

Просмотров: 577

Скачиваний: 4

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

216 15.
Перечислить параметры
ЖК-мониторов.
Дать краткую характеристику.

217
Лекция 10. Трехмерная графика и 3D моделирование
Краткая аннотация лекции: Рассматривается понятие трехмерной графики и 3D моделирования, виды трехмерной графики, этапы создания трехмерного изображения.
Цель лекции: изучить основы 3D моделирования
Трехмерная графика – раздел компьютерной графики, посвященный методам создания изображений или видео путем моделирования объемных объектов в трехмерном пространстве.
Компьютерная графика – область деятельности, в которой компьютеры наряду со специальным ПО используются в качестве инструмента, как для создания и редактирования изображений, так и для оцифровки визуальной информации, полученной из реального мира, с целью дальнейшей ее обработки и хранения.
3D-моделирование – это процесс создания трехмерной модели объекта.
Задача 3D-моделирования – разработать визуальный объемный образ желаемого объекта. При этом модель может как соответствовать объектам из реального мира, так и быть полностью абстрактной.
Графическое изображение трехмерных объектов отличается тем, что включает построение геометрической проекции трехмерной модели сцены на плоскость (например, экран компьютера) с помощью специализированных программ. Однако с созданием и внедрением 3D-дисплеев и 3D-принтеров трехмерная графика не обязательно включает в себя проецирование на плоскость.
10.1 Виды трехмерной графики
Виды трехмерной графики:
1. Полигональная.
2. Фрактальная.
3. Аналитическая.

218
Полигональная графика. Объект задается набором полигонов.
Полигон – это плоский многоугольник. Каждый полигон задается набором точек. 3-мерный объект задается как массив или структура.
Аналитическая графика. В аналитической графике объекты задаются аналитически, т.е. формулами.
Например: шар радиуса r с центром в точке
(x0,y0,z0 ): (x-x0)
2
+(y-y0)
2
+(z-z0)
2
=r
2
Фрактальная графика. Фрактал – это рисунок, который состоит из подобных между собой элементов. Треугольник Серпинского, снежинка
Коха, «дракон» Хартера-Хейтуея, множество Мандельброта. Построение фрактального рисунка осуществляется по какому-то алгоритму или путем автоматической генерации изображений при помощи вычислений по конкретным формулам. Изменения значений в алгоритмах или коэффициентов в формулах приводит к модификации этих изображений.
Главным преимуществом фрактальной графики есть то, что в файле фрактального изображения сохраняются только алгоритмы и формулы.
Применение трехмерной графики:
4. Трехмерная графика активно применяется для создания изображений на плоскости экрана или листа печатной продукции в науке и промышленности, например, в системах автоматизации проектных работ, архитектурной визуализации (сюда относится и так называемая «виртуальная археология»), в современных системах медицинской визуализации.
5. Самое широкое применение – во многих современных компьютерных играх, а также как элемент кинематографа, телевидения, печатной продукции.
Для получения трехмерного изображения на плоскости требуются следующие шаги:
моделирование – создание трехмерной математической модели сцены и объектов в ней;


219
текстурирование – назначение поверхностям моделей растровых или процедурных текстур (подразумевает также настройку свойств материалов – прозрачность, отражения, шероховатость и пр.);
освещение – установка и настройка источников света;
анимация (в некоторых случаях) – придание движения объектам;
динамическая симуляция (в некоторых случаях) – автоматический расчет взаимодействия частиц, твердых/мягких тел и пр. с моделируемыми силами гравитации, ветра, выталкивания и др., а также друг с другом;
рендеринг (визуализация) – построение проекции в соответствии с выбранной физической моделью;
композитинг (компоновка) – доработка изображения;
вывод полученного изображения на устройство вывода – дисплей или специальный принтер.
Текстура – растровое изображение, накладываемое на поверхность полигональной модели для придания ей цвета, окраски или иллюзии рельефа.
Приблизительно использование текстур можно легко представить как рисунок на поверхности скульптурного изображения. Использование текстур позволяет воспроизвести малые объекты поверхности, создание которых полигонами оказалось бы чрезмерно ресурсоемким. Например, шрамы на коже, складки на одежде, мелкие камни и прочие предметы на поверхности стен и почвы.
Рендеринг или отрисовка – термин в компьютерной графике, обозначающий процесс получения изображения по модели с помощью компьютерной программы
Для изображения трехмерных объектов на экране монитора требуется проведение серии процессов (обычно называемых конвейером) с последующей трансляцией результата в двумерный вид. Первоначально, объект представляется в виде набора точек, или координат, в трехмерном пространстве. Трехмерная система координат определяется тремя осями: горизонтальной, вертикальной и глубины, обычно называемых,

220 соответственно осями x, y и z. Объектом может быть дом, человек, машина, самолет или целый 3D мир и координаты определяют положение вершин
(узловых точек), из которых состоит объект, в пространстве. Соединив вершины объекта линиями, мы получим каркасную модель, называемую так из-за того, что видимыми являются только края поверхностей трехмерного тела. Каркасная модель определяет области, составляющие поверхности объекта, которые могут быть заполнены цветом, текстурами и освещаться лучами света.
Для получения правдоподобной модели изображения на экране необходимо проведение большого числа математических операций, связанных с преобразованием координат и отображением.
Конвейер разделен на множество этапов, на каждом из которых аппаратно или программно выполняется некоторая функция. Наличием переходов между этапами конвейера обеспечивается возможность выбора между программной и аппаратной реализацией очередного этапа. Такой подход к настройке конвейера позволяет приложениям трехмерной графики получать преимущества аппаратной реализации программно-аппаратной смешанной Реализация конвейера может чисто программной, полностью аппаратной или смешанной (программно-аппаратной).
До начала работы геометрических преобразований необходимо описать трехмерную сцену, изображение которой необходимо синтезировать.
Трехмерное приложение оперирует объектами, описанными в некоторой глобальной системе координат. Чаще всего здесь используется ортогональная (декартова) система координат, в которой положение каждой точки задается ее расстоянием от начала координат по трем взаимно перпендикулярным осям X, Y и Z. В некоторых случаях используется и сферическая система координат, в которой положение точки задается удалением от центра и двумя углами направления.


221
Рис.10.1 Схема графического конвейера
В глобальных координатах приложение создает объекты. В этом же пространстве располагаются источники освещения, а также определяется точка зрения и направление взгляда наблюдателя.
1   ...   13   14   15   16   17   18   19   20   ...   37

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

222 вершины лежали в одной плоскости. А для треугольников это требование выполняется автоматически).
Генерация
треугольников.
Объект задается вершинами, определяющими ключевые точки, и полигонами, которые образованы линиями, соединяющими вершины. Такая модель объекта называется
проволочной.
К сожалению, картинка из одних лишь вершин (и даже вершин, соединенных ребрами) удовлетворит далеко не всех пользователей. Поэтому на стадии рендеринга производится удаление невидимых линий.
Переход из одной прямолинейной координатной системы в трехмерном пространстве к другой описывается в общем случае следующим образом:
,
,
3 2
1
*
3 2
1
*
3 2
1
*





















z
y
x
z
z
y
x
y
z
a
y
a
x
a
x
или в матричном виде:
 













1 0
0 0
4 3
2 1
4 3
2 1
4 3
2 1








a
a
a
a
M
Рассмотрим матрицы, соответствующие следующим базовым геометрическим преобразованиям:
1. Повороты
Относительно OX на угол φ













1 0
0 0
0 0
0 0
0 0
0 1




Cos
Sin
Sin
Cos
Относительно OY на угол ψ













1 0
0 0
0 0
0 0
1 0
0 0




Cos
Sin
Sin
Cos
Относительно OZ на угол χ


223













1 0
0 0
0 1
0 0
0 0
0 0




Cos
Sin
Sin
Cos
Относительно OZ на угол χ
2. Растяжение (сжатие)
 













1 0
0 0
0 0
0 0
0 0
0 0
0



D
Если
1
,
,




– растяжение,
Если
1
,
,
0





– сжатие.
3. Отражение (зеркалирование)
относительно плоскости XOY
 














1 0
0 0
0 1
0 0
0 0
1 0
0 0
0 1
Z
M
относительно плоскости YOZ
 













1 0
0 0
0 1
0 0
0 0
1 0
0 0
0 1
X
M
относительно плоскости ZOX
 














1 0
0 0
0 1
0 0
0 0
1 0
0 0
0 1
Y
M
4. Перенос (сдвиг, перемещение) на вектор
)
,
,
(



 













1 0
0 0
1 0
0 0
1 0
0 0
1



M
 













1 0
0 0
1 0
0 0
1 0
0 0
1
v
M



224
Стадия геометрических преобразований требует выполнения большого объема вычислительных операций, включая операции с плавающей точкой.
Многие существующие приложения для обработки трехмерной графики перекладывают расчеты по геометрии сцены на центральный процессор.
Рассмотрим пример 1.
Дана точка А с координатами (5,6,11)
Матрица смещения













1 0
0 0
4 1
0 0
3 0
1 0
2 0
0 1
M
Необходимо найти А











































1 15 9
7 1
11 6
5 1
0 0
0 4
1 0
0 3
0 1
0 2
0 0
1
A
M
A
,
)
15
,
9
,
7
(


A
Рассмотрим пример 2.
Дана точка B с координатами (8,2,-6)
Матрица поворота














1 0
0 0
0
)
45
(
)
45
(
0 0
)
45
(
)
45
(
0 0
0 0
1
Cos
Sin
Sin
Cos
M
Необходимо найти B














































1 8284 2
6569 5
8 1
6 2
8 1
0 0
0 0
707 0
707 0
0 0
707 0
707 0
0 0
0 0
1
B
M
B
,
)
828 2
,
657 5
,
8
(



B