1.   Введение

1.1. Устройство и функции графической подсистемы.

1.2. Трехмерная графика.

1.3. Видеопродукция.

1.4. Проектирование и дизайн.

1.5. Компьютерные игры.

1.6. Компьютерные тренажеры.

1.7. Что делает изображение трехмерным?

1.8. Создание виртуального 3D мира.

1.9. Какую часть виртуального мира показать на экране?



Устройство и функции графической подсистемы.

 

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

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

 Трехмерная графика.

Пространственная компьютерная графика часто называется трехмерной, или 3D-графикой (где D — это Dimension, «измерение»). В oбыденной жизни мы практически  ежедневно сталкиваемся с объектами, созданными либо средствами компьютерной ЗD-графики, либо на  основе трехмерных виртуальных моделей: телевизионные заставки и  реклама; спецэффекты, персонажи и предметы в кинематографии; некоторые виды полиграфической продукции; автомобили, мебель, дома и множество других вещей.

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

Трехмерная компьютерная графика различается по области применения. Условно говоря, существуют четыре обширные сферы 3Dpaфики, имеющие достаточно обособленные программные средства и методы, а также аппаратное обеспечение. Это видео-, теле-, кинопродукция; промышленное проектирование и дизайн; компьютерные игры; имитаторы-тренажеры.                                                             |

Видеопродукция.

Видеопродукция предъявляет исключительно высокие требования: реалистичности создаваемых трехмерных сцен. Такую трехмерную графику часто называют фотореалистичной. Действительно, в некоторых случаях невозможно различить объекты, существующие в реальном мире, и созданные средствами компьютерной графики. Как правило, инструментами разработчиков трехмерной графики, используемой в кинопроизводстве, служат мощные графические станции; узкоспециализированные программы. Фотореалистичная графика требует затрат ресурсов, превосходящих сегодняшние возможности IBM PC. Визуализацией кадров занимаются десятки компьютеров, объединенных в локальные сети. Время обработки одного кадра иногда составляет несколько часов даже на десятках объединенных в ceть графических станций. Эпизод, занимающий в фильме несколько минут, нередко загружает мощные компьютеры в течение многих дней. Качество трехмерной графики, которое мы сегодня наблюдаем в лучших кинофильмах, является ориентиром на перспективу для персональных компьютеров — когда-нибудь подобное качество мы увидим на дисплее домашнего компьютера в трехмерной игре.                    

Проектирование и дизайн.                                                                                      

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

Компьютерные игры.

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

Игры с высокими требованиями к эффективности графической под­системы часто используют в качестве тестовых программ. В частно­сти, повсеместно признанными играми-тестами являются Quake 111 Arena, Unreal, Return to Castle Wolfenstein, Serious Sam и другие.

Компьютерные тренажеры.

Компьютерные имитаторы-тренажеры предъявляют целый комплекс требований, характерный для трех предыдущих областей: фотореалистичность, точное соответствие физической среде, сопрягаемость с реальным оборудованием, высокая скорость отображения. Поэтому для профессиональных тренажеров, особенно авиационно-космических, часто разрабатывают специализированные геометрические процессоры, объем выпуска которых ограничен десятками и сотнями штук, а стоимость сравнима с ценой приличного «Мерседеса». Трена­жерный комплекс для самолета стоит 12-15 миллионов долларов.

                         

Что делает изображение трехмерным?

Картинка, кажущаяся трехмерной (3D) должна иметь три измерения: высоту, ширину и глубину. Двумерная картинка (2D) имеет два измерения: высоту и ширину. Некоторые картинки изначально двумерны. Представим себе буквы "М" или "Ж", указывающие на туалет. Эти символы должны быть понятны с первого взгляда. Поэтому, чем проще они нарисованы, тем лучше. Конечно, можно заменить эти буквы фигурками людей. Фигурки можно дополнить информацией: какой тип одежды на них надет, какой у них цвет волос, посещают ли они регулярно занятия по шейпингу и т.д. Но вся эта дополнительная информация лишь усложнит получение главной информации: в какую же дверь идти? Этим примером можно проиллюстрировать отличие 2D графики от 3D: двумерная графика хороша для выражения чего-либо простого за максимально короткое для понимания время. Трехмерная графика может дать больше информации, но на ее усвоение требуется большее время.


Примеры 2D и 3D графики

 

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

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

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

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

-Создание виртуального 3D мира.

-Выбор части мира, которая будет демонстрироваться на экране.

-Задание представления для каждого пикселя на экране для максимальной реалистичности изображения.

Создание виртуального 3D мира.

Виртуальный 3D мир это не просто эскиз такого мира. Чтобы лучше в этом разобраться, приведем пример из реального мира. Рассмотрим руку и стол под ней.  Рука обладает характеристиками, которые определяют способы движения руки и ее вид. Пальцы примыкают к ладони и послушно сгибаются в суставах. Если шлепнуть рукой по столу, то он не брызнет во все стороны, так как стол всегда твердый и цельный.  Рука не может пройти сквозь стол. Всю эту информацию нельзя получить, просто взглянув на рисунок предмета. Но сколько бы фотографий вы ни сделали, на любой из них ваши пальцы будут сгибаться в суставах, и примыкать к ладони, стол будет всегда твердым, а не жидким. Так ведут себя вещи в реальном мире, и они всегда будут себя так вести. Объекты же виртуального трехмерного мира не существуют в природе, в отличие от вашей руки. Все они - искусственные, а все их свойства задаются программой. Разработчики используют специальные инструменты для аккуратного описания 3D мира, чтобы каждый объект вел себя, так как ему положено.

Какую часть виртуального мира показать на экране?

В любой момент экран демонстрирует только крошечную частичку виртуального трехмерного мира компьютерной игры. Показываемая часть определяется способом задания мира, направлением, куда вы пожелаете в нем пойти и точкой, в которую вы будете при этом смотреть. Независимо от того, какой путь вы выберите: вперед или назад, вверх или вниз, вправо или влево, виртуальный 3D мир вокруг вас определит, что вы увидите из вашей позиции по направлению вашего взгляда. Смысл увиденного вами не должен меняться от сцены к сцене. Если вы смотрите на объект с одной и той же дистанции, то он должен сохранять те же размеры независимо от направления взгляда. Способ движения и вид каждого объекта должны убеждать вас в том, что он имеет постоянную массу, что он всегда твердый или мягкий, жесткий или гибкий и т.д.

Программисты, создающие компьютерные игры, затрачивают огромные усилия на описание 3D мира, чтобы вы могли восхищаться этим миром и не встречать в нем ничего, что бы разубедило вас в его реальности. Вы же не хотите увидеть, как два твердых объекта проходят друг сквозь друга? Это сразу бы напомнило вам об иллюзорности виртуального мира.

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

Hosted by uCoz