617_Zabelin_L.JU._Osnovy_komp'juternoj_grafiki_
.pdfФЕДЕРАЛЬНОЕ АГЕНТСТВО СВЯЗИ
Федеральное государственное бюджетное образовательное учреждение высшего образования
«Сибирский государственный университет телекоммуникаций и информатики» (СибГУТИ)
Л.Ю. Забелин О.Л. Конюкова О.В. Диль
Основы компьютерной графики и технологии трехмерного моделирования
Учебное пособие
Новосибирск
2015
УДК 62.744
Забелин Л.Ю., Конюкова О.Л., Диль О.В.
Основы компьютерной графики и технологии трехмерного моделирования: Учеб. пособие / Сибирский гос. университет телекоммуникаций и информатики. – Новосибирск, 2015. – 264 с.
Настоящее учебное пособие разработано для оказания помощи студентам в освоении компьютерной графики и трехмерного моделирования.
Приведены основные теоретические положения компьютерной графики и трехмерного моделирования: растровая и векторная графика, цветовые модели, координатные и аффинные преобразования объектов, рассмотрены модели освещения, трассировки и закраски, подробно описана технология визуализации объектов. Практическая реализация теоретических положений показана на примере широко используемой программы 3D MAX. Приведено много задач с примерами решений и методическими рекомендациями к самостоятельной работе по методам моделирования и анимации.
Материал иллюстрирован, содержит примеры по всем темам рассматриваемого раздела.
Рекомендовано УМО по образованию в области телекоммуникаций в качестве учебного пособия для студентов высших учебных заведений, обучающихся по направлениям подготовки 09.03.02 «Информационные системы и технологии», 11.03.03 «Конструирование и технология радиоэлектронных средств», 11.03.01 «Радиотехника» профиль «Аудиовизуальная техника», 09.03.01 «Информатика и вычислительная техника» – (степени) бакалавр
Кафедра систем автоматизированного проектирования. Количество иллюстраций – 62.
Рецензенты: д-р тех. наук, проф. Ю.А. Пальчун д-р тех. наук, проф. В.Д. Фроловский
Утверждено редакционно-издательским советом ФГОБУ ВПО «СибГУТИ» в качестве учебного пособия.
© Сибирский государственный университет телекоммуникаций и информатики, 2015
2
|
|
Содержание |
|
1. Введение |
|
||
2. Компьютерная графика........................................................................................... |
6 |
||
2.1 |
История развития компьютерной графики ..................................................... |
6 |
|
2.2 |
Виды компьютерной графики .......................................................................... |
9 |
|
2.3 |
Основы и понятия компьютерной графики................................................... |
10 |
|
2.4 |
Приложения компьютерной графики ............................................................ |
11 |
|
3. Растровые и векторные изображения.................................................................. |
12 |
||
3.1 |
Растровые изображения .................................................................................. |
12 |
|
3.2 |
Векторные изображения.................................................................................. |
13 |
|
3.3 |
Недостатки и достоинства растровых и векторных изображений ............. |
17 |
|
4. Свет и цвет ............................................................................................................. |
19 |
||
4.1 |
Восприятие света и цвета глазом человека ................................................... |
20 |
|
4.2 |
|
Цветовые модели компьютерной графики................................................... |
23 |
4.3 |
Кодирование цвета (основные определения)................................................ |
29 |
|
5. Форматы графических файлов ............................................................................. |
29 |
||
5.1 |
Растровые графические форматы:.................................................................. |
29 |
|
5.2 |
Векторные графические форматы:................................................................. |
31 |
|
6. Методы компрессии и сжатия изображений ...................................................... |
34 |
||
7. Методы улучшения растровых изображений..................................................... |
38 |
||
7.1 |
Устранение ступенчатого эффекта ................................................................ |
38 |
|
7.2 |
Дизеринг............................................................................................................ |
40 |
|
7.3 |
Реализация метода «дизеринга» в графической системе............................. |
44 |
|
8. Трехмерная графика.............................................................................................. |
46 |
||
9. Координатные преобразования объектов ........................................................... |
59 |
||
9.1 |
Общие вопросы преобразования .................................................................... |
59 |
|
9.2 |
Преобразование координат и преобразование объектов ............................. |
60 |
|
9.3 |
Аффинные преобразования объектов на плоскости (2D)............................ |
65 |
|
10. Проективные преобразования (проекции)........................................................ |
69 |
||
10.1 |
Общие сведения ............................................................................................. |
69 |
|
10.2 |
Мировые и экранные координаты................................................................ |
69 |
|
10.3 |
Виды проекций............................................................................................... |
70 |
|
11. ВИЗУАЛИЗАЦИЯ ОБЪЕМНЫХ ИЗОБРАЖЕНИЙ ....................................... |
72 |
||
11.1 |
Каркасная визуализация................................................................................ |
72 |
|
11.2 |
Показ с удалением невидимых точек .......................................................... |
73 |
|
11.3 |
Сортировка граней по глубине ..................................................................... |
74 |
|
11.4 |
Метод плавающего горизонта ...................................................................... |
75 |
|
11.5 |
Метод построчного сканирования ............................................................... |
75 |
|
11.6 |
Метод Z-буфера.............................................................................................. |
75 |
|
11.7 |
Алгоритм разбиения области Варнака......................................................... |
76 |
|
11.8 |
Алгоритм трассировки лучей ....................................................................... |
80 |
|
12. МОДЕЛИ ОСВЕЩЕНИЯ И МЕХАНИЗМЫ ОТРАЖЕНИЯ СВЕТА ........... |
82 |
||
12.1 |
Классификация источников и поверхностей ............................................. |
82 |
|
12.2 |
Модели отражения света ............................................................................... |
82 |
|
13. Модели освещения .............................................................................................. |
86 |
||
13.1 |
Источники света и их действие .................................................................... |
86 |
|
|
|
3 |
|
13.2 |
Точечные (всенаправленные) источники .................................................... |
87 |
13.3Линейные источники ...................................................................................... |
87 |
|
13.4 |
Плоские источники ........................................................................................ |
88 |
13.5 |
Направленные источники света ................................................................... |
88 |
13.6 |
Целевой источник света ................................................................................ |
88 |
13.7 |
Возникновение теней..................................................................................... |
89 |
13.8 |
Естественное освещение ............................................................................... |
90 |
14. Модели закраски.................................................................................................. |
91 |
|
14.1 |
Общие сведения ............................................................................................. |
91 |
14.2 |
Метод Гуро (закраска с интерполяцией интенсивности) .......................... |
91 |
14.3 |
Недостатки метода Гуро................................................................................ |
93 |
14.4 |
Метод Фонга (закраска с интерполяцией нормали) ................................... |
93 |
14.5 |
Недостатки метода Фонга ............................................................................. |
95 |
14.6 |
Текстурирование ............................................................................................ |
96 |
14.7 |
Пирамидальное фильтрование (Mip-mapping)............................................ |
98 |
15. ТРАССИРОВКА ЛУЧЕЙ ................................................................................... |
99 |
|
15.1 |
методы трассировки....................................................................................... |
99 |
15.2 |
Метод прямой трассировки лучей.............................................................. |
101 |
15.3 |
Метод обратной трассировки лучей .......................................................... |
102 |
15.4 |
Алгоритм обратной трассировки лучей для расчета освещения сцены. 104 |
|
16. РАБОТА В 3D MAX ......................................................................................... |
105 |
|
16.1 |
Interface (Пользовательская Среда)............................................................ |
105 |
16.2 |
Выделение и трансформация объектов ..................................................... |
113 |
16.3 |
Выравнивание объектов и создание массива............................................ |
117 |
16.4 |
Применение модификаторов ..................................................................... |
122 |
16.5 |
Работа со сплайнами.................................................................................... |
124 |
16.6 |
Геометрические фигуры.............................................................................. |
126 |
16.8 |
Создание поверхностей с помощью модификаторов сплайнов.............. |
134 |
16.9 |
Составные объекты Boolean ....................................................................... |
136 |
16.10 Лофтинговые составные объекты ............................................................ |
154 |
|
16.11 Редактирование loft-объектов................................................................... |
160 |
|
16.12. Каркасное моделирование ....................................................................... |
167 |
|
16.13 Лоскутное (патчевое) моделирование ..................................................... |
170 |
|
16.14 Работа с материалами ................................................................................ |
175 |
|
16.15 Типы источников света ............................................................................. |
196 |
|
16.16. Создание освещения в сцене с помощью источника Skylight.............. |
205 |
|
17. Анимация............................................................................................................ |
207 |
|
17.1 |
Создание простой анимации...................................................................... |
209 |
17.2 |
Изменение продолжительности анимации................................................ |
213 |
17.3 |
Изменение характера протекания анимации............................................. |
215 |
17.4 |
Создание более сложной анимации .......................................................... |
217 |
17.5 |
Виртуальные камеры ................................................................................... |
220 |
17.6 |
Создание пульсирующего взрывающегося многогранника .................... |
223 |
17.7 |
Анимация падающей сферы на вращающуюся поставку........................ |
236 |
18. Заключение......................................................................................................... |
256 |
4
1. Введение
Развитие компьютерной и рекламной индустрии, дало толчок созданию новой индустрии, которая помогает дизайнерам и киномотографистам всего мира, и по сей день.
А началось все с того, что вполне мирная беседа в одной из клубных конференций о методах реализации некоего графического эффекта обернулась жаркой дискуссией о рациональности применения техник трехмерного моделирования и использования продуктов такого творчества в WWW. Спор показал, что различных мнений на этой почве существует не меньше, чем предрассудков, ясно, однако, было одно: тема не должна остаться в тени.
Мы предлагаем рассмотреть среду 3DStudio MAX. Одним из главных преимуществ 3DStudio MAX является возможность объектноориентированного моделирования, т.е. исходная геометрическая форма, равно как и последовательно применяемые к ней модификаторы, являются объектами, параметры которых могут в любой момент быть изменены. Это позволяет сделать процесс моделирования предельно структурированным, а заодно и избавляет от страха перед возможными ошибками.
Пристрастие к тому или иному типу графической оболочки – безусловно, дело индивидуальное, но качество интерфейса 3DStudio MAX может быть оценено как удовлетворительное. Присутствует элемент эксплоративности, хотя «ткнуть и посмотреть, что получится» не всегда приводит к видимым результатам. Нам кажется, что авторы этого пакета нашли разумный баланс между пиктографической и текстовой формой представления активных и информационных элементов.
Благодаря уже упомянутой объектной ориентированности возможно практически безграничное модулярное расширение возможностей пакета, в результате чего каждый способен сам составить себе набор любимых инструментов или попробовать что-то новое, просто подключив дополнительный plugin (надо заметить, что базовой подборки, приходящей со стандартной инсталляцией пакета, на первых порах более чем достаточно).
Работать с 3Dstudio MAX вполне можно уже на P100 c 32MB RAM под Windows95/98 и WindowsNT4.0, в последнем случае можно рассчитывать на гораздо более стабильное функционирование. Особых по разумным меркам претензий к графическим возможностям не предъявляется, использование OpenGL-способной карты рекомендуемо. Пакет – в зависимости от инсталляции – занимает от 60 до 200 MB на жестком диске, стоит учитывать возможность дальнейшего «разбухания», связанного с добавлением подключаемых модулей. Особых проблем при инсталляции MAXа до настоящего момента не встречалось, стоит упомянуть лишь о необходимости установки Sentinel Hardlock Drivers для работы программы.
5
2.Компьютерная графика
2.1.История развития компьютерной графики
Область применения компьютерной графики не ограничивается одними художественными эффектами. Во всех отраслях науки, техники, медицины, в коммерческой и управленческой деятельности используются построенные с помощью компьютера схемы, графики, диаграммы, предназначенные для наглядного отображения разнообразной информации. Конструкторы, разрабатывая новые модели автомобилей и самолетов, используют трехмерные графические объекты, чтобы представить окончательный вид изделия. Архитекторы создают на экране монитора объемное изображение здания, и это позволяет им увидеть, как оно впишется в ландшафт [18].
Можно рассмотреть следующие области применения компьютерной гра-
фики:
Научная графика. Первые компьютеры использовались лишь для решения научных и производственных задач. Чтобы лучше понять полученные результаты, производили их графическую обработку, строили графики, диаграммы, чертежи рассчитанных конструкций. Первые графики на машине получали в режиме символьной печати. Затем появились специальные устройства – графопостроители (плоттеры) для вычерчивания чертежей и графиков чернильным пером на бумаге. Современная научная компьютерная графика дает возможность проводить вычислительные эксперименты с наглядным представлением их результатов.
Деловая графика – область компьютерной графики, предназначенная для наглядного представления различных показателей работы учреждений. Плановые показатели, отчетная документация, статистические сводки – вот объекты, для которых с помощью деловой графики создаются иллюстративные материалы. Программные средства деловой графики включаются в состав электронных таблиц.
Конструкторская графика используется в работе инженеровконструкторов, архитекторов, изобретателей новой техники. Этот вид компьютерной графики является обязательным элементом САПР (систем автоматизации проектирования). Средствами конструкторской графики можно получать как плоские изображения (проекции, сечения), так и пространственные трехмерные изображения.
Иллюстративная графика – это произвольное рисование и черчение на экране компьютера. Пакеты иллюстративной графики относятся к прикладному программному обеспечению общего назначения. Простейшие программные средства иллюстративной графики называются графическими редакторами.
Художественная и рекламная графика – ставшая популярной во многом благодаря телевидению. С помощью компьютера создаются рекламные ролики, мультфильмы, компьютерные игры, видеоуроки и видеопрезентации. Графические пакеты для этих целей требуют больших ресурсов компьютера по быстродействию и памяти. Отличительной особенностью этих графических пакетов является возможность создания реалистических изображений и «движущихся
6
картинок». Получение рисунков трехмерных объектов, их повороты, приближения, удаления, деформации связано с большим объемом вычислений. Передача освещенности объекта в зависимости от положения источника света, от расположения теней, от фактуры поверхности, требует расчетов, учитывающих законы оптики.
Одним из первых известных фильмов был фильм «Звездные войны». Он был создан с помощью суперкомпьютера «Сгау». Этапы дальнейшего развития компьютерного кинематографа можно проследить по таким фильмам, как «Терминатор-2», «Вавилон 5», «Аватар», и др. До недавнего времени технологии компьютерной графики использовались для спецэффектов, создания изображений экзотических чудовищ, имитации стихийных бедствий и других элементов, которые являлись лишь фоном для игры живых актеров. В 2001 году вышел на экраны полнометражный кинофильм «Финальная фантазия», в котором все, включая изображения людей, синтезировано компьютером – живые актеры только озвучили роли за кадром.
Компьютерная анимация – это получение движущихся изображений на экране дисплее. Художник создает на экране рисунке начального и конечного положения движущихся объектов, все промежуточные состояния рассчитывает и изображает компьютер, выполняя расчеты, опирающиеся на математическое описание данного вида движения. Полученные рисунки, выводимые последовательно на экран с определенной частотой, создают иллюзию движения. Мультимедиа – это объединение высококачественного изображения на экране компьютера со звуковым сопровождением. Наибольшее распространение системы мультимедиа получили в области обучения, рекламы, развлечений.
Графика для Интернета. Появление глобальной сети Интернет привело к тому, что компьютерная графика стала занимать важное место в ней. Все больше совершенствуются способы передачи визуальной информации, разрабатываются более совершенные графические форматы, ощутимо желание использовать трехмерную графику, анимацию, весь спектр мультимедиа.
Основные этапы развития компьютерной графики:
1956 – первые эксперименты Бена Лапоски “oscillons” (США, с 1950г) и Герберта Франка (Германия). Эта дата была определена Jasia Reichardt как начало Компьютерного Искусства 1957 – получено первое цифровое изображение в Национальном Бюро Стандартов (США)
1958 – сэр Джон Уитни использует аналоговый компьютер для создания анимации (США)
1959 – выставка “Экспериментальная эстетика” в музее Angewandte Kunst (Вена, Австрия), показ “oscillons” и т.д.
1963 – проводится первое соревнование по компьютерному искусству, спонсором которого выступил американский журнал Computers and Automation. В 1965 г. его выигрывает Майкл Нолл (США) и в 1966 Фрайдер Нейк (Германия). Выходит в свет первый созданный на компьютере фильм Эдварда Зайека (Bell labs, США). Чарльз Ксури создает свои первые компьютерные работы
7
(США). Иван Сазерленд представляет Sketchpad – программу для интерактивной работы с компьютерной графикой на конференции Fall Joint Computer Conference. Работа была начата в 1961 г. В Массачусетском технологическом институте. Написана первая научная работа и получена первая степень «Доктора философии в области компьютерной графики».
1965 – первая выставка цифрового искусства в Technische Hochschule в Штутгарте организованная Фрайдером Нейком, Майклом Ноллом и Джорджем Нисом (Германия) Первая выставка цифрового искусства в США в галерее Howard Wise в Нью Йорке. Были выставлены компьютерные работы Бела Джулса и Майкла Нолла (США). Три первые общественные выставки компь-
ютерного искусства: 5–19 февраля, Generative Computergrafik. Georg Nees. Studien-Galerie des Studium Generale, TH Stuttgart. Открыта Максом Бенсом
(Германия). 6–24 апреля, изображения созданные с помощью компьютера. Майкл Нолл, Бела Джулс, Howard Wise Gallery, Нью-Йорк (США). 5–26 нояб-
ря, Computergrafik. Фрайдер Нейк, Джордж Нис. Галерея Wendelin Niedlich,
Штутгарт. Открыта Максом Бенсом (Германия).
1966 – IBM присуждает звание Artist-in-Residence Сэру Джону Уитни.
1967 – эксперименты в искусстве и технологии начаты в Нью-Йорке группой художников и техников, включая художника Robert Rauschenberg и инженера
Billy Kluver (США).
1968 – Cybernetic Serendipity: выставка компьютерных технологий и искусства, в институте современного искусства, Лондон. Курирует Джеша Ричард (директор ICA и автор Компьютер в Искусстве). Музей современного искусства приобретает работу Ксури “Hummingbird”. Джон Лэнсдаун (архитектор)
иАлан Сатклиф (пионер компьютерной музыки) создают Общество Компьютерного Искусства как подразделение Британского Компьютерного Общества. 1966 – IBM присуждает звание Artist-in-Residence – Сэру Джону Уитни.
1967 – эксперименты в искусстве и технологии начаты в Нью Йорке группой художников и техников, включая художника Robert Rauschenberg и инженера
Billy Kluver (США).
1968 – Cybernetic Serendipity: Выставка компьютерных технологий и искусства, в институте современного искусства, Лондон. Курирует Джеша Ричард (директор ICA и автор Компьютер в Искусстве). Музей современного искусства приобретает работу Ксури “Hummingbird”. Джон Лэнсдаун (архитектор)
иАлан Сатклиф (пионер компьютерной музыки) создают «Общество Компьютерного Искусства» как подразделение Британского Компьютерного Общества.
1969 – SIGGRAPH, Special Interest Group on Computer Graphics сформировано с помощью ACM (the Association for Computing Machinery).
1971 – впервые в мире проводится персональная выставка работ по компьютерному искусству; Манфред Мор, Музей современного искусства, Франция,
Париж. Герберт Фрэнк публикует 'Computer Graphics - Computer Art' (Герма-
ния).
8
1972 – Ричард Шуп создает SuperPaint, 8ми битную графическую программу в исследовательском центре Xerox Palo Alto (США).
1974 – фильм “Голод” Питера Фолдса получает Приз Жюри на Каннском фе-
стивале кино за лучшую анимацию (Канада). |
|
|
1975 |
– фракталы - Бенуа Мандельбро (IBM, США). |
|
1976 |
– Руфь Левитт публикует “Художник и компьютер” (США) |
. |
1979 |
– «Sunstone» анимация Эда Эмшвиллера (NYIT, США). |
|
1980 |
– фирма “Quantel” представляет Paintbox (Великобритания). |
|
1983 – Гарольд Коэн выставляет работу AARON в Tate gallery (Лондон, Великобритания) Дэвид Эм работает в лаборатории Jet Propulsion в Калифорнийском Технологическом институте 1984 – Питер Перлштайн использует графическую систему в Нью-йоркском
Технологическом институте Продан первый компьютер Macintosh. Так же рекламный ролик получает награду международного фестиваля рекламы фестиваля Clio.
1986 – рисование светом – Дэвид Хокни, Говард Ходгкинс, Сэр Сидни Нолан и Ларри Риверс приглашены на BBС для использования Qantel Paintbox на телевидении (Великобритания). Энди Вархол использует Amiga для создания своего автопортрета и портрета певицы Деборы Харри (США). Фильм “Luxo Jr” Джона Лассетера (фирма PIXAR) показан на конференции Siggraph (США). Томасс и Джон Нолл, работая на Lucasfilm, пишут 24 битную графическую программу Photoshop
1988 – первый международный симпозиум по электронному искусству в г. Утрехт (Германия). Кливлендская галерея, выставка Искусство и Компьютер, г. Мидлсбороу (Великобритания) .
1989 – выставка “Electronic Print” в музее Arnolfini в г. Бристоль. Под руководством Мартина Райзера. (Великобритания). Релиз Photoshop для Macintosh (США).
1992 – первый Digital Salon в Нью-Йорке (США)
1995 – первая конференция по CADE, Брайтон (Великобритания). 1997 – в Лондоне открыта Collville Place Gallery (Великобритания). 1998 – Вольфганг Лайзер основывает Музей Цифрового Искусства.
2.2. Виды компьютерной графики
Различают три вида компьютерной графики. Это растровая графика, векторная графика и фрактальная графика. Они отличаются принципами формирования изображения при отображении на экране монитора или при печати на бумаге [17].
Растровый метод – изображение представляется в виде набора окрашенных точек. Растровую графику применяют при разработке электронных (мультимедийных) и полиграфических изданий. Иллюстрации, выполненные средствами растровой графики, редко создают вручную с помощью компьютерных программ. Чаще всего для этой цели используют отсканированные иллюстрации, подготовленные художниками, или фотографии. В последнее время для
9
ввода растровых изображений в компьютер нашли широкое применение цифровые фото- и видеокамеры.
Большинство графических редакторов, предназначенных для работы с растровыми иллюстрациями, ориентированы не столько на создание изображений, сколько на их обработку. В Интернете пока применяются только растровые иллюстрации.
Векторный метод – это метод представления изображения в виде совокупности отрезков и дуг и т. д. В данном случае вектор – это набор данных, характеризующих какой-либо объект.
Наиболее удобно, когда способ описания графического изображения соответствует способу визуализации. Иначе нужна конвертация. Например, изображение может храниться в растровом виде, а его необходимо вывести (визуализировать) на векторном устройстве. Для этого нужна предварительная векторизация – преобразование из растрового в векторное описание. Или наоборот, описание изображения может быть в векторном виде, а нужно визуализировать на растровом устройстве – необходима растеризация.
Программные средства для работы с векторной графикой предназначены в первую очередь для создания иллюстраций и в меньшей степени для их обработки. Такие средства широко используют в рекламных агентствах, дизайнерских бюро, редакциях и издательствах. Оформительские работы, основанные на применении шрифтов и простейших геометрических элементов, решаются средствами векторной графики много проще.
Программные средства для работы с фрактальной графикой предназначены для автоматической генерации изображений путем математических расчетов. Создание фрактальной художественной композиции состоит не в рисовании или оформлении, а в программировании.
Фрактальная графика, как и векторная – вычисляемая, но отличается от неё тем, что никакие объекты в памяти компьютера не хранятся. Изображение строится по уравнению (или по системе уравнений), поэтому ничего, кроме формулы, хранить не надо.
Изменив коэффициенты в уравнении, можно получить совершенно другую картину. Способность фрактальной графики моделировать образы живой природы вычислительным путем часто используют для автоматической генерации необычных иллюстраций.
2.3. Основы и понятия компьютерной графики
Направления компьютерной графики (принято разделять компьютерную графику на следующие направления) [18]:
изобразительная компьютерная графика,
обработка и анализ изображений,
анализ сцен (перцептивная компьютерная графика),
компьютерная графика для научных абстракций (когнитивная компьютерная графика – графика, способствующая познанию).
10