Opengl, цвет поверхностей

04.01.2012
Маленькое пояснение, как задать цвет создаваемой поверхности.

Цвет


Для того, что бы можно было задавать цвета поверхностей, необходимо включить параметр GL_COLOR_MATERIAL, иначе цвета не будут меняться.
glEnable(GL_COLOR_MATERIAL);

После чего, перед соданием какой либо поверхности необходимо выполнить следующую процедуру glColor3f(r, g, b);, где r, g и b числовые параметры количества того или иного цвета.
r - красный;
g - зелёный;
b - синий.
Т.е. если написать
glColor3f(1, 0, 0);

то, созданная после поверхность будет красного цвета т.к. синий и зелёный цвета отключены (значение равно 0).
Создаём зелёный квадрат:
glBegin(GL_QUADS);

glColor3f(0, 1, 0);
glNormal3f(0.0, 0.0, 1.0);
glVertex3f(1.0, 1.0, 1.0);
glVertex3f(-1.0, 1.0, 1.0);
glVertex3f(-1.0, -1.0, 1.0);
glVertex3f(1.0, -1.0, 1.0);
glEnd;

P.S. И не стоит забывать, что значение параметров лежит в отрезке от 0 до 1.