c++ - 有没有办法在 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;
}
}
解决方案
推荐阅读
- tensorflow - Tensorflow分布式训练高带宽参数服务器
- python - 如何下载通过 http 请求提供给我下载的文件?
- powershell - 管道和 Powershell
- c++ - 为什么 freopen() 不能在 Microsoft Visual Studio 上工作,而是在 CodeBlocks 上工作?
- typescript - 我可以创建两个从数字或字符串派生的相等类型,然后求和或连接这些类型吗?
- android - 向通知中心添加信息
- html - 如何使背景适合整个 iPhoneX 屏幕,包括刘海
- javascript - `Gatsby Build` 错误地输出混洗数组对象
- sql - 使用 PostgreSQL 在 Django 中寻找读写锁,例如,SELECT FOR SHARE
- github-pages - Github-pages/kramdown 不会正确呈现我的混合 markdown/html