刚开始学,有些比较长的代码,虽然都是基本固定的,但还是会记不住,故记录下来。
#include <GL/glut.h>
//自定义窗口初始化
void myinit()
{
glClearColor(1.0, 1.0, 1.0, 0.0);//清空当前所有颜色
glMatrixMode(GL_PROJECTION);//模式
gluOrtho2D(0.0, 200.0, 0.0, 150.0);//指定屏幕区域对应的模型坐标范围
}
void function()
{
/*code*/
}
void main(int argc, char **argv)
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize(500, 500);
glutInitWindowPosition(0, 0);
glutCreateWindow("窗口的名字");
glutDisplayFunc(function);
myinit();
glutMainLoop();
}
例如,如果要绘点,可以在function中添加:
/* 绘制点 */
glBegin(GL_POINTS); //开始绘制
glVertex2i(x1坐标, y1坐标,color);
glVertex2i(x2坐标, y2坐标,color); //可以添加任意数量的点
glEnd(); //结束绘制
opengl的函数一般以gl开头,函数名就标记了参数的类型和数量。例如上面的glVertex2i,2指两个参数,i指整数int。同理d是double,f是float。
另外,现在vs2017都可以直接在vs上下载opengl库,只需要建立一个控制台应用文件,项目-》管理Nuget程序包-》浏览,输入“nupengl",下载搜索到的两个文件(nupengl.core、nupengl.core.redist)就可以了,很方便。