4.3 Интерполяция цветов

Автор: zombie

     Когда вы создаете многоугольник, вы можете задать цвет для каждой его вершины. Если разрешено сглаживание цветов, то многоугольник будет переливаться. Поясню на примере. Режим сглаживания по умолчанию разрешен. Он переключается функцией glShadeModel с аргументами GL_FLAT и GL_SMOOTH. GL_FLAT запрещает сглаживание. На мой взгляд, сглаживание редко нужно. Вещь красивая, но бесполезная. Я в своих неучебных программах этот режим никогда не использовал. Поэтому советую его отключать, особенно, при программировании анимированного приложения. Создайте очередной проект. В функцию main добавьте

 
 glShadeModel(GL_SMOOTH);

Функцию display отредактируйте следующим образом:

void CALLBACK display(void)
{
 glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );

  glBegin(GL_TRIANGLES);

   glColor3d(1,0,0);
   glVertex2d(0,0);

   glColor3d(0,1,0);
   glVertex2d(0,3);

   glColor3d(0,0,1);
   glVertex2d(3,0);

  glEnd();

  auxSwapBuffers();
}


Исходный файл смотрите здесь. Исполняемый файл здесь.

Комментарии закрыты.