Возможности графических карт. 3D графика
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: дороги реферат, сочинение тарас бульбо
| Добавил(а) на сайт: Арина.
1 2 3 4 | Следующая страница реферата
Возможности графических карт. 3D графика
Реферат
Магнитогорск, 2004 г.
3D
Условно компьютерную графику можно разделить на две категории. Первая - это имитация естественных способов рисования, например “холст, масло”, самая известная программа — Fractal Design Painter. Вторая категория - это программы моделирования, в которых художник уже не контролирует каждый элемент изображения, лишь определяет композицию и общие законы построения рисунка. О последних и пойдет разговор. Как извес тно, существуют программы, которые по одному лишь числу могут выда ть завораживающую абстрактную картину, однако здесь от художника ничего не зависит. Совсем другое дело — генераторы ландшафтов (landscape generators). На основании сложных математических процедур они позволяют моделировать реальный мир. В отличие от большинства пакетов трехмерной графики, генераторы ландшафтов оперируют понятиями близкими к геодезии и метеорологии. Облака, положение солнца, поверхность суши или гладь моря — вот составляющие, благодаря которым строятся картины с помощью пакетов такого рода. Пользователь контролирует только время суток, рельеф местности или направление ветра, а программа сама воспроизводит обстановку, которая бы сложилась в реальном мире при данных погодных условиях. Базисом для таких пакетов являются фракталы, описанные ученым из исследовательского центра IBM Бенуа Мандельбротом.
Фракталы - это фигура или часть фигуры, которая может быть разбита на элементы, каждая из которых — уменьшенная копия целого… “Облака - это не сферы, а береговая линия - не прямая”. Это цитата из книги “Фрактальная геометрия природы” Мандельброта, Осталось только применить фрактальную геометрию к построению реалистических пейзажей.
Один из простейших алгоритмов был разработан довольно давно подразделением Lucas Films — Industrial Light & Magic, фирма делала спецэффекты во многих современных фильмах. Но это современные разработки, фрактальные же технологии стали использоваться на заре компьютерной графики. Почему именно фракталы “пришлись ко двору” при генерации ландшафтов, демонстрирует удивительно простой пример построения горы при помощи разбиения базового треугольника на элементы и их случайного смещения.
Любому человеку, хоть раз пытавшемуся изобра зить на листе бу ма ги нечто в трех измерениях, известно, что искомый эффект получ ается путем соответствующих проекций хара ктерных линий объекта на плоскость и использованием плавных цветопереходов (тени). В данном отн ошении черный экран монитора ничем не отличается от белого листа бума ги. Единственная сложность сост оит в том, что нереаль ный герой должен иметь несколько более сложные очертания, чем ку б, и быстро перемеща ться по экрану, желател ьно интенсивно размахива я несколькими конечностями. Причем большинству монстров при сущ инстинкт коллективизма , — стадами любят ходить. С этой, кок оказ алось, достаточно нетрив иальной з адачей справл яются следующим образом . Собственно 3D (D от Dimension — “измерение”) объекта непростой формы получают путем создания его полигональной модели. В ней поверхность подопытного разбивается на многоугольники (Poligons), путем сопряжения которых и вырисовыва ется каркас объекта, от тираннозавра до хлопка взрыва. Вообще говоря, “многоугольник ” — это слишком громко сказано. В подавляющем большинстве случаев за основу берут всего лишь треугольники (достигается максимально возможная стандартизация обработки разнообра зных каркасов).
За создание каркаса отвечает центральный процессор: он вычисляет вершины треу гольников, а затем соединяет их прямыми отрезками. Расчет производится от точки зрения наблюдателя, которая не всегда совпадает с центром экрана . От размера стороны треу гольника за висит и точность, реал истичность прорисовки элемента сцены. Перемещение любого объекта осуществляется пу тем переопределения координат вершин. Эта операция требу ет огромных вычислительных ресурсов процессора: чем более реальное пытаемся получить изображение, тем больше точек приходится рассчитывать. Все та кие ра счеты выполняются над действительными числами с плавающей точкой специальном блоке процессора — F PU ( Floa ting Point Unit). Именно от производительности этого блока в основном зависит скорость прорисовки объекта.
Фирмы-разработчики процессоров именно в этой области особо рекламируют достоинств а своих детищ. Сегодня реально существуе т лишь одна технология, разработанная с предельным вниманием к проблеме вычислений дл я 3D— 30 now! от AMD. Intel пока только у силенно анонсирует процессор с подобной технологией — Katmai. Однако процессоры Pentium изначально превосходил и своих конкурентов в области “плавающих” вычислений, что позволяет им прекрасно справляться со всеми расчетами.
Текстуры
Однако “проволочные” герои в “проволочной” обстановке создают некоторые неудобства. Дл я достижения спецэффектов первоначальный ка ркас покрывается особыми рисунка ми — текстурами. Сама процеду ра нанесения называется Texture Mopping. Вообще говоря, с этой операцией справился бы и процессор, но ему пришлось бы ра ботать весьма долго. Во-первых, хорошие тексту ры за нимают достаточно много места в памяти, а во-вторых, собственно их нанесение связано с большими объемами специфических вычислений. Дл я ускорения этой процедуры созда ны специал ьные ЗD-ускорители (а кселераторы), которые могут хранить текстуры в своей собственной памяти, а все вычисления реализу ются особой микросхемой.
Собственно на уровне тексту р и начинается самое интересное в трехмерной графике: к текстурам применяются различные эффекты для у величения степени реалистичности изображения.
Эффекты
Наверное, одним из самых важных эффектов является возможность реакции объекта на ист очники света (с учетом точ ки расположения наблюдателя). За освещенность отвечают сразу несколько эффектов, имеющих собственные названия.
Расчет тени — Shading — возможен как применительно к площади, так и для каждой вершины отдельно. Последний вариант, естественно, при больших затратах ресурсов дает лучшие результаты. Собственно “тень” получается путем изменения яркости цвета. При повершинном ее расчете цветопереходы будут более плавными.
Однако поверхности в реальной жизни не только поглощают свет, создавая тени, но и отражают его, блестят. В 3D аналогичного результата достигают при помощи э ффекта Environment Mapping. Перемещение затененных и блестящих участков по поверхности объекта позволяет создать более реалистичное изображение движения. Поскольку определенный “блеск” может соответствовать каждой текстуре, то комбинирование таких текстур создаст еще более впечатляющие эффекты.
Для придания изображению поверхности объекта рельефности, используют эффект Bump Mapping. Его сущность заключается в вычислении для точек поверхности значений их углубления (выпуклости) относительно общего уровня. При расчете освещенности после этого эффекта выступающие точки получаются более ярким цветом, а во впадинах, соответственно, более темными. Добавление каждой точке дополнительного признака при вычислениях достаточно сильно их замедляет.
За влияние источников света отвечают эффекты Lens Flaring и Lens Reflection. Последний позволяет реалистично показать ветровое стекло автомобиля или иллюминаторы Вашего транспортного средства. А обозначение таких стекол жизненно важно для того, чтобы как можно явственнее ощутить попадание в стекло камня или пули, ослепление солнечным светом на крутом вираже.
Следующими по важности после Световых следует поставить эффекты коррекции цвета.
Эффект Antialising производит сглаживание “лестницы” при попиксельном представлении линий за счет вычисления среднего значения цвета между цветами линии и фона. Это, скорей всего, самый “энергоемкий” эффект.
Билинейная фильтрация (Bilinear filtering) решает аналогичную проблему “лестницы” для текстур. Для подопытного элемента текстуры выбираются соседи, усреднением цвета которых и получают искомый результат. Билинейной же она называется потому, что складываются цвета четырех соседей. Однако возможно обобщение и для восьми элементов (трилинейная), фильтрация может, как увеличить качество изображения, так и сделать его размытым. Трилинейная фильтрация часто используется при коррекции изображения перспективы (коррекция как таковая тоже может выступать самостоятельным эффектом).
В следующую группу можно выделить атмосферные эффекты и эффекты прозрачности.
Fogging (depth cueing) — “туман (дымка)” моделирует, как видно из названия, туман, дымку, сумерки. Очень важен для реалистичного отображения сцен, происходящих на открытых пространствах, на “свежем” воздухе, также часто используется для уменьшения объемов вычислений путем ограничения видимости: удаленные в дымку объекты можно прорисовывать с меньшей тщательностью.
За прозрачность отвечают два эффекта - Alpha Blending и Color Keying. Последний определяе т частичную прозрачность текс туры. Обычно применяется для изображения разнообразных з еленыхнас аждении . За редкими ку стами враг не с прячется от прицельного огня, а бить по площадям через непрозрачные пальмы — бессмысленная трата боеприпасов. При использовании Alpha Blendi ng каждой точке текстуры ставится в соответствие дополнительное значение, определяющее прозрачность пикселя. Чаще всего это 8 бит. В основном этот эффект применяется для изображения ст екла, огня, воды — как текучей (рек а) , так и “летучей” (дождь). В последнее время больше з начения придается именно прозрачности тех элементов сцены, которые прозрачны по своей природе.
Большая группа эффектов призвана значительн о снизить затраты, привнесенные предыдущими.
Рекомендуем скачать другие рефераты по теме: век реферат, класс.
Категории:
1 2 3 4 | Следующая страница реферата