首页 > 代码库 > OpenGL学习(hello)

OpenGL学习(hello)

#include <gl/glut.h>
void display(void)
{
glClear(GL_COLOR_BUFFER_BIT); // 清除颜色缓冲以及深度缓冲
glColor3f(1.0, 1.0, 1.0);
glBegin(GL_POLYGON); // 绘画开始话多边形
 /*glVertex3f(0.25, 0.25, 0.0);
 glVertex3f(0.75, 0.25, 0.0);
 glVertex3f(0.75, 0.75, 0.0);
 glVertex3f(0.25, 0.75, 0.0);*/
glutWireSphere(1.0,20.0,20.0);
glEnd();// 结束
glFlush();
}


void init(void)
{
glClearColor(0.0, 0.0, 0.0, 0.0); //清空当前的所有颜色
glMatrixMode(GL_PROJECTION); //指定哪一个矩阵是当前矩阵
glLoadIdentity(); //将当前的用户坐标系的原点移到了屏幕中心:类似于一个复位操作
glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);//平行投影矩阵
}
int main(int args, char* argv[])
{
glutInit(&args, (char**)argv);    // 对glut进行初始化
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB); // 指定使用单缓存,rgb模式
glutInitWindowSize(480, 320);  // 初始化一个大小480,320的窗口
glutInitWindowPosition(100, 100); // 指定窗口的位置(左上角位置)
glutCreateWindow("Hello OpenGL"); // 定义窗口的名字
init(); // 初始化
glutDisplayFunc(display); // 回调
glutMainLoop(); // 启动程序
return 0;
}

OpenGL学习(hello)