首页 > 解决方案 > 有没有办法在 C++/GLUT 中循环选项

问题描述

我正在制作一个程序,该程序将使用向上和向下箭头循环三角形的颜色。我对 GLUT 和 C++ 很陌生,所以我想不出一种“循环”颜色的方法。

这是三角代码:

无效渲染(无效){

glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

glLoadIdentity();
gluLookAt(      0.0f, 0.0f, 10.0f,
                0.0f, 0.0f, 0.0f,
                0.0f, 1.0f, 0.0f);

glRotatef(angle, 0.0f, 1.0f, 0.0f);

glColor3f(red, green, blue);
glBegin(GL_TRIANGLES);
    glVertex3f(-2, 0, 0.0);
    glVertex3f(2, 0, 0.0);
    glVertex3f(2, 2, 0.0);

glEnd();

angle+=0.1f;

glutSwapBuffers();

} 

和输入代码:

无效 processSpecialKey(int key, int x, int y) {

switch(key) {
    case GLUT_KEY_UP :
                    red += 1.0;
                    green += 0.0;
                    blue += 0.0; break;
    case GLUT_KEY_DOWN :
                    red += 0.0;
                    green += 1.0;
                    blue += 0.0; break;
}

}

标签: c++glut

解决方案


推荐阅读