Основы компьютерной графики для программистов. Казанцев А.В. - 74 стр.

UptoLike

Составители: 

Основы компьютерной графики для программистов 74
____________________________________________________________________________________________________________________
http://www.ksu.ru/persons/9134.ru.html
Begin
. . .
SphereObj:= gluNewQuadric;
. . .
end;
Затем, для формирования каждого нового кадра изображения трехмерной сцены нужно
указывать, каким именно должен быть Quadric-объект. В операторе
case указываем
способ построения сферы:
как сплошную:
gluQuadricDrawStyle (SphereObj, GLU_FILL),
или в виде проволочной модели:
gluQuadricDrawStyle (SphereObj, GLU_LINE).
После предварительных настроек даем команду на отрисовку сферы:
gluSphere(SphereObj, 35, 25, 25). Числовые параметры в этой функции есть,
соответственно, радиус сферы, количество делений по меридиану или вдоль оси z,
(которая проходит в направлении, перпендикулярном плоскости экрана), и количество
деленийпо широте”, по аналогии с географическим делением земного шара.
Следует учитывать, что при применении модели освещенности с использованием цвета
вершины источники света должны быть
отключены. Это достигается с помощью одной
команды:
glDisable(GL_LIGHTING).
Здесь мы встречаемся с парой часто используемых функций OpenGL:
void glEnable(GLenum cap) и
void glDisable(GLenum cap),
- так выглядит их описание на языке С в документации.
Эти функции предназначены, соответственно, для включения и выключения
определенных настроек визуализации OpenGL. Параметр
cap определяет
символическую константу параметра визуализации.
Например, включение режима освещения достигается вызовом функции
glEnable(GL_LIGHTING).
Отображение одноцветных трехмерных объектов в данном режиме сильно затрудняет
восприятие трехмерности за счет того, что грани одного цвета сливаются в одну
цветовую область на экране. При повототах и перемещениях объектов цвет не
изменяется, так что грани всегда выглядят как пятно одного цвета.
Замечание. Данный режим освещенности в комбинации с режимом смешения цветов
можно с успехом применить, например, для имитации тени.
Получение эффекта полупрозрачности
Задать полупрозрачность можно с помощью функции смешения цветов. Этот эффект
получается когда новое изображение накладывается поверх старого. В этом случае
цвета пикселов в одинаковых позициях представляются аргументами функции
смешения с учетом их альфа-компонент.
В начале включаем режим смешения цветов:
glEnable(GL_BLEND);
Основы компьютерной графики для программистов                                                                  74
____________________________________________________________________________________________________________________


  Begin
   . . .
     SphereObj:= gluNewQuadric;
   . . .
  end;
Затем, для формирования каждого нового кадра изображения трехмерной сцены нужно
указывать, каким именно должен быть Quadric-объект. В операторе case указываем
способ построения сферы:
как сплошную:
                         gluQuadricDrawStyle (SphereObj, GLU_FILL),
или в виде проволочной модели:
                         gluQuadricDrawStyle (SphereObj, GLU_LINE).
После предварительных настроек даем команду на отрисовку сферы:
gluSphere(SphereObj, 35, 25, 25). Числовые параметры в этой функции есть,
соответственно, радиус сферы, количество делений по меридиану или вдоль оси z,
(которая проходит в направлении, перпендикулярном плоскости экрана), и количество
делений “по широте”, по аналогии с географическим делением земного шара.
Следует учитывать, что при применении модели освещенности с использованием цвета
вершины источники света должны быть отключены. Это достигается с помощью одной
команды: glDisable(GL_LIGHTING).
Здесь мы встречаемся с парой часто используемых функций OpenGL:
     void glEnable(GLenum cap) и
     void glDisable(GLenum cap),

- так выглядит их описание на языке С в документации.
Эти функции предназначены, соответственно, для включения и выключения
определенных настроек визуализации OpenGL. Параметр cap определяет
символическую константу параметра визуализации.
Например, включение                         режима   освещения       достигается         вызовом        функции
glEnable(GL_LIGHTING).
Отображение одноцветных трехмерных объектов в данном режиме сильно затрудняет
восприятие трехмерности за счет того, что грани одного цвета сливаются в одну
цветовую область на экране. При повототах и перемещениях объектов цвет не
изменяется, так что грани всегда выглядят как пятно одного цвета.
Замечание. Данный режим освещенности в комбинации с режимом смешения цветов
можно с успехом применить, например, для имитации тени.


Получение эффекта полупрозрачности
Задать полупрозрачность можно с помощью функции смешения цветов. Этот эффект
получается когда новое изображение накладывается поверх старого. В этом случае
цвета пикселов в одинаковых позициях представляются аргументами функции
смешения с учетом их альфа-компонент.
В начале включаем режим смешения цветов:
               glEnable(GL_BLEND);

http://www.ksu.ru/persons/9134.ru.html