C++ 使用直体的棋盘
我在做一个画棋盘的程序代码是C++ 使用直体的棋盘,c++,opengl,C++,Opengl,我在做一个画棋盘的程序代码是 #include "glut.h" void myDisplay(void); void myInit(void); int main(int argc, char ** argv) { glutInit(&argc, argv); glutInitWindowSize(640, 480); glutInitWindowPosition(100, 150); glutCreateWindow("hello");
#include "glut.h"
void myDisplay(void);
void myInit(void);
int main(int argc, char ** argv)
{
glutInit(&argc, argv);
glutInitWindowSize(640, 480);
glutInitWindowPosition(100, 150);
glutCreateWindow("hello");
glutDisplayFunc(myDisplay);
myInit();
glutMainLoop();
return 0;
}
void myInit(void)
{
glClearColor(1, 1, 1, 0);
glColor3f(0, 0, 0);
glPointSize(10);
glutInitDisplayMode(GLUT_SINGLE | GL_RGB);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(640, 0, 480, 0);
}
void myDisplay(void)
{
glClear(GL_COLOR_BUFFER_BIT);
int counter = 0;
for (GLint x = 0; x < 120; x += 15)
{
for (GLint y = 0; y < 120; y += 15)
{
counter++;
if (counter & 1 ){
glColor3f(.6, .6, .6);
}
else{
glColor3f(.2, .2, .2);
}
glRecti(x, y, (x + 15), (y + 15));
}//end of y
}//end of x
glFlush();
}
#包括“glut.h”
void myDisplay(void);
void myInit(void);
int main(int argc,字符**argv)
{
glutInit(&argc,argv);
GLUTINITWindowsSize(640480);
位置(100150);
“你好”;
glutDisplayFunc(myDisplay);
myInit();
glutMainLoop();
返回0;
}
void myInit(void)
{
glClearColor(1,1,1,0);
gl3f(0,0,0);
gl点大小(10);
glutInitDisplayMode(GLUT_SINGLE | GL_RGB);
glMatrixMode(GL_投影);
glLoadIdentity();
gluOrtho2D(640,0480,0);
}
void myDisplay(void)
{
glClear(GLU颜色缓冲位);
int计数器=0;
对于(闪烁x=0;x<120;x+=15)
{
对于(闪烁y=0;y<120;y+=15)
{
计数器++;
如果(计数器&1){
GL3F(.6、.6、.6);
}
否则{
GL3F(.2、.2、.2);
}
glRecti(x,y,(x+15),(y+15));
}//y端
}//x的末端
glFlush();
}
结果是
现在,如果我在myDisplay函数的my(loops)中的条件中添加equal(=)符号,它可以正常工作,但它还可以再添加一行和一个colu。所以这是一个新的国际象棋无聊的9X9
注意:我已经调试了程序,有趣的是,它在调试模式下运行良好,因为它确实在条件之间切换 使用