Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Современные стандарты компьютерной графики




Интерфейс между прикладной программой и графической системой – это множество функций, которые в совокупности образуют графическую библиотеку [24]. Спецификация этих функций и есть то, что называется интерфейсом прикладного программирования (API — application programmer's interface). Модель системы прикладного программирования показана схематически на рис.11.3.

 

 

Рис.11.3. Структура прикладной графической системы

 

Для программиста, занимающегося разработкой прикладной программы, существует только API, и он избавлен от необходимости вникать в подробности работы аппаратуры и программной реализации функций графической библиотеки. С точки зрения прикладного программиста те функции, к которым он обращается через API, должны соответствовать концептуальной модели описания изображения. Наибольшее распространение получили следующие интерфейсы: OpenGL, Direct3D, VRML, PHIGS, Heidi.

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

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

Некоторые API позволяют пользователю работать напрямую с буфером кадра – считывать и записывать коды засветки отдельных пикселей. Иногда в число примитивов включаются отрезки кривых и участки поверхностей, хотя чаще такие объекты приходится аппроксимировать более простыми примитивами, причем эта задача возлагается на саму приклад­ную программу.

OpenGl. Стандарт OpenGL(Open Graphics Library – открытая графическая библиотека) был разработан и утвержден в 1992 году ведущими фирмами в области разработки программного обеспечения как эффективный аппаратно-независимый интерфейс, пригодный для реализации на различных платформах. Основой стандарта стала библиотека IRIS GL, разработанная фирмой Silicon Graphics Inc [6, 24].

На сегодняшний день графическая система OpenGL поддерживается большинством производителей аппаратных и программных платформ. Эта система доступна тем, кто работает в среде Windows, пользователям компьютеров Apple. Свободно распространяемые коды системы Mesa (пакет API на базе OpenGL) можно компилировать в большинстве операционных систем, в том числе в Linux.

Хотя библиотека OpenGL и считается одной из лучших библиотек для профессионального применения и для игр, у неё существуют конкуренты.

Direct3D. Одним из главных конкурентов OpenGL считается Direct3D из пакета DirectX, разработанный фирмой Microsoft [2, 5, 25]. Direct3D создавался исключительно для игровых приложений. Если сравнивать эти две библиотеки, то нельзя сказать, что одна из них лучше, а другая хуже, у каждой библиотеки имеются свои особенности. Например, если сравнивать их в плане переносимости программ с одной платформы на другую, то Direct3D будет работать только на Intel платформах под управлением операционной системы Windows.

Программы, написанные с помощью OpenGL можно успешно перенести на такие платформы как Unix, Linux, SunOS, IRIX, Windows, MacOS и многие другие. В плане объектно-ориентированного подхода OpenGL уступает Direct3D. OpenGL работает по принципу конечного автомата, переходя из одного состояния в другое, совершая при этом определенные преобразования. OpenGL легче чем Direct3D для изучения основ графики. OpenGL можно применять, например, для начального изучения трёхмерной графики.

Контрольные вопросы и задания

 

1. Что представляет собой конвейерная архитектура?

2. Перечислите основные составляющие видеокарты.

3. Что такое ускоритель видеокарты?

4. Дайте определение интерфейсу прикладного программирования в компьютерной графике.

5. Какие наиболее известные графические интерфейсы прикладного программирования Вы знаете?

6. Какой типовой набор возможностей для создания графики включают в себя интерфейсы прикладного программирования?

 





Поделиться с друзьями:


Дата добавления: 2015-04-25; Просмотров: 1012; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.013 сек.