Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Chast_II_Osn_progr_trekhmernoy_grafiki.doc
Скачиваний:
2
Добавлен:
01.05.2025
Размер:
1.83 Mб
Скачать

Введение

Лекции данной части учебного курса "Основы программирования на языке Си++" предназначены для начального изучения графической библиотеки OpenGL и закрепления навыков программирования на процедурном подмножестве языка Си++. Предварительные знания в области трехмерной компьютерной графики не предполагаются. В данном курсе демонстрируется, что для применения готовых программных средств необходимо знать основные задачи и алгоритмы конкретной предметной области. С точки зрения изучения программирования показывается общность понятий абстрактных типов данных (на примере стека и массива). Вводится понятие макета (каркаса) программы и функций обратной связи, которые используются для написания программ в событийно-управляемой среде.

На практических занятиях используется среда разработки Microsoft Visual C++ на ПК под управлением Windows 95/98/NT. Все программы, рассматриваемые в качестве примеров в лекциях, и ответы к упражнениям написаны на стандартном ANSI Си++ и проверены в среде Microsoft Visual C++ 5.0 на ПК под управлением Windows 98.

Лекция 1. Библиотека OpenGl

1. Назначение библиотеки OpenGl

Для упрощения разработки программ на языке Си++ существует большое количество готовых библиотек с реализацией алгоритмов для конкретных предметных областей, от численных расчетов до распознавания речи. Библиотека OpenGL является одним из самых популярных программных интерфейсов (API) для работы с трехмерной графикой. Стандарт OpenGL был утвержден в 1992 г. ведущими фирмами в области разработки программного обеспечения. Его основой стала библиотека IRIS GL, разработанная фирмой Silicon Graphics на базе концепции графической машины Стэнфордского университета (1982 г.).

OpenGL переводится как Открытая Графическая Библиотека (Open Graphics Library). Программы, использующие OpenGL, гарантируют одинаковый визуальный результат во многих операционных системах – на персональных компьютерах, на рабочих станциях и на суперкомпьютерах.

С точки зрения программиста, OpenGL – это программный интерфейс для графических устройств (например, графических ускорителей). Он включает в себя около 150 различных функций, с помощью которых программист может задавать свойства различных трехмерных и двумерных объектов и выполнять их визуализацию (рендеринг). Т.е. в программе надо задать местоположение объектов в трехмерном пространстве, определить другие параметры (поворот, растяжение, ...), задать свойства объектов (цвет, текстура, материал, ...), положение наблюдателя, а затем библиотека OpenGL выполнит генерацию двумерной проекции этой трехмерной сцены (рис. 1.1).

Рис. 1.1. Двумерная проекция трехмерной сцены, полученная с помощью библиотеки OpenGL.

Можно сказать, что библиотека OpenGL является библиотекой только для визуализации трехмерных сцен (rendering library). Она не поддерживает какие либо периферийные устройства (например, клавиатуру или мышь) и не содержит средств для управления экранными окнами. Обеспечение взаимодействия периферийных устройств с библиотекой OpenGL в конкретной операционной системе является задачей программиста.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]