OpenGL C++制作三角形
OpenGL C++ Making Triangle
我正在尝试制作一个三角形,如果我右键单击它,它会改变其颜色,但我的代码不起作用。我正在使用Codeblocks OpenGL GLUT项目。如果我将 GLUT) GB 值更改为 0,它不会显示输出
#include<glut.h>
#include<gl/gl.h>
#include<gl/glu.h>
#define RED 1
#define GREEN 2
#define BLUE 3
#define GLUT_RGBA 1
// i have made changed in RGB and RGBA by changing it's value 0 or 1 but no //output
#define GLUT_DOUBLE 2
#define GLUT_DEPTH 16
// also changed these two values but still no
float angle =0.0;
float red = 1.0, blue =1.0, green=1.0;
void renderScene(void) {
glClear(GL_COLOR_BUFFER_BIT/GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glRotatef(angle,0.0,1.0,0.0);
glColor3f(red,green,blue);
glBegin(GL_TRIANGLES);
glVertex3f(-0.5,-0.5,0.0);
glVertex3f(0.5,0.0,0.0);
glVertex3f(0.0,0.5,0);
glEnd();
angle++;
glutSwapBuffers();
}
void ProcessMenuEvents(int options){
switch (options){
case RED:
red =1.0; green=0.0 ; blue=0.0;
break;
case GREEN:
red =0.0; green=1.0 ; blue=0.0;
break;
case BLUE:
red =0.0; green=0.0 ; blue=1.0;
break;
}
}
int main(int argc, char **argv){
glutInit(&argc,argv);
//glutInitDisplayMode(GLUT_DEPTH/GLUT_DOUBLE/1.0);
glutInitDisplayMode(GLUT_DEPTH/GLUT_DOUBLE/GLUT_RGBA);
glutInitWindowPosition(100,100);
glutInitWindowSize(320,320);
glutCreateWindow("GHJYUGH");
glutDisplayFunc(renderScene);
glutIdleFunc(renderScene);
glutCreateMenu(ProcessMenuEvents);
glutAddMenuEntry("red",RED);
glutAddMenuEntry("green",GREEN);
glutAddMenuEntry("blue",BLUE);
glutAttachMenu(GLUT_RIGHT_BUTTON);
glutMainLoop();
}
错误是由于顶点角度引起的,程序给出了一些顶点错误
void renderScene(void) {
glClear(GL_COLOR_BUFFER_BIT/GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glRotatef(angle,0.0,1.0,0.0);
glColor3f(red,green,blue);
glBegin(GL_TRIANGLES);
glVertex3f(-0.5,-0.5,0.0);
glVertex3f(0.5,0.0,0.0);
glVertex3f(0.0,0.5,0);
glEnd();
angle++;
glutSwapBuffers();
}
相关文章:
- 绘制旋转的三角形
- 如何用for循环在c++中生成单词三角形
- 如何使用递归打印修改后的星号三角形图案
- C++ 创建带有 for 循环的三角形
- 绘制顺时针三角形,重新排序点
- 在顶点着色器中使用 OpenGl 的未声明标识符,我在顶点着色器中绘制三角形时遇到问题
- Eigen c++ 三角形来自
- 为我的 c++ 类介绍制作一个三角形分类器.我有几个问题
- 使用对象文件读取三角形数据网格
- 从捕获的帧中裁剪三角形 - OpenCV 和 C++
- 如何从 3D 曲面网格中删除自相交三角形?
- 以C++输出一个数字三角形
- 打印对立三角形在C++中起作用
- 确定C++中的等腰直角三角形
- 是否可以使用 DirectX 3D 11 绘制由三角形组成的圆?
- 形成一个斐波那契三角形,使得每个数字是上面左对角线或右对角线上两个数字的总和
- OpenGL绘制三角形而不是正方形
- 将数字表示为两个三角形数字的总和
- OpenGL程序不显示三角形
- 在 OpenGL 中使用三角形绘制字母?