我刚刚开始学习GLUT和OpenGL,单击按钮时我需要显示三角形的帮助。
我绘制了一个UFO,当我们单击左按钮时,我想在UFO下显示黄色三角形作为灯光。
首先,我编写了一个函数,例如:
void lightEffect() {
glColor3ub(255, 204, 0);
glBegin(GL_TRIANGLES);
glVertex2f(xK - 100, yK + 33);
glVertex2f(xK - 60, yK - 20);
glVertex2f(xK - 140, yK - 20);
glEnd();
}
并尝试这样称呼它:
void onClick(int button, int stat, int x, int y)
{
if (button == GLUT_LEFT_BUTTON && stat == GLUT_DOWN)
lightEffect();
glutPostRedisplay();
}
但是,如果我没有在显示函数中调用该函数,那么glutPostRedisplay将无用,而在编写时,它将不会检查是否单击了该函数。它只会显示灯光效果。因此,如果你们能帮助我,我将不胜感激。