Все описания функциональности OpenGL, если не указан другой источник, взяты из спецификации OpenGL 1.5.
1.1. История OpenGL
OpenGL - это промышленный стандарт кроссплатформенного программного интерфейса (API). Его спецификация приняла законченный вид в 1992 г., а первые реализации появились в 2003 г. Интерфейс оказался почти полностью совместимым с уже запатентованным программным интерфейсом графической библиотеки от Silicon Graphics, Inc. - Iris GL API, который разрабатывался и поддерживался этой компанией. Ею же, совместно с другими производителями графического аппаратного обеспечения, был создан общедоступный стандарт, который назвали OpenGL.
У OpenGL много общего с его «родственником», Iris GL. Он должен обеспечивать доступ к возможностям графического аппаратного обеспечения па самом низком уровне, какого только можно достичь, не теряя независимости от платформы. Изначально OpenGL создавался как интерфейс самого низкого уровня доступа к графическому «железу». Реализация OpenGL доступна па многих платформах - Macintosh, PC, Unix-системах. Она включает поддержку графических аппаратных архитектур, начиная с тех, что предоставляют простой доступ к графическому буферу, и заканчивая такими, в которых псе делается аппаратно.
С момента выхода первой версии OpenGL (1.0) в июне 1992 г. стандарт перерабатывался и дополнялся еще пять раз. Каждая переработка сопровождалась внесением новой функциональности в API. Текущая версия спецификации OpenGL - 1.5.
Шейдер - это небольшая программа, состоящая из набора элементарных операции, часто применяющихся в ЗБ-графике. Она загружается в нидсокарту и управляет работой самого графического процессора. - Пгт.<- ч перед.
1.1. История OpenGL
Первые реализации, соответствующие стандарту OpenGL 1.0, появились в 1993 г. Подготовка версии 1.1 закончена в 1997 г., в нее добавлены две важные функции - обработка массивов вершин (vertex arrays) и обработка текстурных объектов (texture objects).
Спецификацию OpenGL 1.2 с поддержкой ЗО-текстур и дополнительными функциями обработки изображения опубликовали в 1998 г. Спецификацию OpenGL 1.3 завершили в 2001 г., добавив работу с кубическими текстурами (cube map textures), сжатыми текстурами, множественными текстурами и другие возможности. OpenGL 1.4 выпустили в 2002, добавив автоматическое создание текстур для объектов различной удаленности (mipmap generation), дополнительные функции сглаживания (blending), внутренние форматы текстур для хранения глубины для использования в вычислении теней, рисование множественных массивов вершин одной командой, больший контроль растеризации, контроль сглаживания границ с помощью шаблонных текстур (stencil wrapping), а также различные дополнения к текстурировапию.