Понятие компьютерной геометрии
Под компьютерной геометрией понимают математический аппарат, применяемый в компьютерной графике.
Реалистичность восприятия человеком сложного компьютерного изображения определяется умением разработчика математической модели изображаемого объекта или процесса достоверно повторить на экране его развитие в пространстве и во времени. Модель включает в себя систему уравнений и алгоритмов их реализации. Математической основой построения модели являются уравнения, описывающие форму и движение объектов. Все многообразие геометрических объектов является комбинацией различных примитивов – простейших фигур, которые в свою очередь состоят из графических элементов – точек, линий и поверхностей.
Компьютерная геометрия оперирует не с рисунками, а с числами (координатами точек, векторов, матрицами преобразований, списками данных) и отношениями между ними, выраженными также в цифровой форме. Исходная информация, обработанная специальными алгоритмами, преобразуется в другие цифровые данные, интерпретируемые как искомый результат – модель объекта, его экранное изображение, отношения между объектами сцены и т.п.
Систематизация формул, необходимых для работы с графическими объектами, приведение их к алгоритмическому виду отличает компьютерную графику от обычной, в которой свойства и взаимосвязь графических объектов визуально воспринимаются глазами человека и интеллектуально интерпретируются его мозгом.
Компьютерная геометрия есть математический аппарат, положенный в основу компьютерной графики. В свою очередь, основой компьютерной геометрии составляют различные преобразования точек и линий. При использовании машинной графики можно по желанию изменять масштаб изображения, вращать его, смещать и трансформировать для улучшения наглядности перспективного изображения. Все эти преобразования можно выполнить на основе математических методов.
Преобразования, как и компьютерную геометрию, разделяют на двумерные, или преобразования на плоскости, и трехмерные или пространственные.
Основы рендеринга.
При рендеринге (визуализации) изображений вычислительная система обрабатывает массив данных о структуре модели. Вы уже знаете, что трехмерная модель представляет собой описание объекта (явления), выполненное на строго определённом языке или в виде структуры данных. Это описание содержит геометрические данные, данные о координатах положения точки наблюдателя, информацию об освещении, степени наличия какого-то вещества, напряжённость физического поля (например, при визуализации данных физических и медицинских исследований) и т.д.
Говоря о компьютерной графике, отметим, что визуализация — одна из наиболее важных операций, на практике она тесным образом связана с остальными. Подавляющее большинство программных пакетов трехмерного моделирования и анимации включают в себя функцию рендеринга в обязательном порядке.
С точки зрения этапов процесса технологии создания 3D-изображений различают предварительный рендеринг, как достаточно медленный процесс визуализации, применяющийся в основном при создании видео, и рендеринг в реальном режиме, применяемый в компьютерных играх. Последний часто использует 3D-ускорители.
На текущий момент разработано множество алгоритмов визуализации. Существующее программное обеспечение может использовать несколько алгоритмов для получения конечного изображения. Метод трассировки лучей «в чистом виде», когда расчеты ведутся для каждого луча света света в трехмерной сцене не очень практичен и быстр. Трассирование малого количества лучей (достаточного для получения изображений) занимает чрезмерное количество времени даже на высокопроизводительных вычислительных системах, если не применяется аппроксимация (семплирование).
Необходимость ускорения процедуры привела к появлению четырех групп методов, более эффективных, чем моделирование всех лучей света, освещающих сцену:
· растеризация (англ. rasterization) и метод сканирования строк (англ. scanline rendering)
· метод бросания лучей (англ. ray casting)
· глобальное освещение (англ. global illumination, radiosity)
· метод трассировки лучей (англ. ray tracing)
При использовании методов растеризации сканирования строк визуализация объектов сцены производится проецированием их на экран без рассмотрения эффекта перспективы относительно наблюдателя.
В методе бросания лучей трехмерная сцена рассматривается с определенной точки (положение камеры). Из точки наблюдения на объекты сцены направляются лучи, с помощью которых определяется цвет пикселя на двумерном экране. При этом лучи прекращают своё распространение (в отличие от метода обратного трассирования), когда достигают любого объекта сцены либо её фона.
Методика визуализации глобальное освещение использует математику конечных элементов, чтобы симулировать диффузное распространение света от поверхностей и при этом достигать эффектов «мягкости» освещения.
При методе трассировки лучей из точки наблюдения на объекты сцены направляются лучи, с помощью которых определяется цвет пиксела на двумерном экране. Но при этом луч не прекращает своё распространение, а разделяется на три компоненты, луча, каждый из которых вносит свой вклад в цвет пиксела на двумерном экране: отражённый, теневой и преломленный. Количество таких разделений на компоненты определяет глубину трассирования и влияет на качество и фотореалистичность изображения.
Современные 3D-редакторы совмещают в себе несколько техник, чтобы получить достаточно качественное и фотореалистичное изображение.
Генерация шрифтов.
Рассматривая шрифт как объект компьютерной графики, нужно отметить, что существует несколько стандартов шрифтов. Наиболее популярны шрифты корпорации Adobe Systems, разработавшей стандарт Type 1 (масштабируемые шрифты, предназначенные для работы с устройствами PostScript), и Microsoft Corp., создавшей формат TrueType. Оба стандарта имеют свои достоинства и недостатки, что привело к их параллельному сосуществованию. Так же известен тип шрифта OpenType, который является расширением TrueType.
Если вы предполагаете выводить свои документы на фотонаборном автомате, то вам лучше не пользоваться шрифтами TrueType. Это совсем не значит, что они плохи. Просто шрифты Type l написаны на языке PostScript, родном для фотонаборных автоматов, и в случае их использования вероятность неправильной интерпретации заметно меньше, чем при использовании шрифтов TrueType. Если же вы собираетесь выводить созданные публикации на принтере или работаете в сфере Web-дизайна, то, в принципе, безразлично, каким шрифтом пользоваться. Однако шрифты TrueType поддерживаются системой, в то время как для шрифтов Type l необходима промежуточная поддержка (например, Adobe Type Manager). Поэтому при работе в офисных приложениях предпочтение отдается все же шрифтам TrueType.
Шрифты TrueType и OpenType контурные, то есть их изображение формируется с помощью прямых и кривых линий. Для тех и других шрифтов возможны масштабирование и поворот.
Для контурных шрифтов Type 1 возможны масштабирование и поворот.
Растровые шрифты поддерживаются системой, поскольку некоторые программы все еще зависят от них.
Растровые шрифты хранятся в файлах в виде точечных рисунков и создаются путем отображения наборов точек на экране и бумаге. Растровые (точечные) шрифты - шрифты, сохраняемые в виде точечных рисунков.
Рис. 2.19. Примеры растровых шрифтов (последний в списке – Symbol).
Растровый шрифт имеет конкретный размер и разрешение для конкретного принтера; символы такого шрифта не могут масштабироваться или поворачиваться. Если принтер не поддерживает растровые шрифты, он не сможет их напечатать. Все пять шрифтов в этом списке являются растровыми: Courier, MS Sans Serif, MS Serif, Small, Symbol (примеры на Рис. 2.19.).
Типовые источники света и свойства материалов.
Изучив предыдущие примеры, вы получили представление о направленном источнике света и материале объектов. Теперь нам предстоит разобраться с этими вещами основательнее.
В программах для трехмерной графики поддерживаются различные источники света, которые можно условно разделить на три типа:
· стандартные
· фотометрические
· системы дневного освещения
Стандартные источники света в свою очередь можно разделить на несколько групп:
· направленные
· направленные с мишенью
· всенаправленные
Направленные источники используются в основном для того, чтобы осветить конкретный объект или участок сцены. При помощи направленных источников света можно имитировать, например свет автомобильных фар, луч прожектора или карманного фонарика и т. д. Всенаправленные источники света равномерно излучают свет во всех направлениях. Используя их, можно имитировать, например освещение от электрических ламп, фонарей, свет пламени и др.
Большинство источников света характеризуются такими параметрами, как Multiplier (Яркость), Decay (Затухание) и Shadow Map (Тип отбрасываемой тени). По умолчанию, Multiplier (Яркость) любого источника света равна единице, а параметр Decay (Затухание) выключен.
Направленный источник располагается в бесконечности. Вектор, задаваемый при его инициализации, определяет направление потока испускаемых лучей. Лучи света параллельны. Интенсивность источника постоянна для каждой точки пространства. Данный источник света можно считать моделью солнечного освещения.
При такой модели освещения если для всех вершин квадрата задать одну и ту же нормаль, то при любом его положении все точки имеют один и тот же цвет. Цвет этот определяется комбинацией цвета материала и источника света. Если квадрат материала желтого цвета освещать белым светом, результат будет точно таким же, как и при освещении квадрата белого материала, источником света с наложенным желтым светофильтром.
Для получения действительно реалистичных изображений направленный источник не годится в принципе, например, стены комнаты будут иметь ровный оттенок. Для таких целей предусмотрен точечный источник света, отличающийся от направленного именно тем, что при его использовании учитывается реальное положение источника в пространстве. Точечный источник света похож на лампочку или свечу, лучи света испускаются из какой-то точки во всех направлениях. Помимо положения, параметрами такого источника являются его интенсивность и ослабление.
Интенсивность точечного источника - это его изначальная яркость, мощность. Явно она не задается, ее определяют значения цветовых составляющих поля Diffuse. Ослабление складывается из нескольких составляющих: область действия источника и коэффициенты, задающие закон ослабления освещенности. Область действия определяется линейной характеристикой, расстоянием.
Все точки, расположенные от источника дальше этого расстояния, никак им не освещаются. Коэффициенты закона ослабления (их три) задают, как падает освещенность в пространстве.
Первый коэффициент соответствует неизменному, постоянному освещению. Если установить такое правило, то, независимо от расстояния до источника света, все точки, попадающие в область освещения, освещаются одинаково. Второй коэффициент соответствует линейному затуханию. По мере удаления от источника света интенсивность освещения падает по линейному закону так, что на границе области его интенсивность становится нулевой. Последний коэффициент определяет квадратичное убывание интенсивности, степень падения освещенности – квадрат. расстояния.
Коэффициенты задаются вещественными, обычно их значения нулевые или единичные. Самой распространенной схемой является линейный закон убывания, но вы можете строить и собственный, сложный закон освещенности, а не использовать определенную схему (если задать единичными все три коэффициента, интенсивность падает по полиномиальному закону). Для линейного закона убывания в настройках источника света в программе-редакторе необходимо установить функцию Decay (Затухание), которая определяется обратной зависимостью света от расстояния или квадрата расстояния.
Свойства материалов объектов трехмерной сцены определяют характер «взаимодействия» поверхности этих объектов со светом при визуализации. Обычно под рассеянием света понимается рассеянное отражение лучей света от шероховатых поверхностей. В некоторых случаях применяется термин диффузия света, также означающий рассеяние света по всевозможным направлениям при его отражении от матовых и шероховатых поверхностей.
Лучи света рассеиваются не только при отражении от поверхностей или взаимодействии с краями препятствий, но и при прохождении света через прозрачную или просвечивающую среду. В случае наличия в среде оптических неоднородностей переизлучение энергии электромагнитной волны происходит как в направлении проходящей волны (пропускание), так и в стороны. Изменение направления распространения света, обусловленное пространственной неоднородностью среды, когда на пути распространения света встречаются мельчайшие частицы, которое воспринимается как несобственное свечение среды, также называется рассеянием света. Рассеяние света наряду с дифрагированной, преломленной и отраженной на неоднородностях составляющими, образует рассеянный свет.
Нарушение оптической однородности сплошной среды, при которой показатель преломления среды не постоянен, а меняется от точки к точке, является принципиально необходимым для рассеяния света. Оптическими неоднородностями (кроме границ среды) являются не только включения инородных частиц, но и флуктуации плотности, анизотропии и концентрации в чистых веществах, которые возникают в силу статистической природы теплового движения частиц. Рассеяние света тем больше, чем менее прозрачна и однородна среда, и чем больший путь проходит в ней свет. В общем случае под рассеянием света понимается изменение характеристик оптического излучения (света) при его взаимодействии с веществом. Такими характеристиками могут быть пространственное распределение интенсивности, частотный спектр, поляризация света (рассеянный свет по некоторым направлениям частично поляризован).
Рис. 2.20. Отражение света.
Вследствие обилия и разнообразия факторов, определяющих рассеяние света, развить единый и одновременно детальный способ его описания для различных случаев не удалось. Рассматриваются идеализированные ситуации с разной степенью адекватности самому явлению.
Зеркальное отражение отличает определённая связь положений падающего и отражённого лучей:
· отражённый луч лежит в плоскости, проходящей через падающий луч и нормаль к отражающей поверхности
· угол отражения равен углу падения
Интенсивность отражённого света характеризуется коэффициентом отражения.
Диффузное отражение — его рассеивание неровной поверхностью второй среды по всем возможным направлениям. Пространственное распределение отражённого потока излучения и его интенсивность различны в разных конкретных случаях и определяются соотношением между длинной волны падающего света и размерами неровностей, распределением неровностей по поверхности, условиями освещения, свойствами отражающей среды.
Скачано с www.znanio.ru
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.