第一个C++OpenGL程序(计算机图形学程序2.1)-创新互联

●本帖教程

成都创新互联是一家专业提供冠县企业网站建设,专注与成都网站建设、成都网站制作、H5高端网站建设、小程序制作等业务。10年已为冠县众多企业、政府机构等服务。创新互联专业网站设计公司优惠进行中。

○教材程序 2.1

#include#include#includeusing namespace std;


void init(GLFWwindow* window) {}
void display(GLFWwindow* window, double correntTime) {
	glClearColor(1.0, 0.0, 1, 0);
	glClear(GL_COLOR_BUFFER_BIT);//清除颜色缓冲区

}
int main(void) {
	if (!glfwInit()) { exit(EXIT_FAILURE); }
	glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4);//指定机器必须与OenGL版本号4.3兼容(主版本号4)
	glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);//次版本号3
	#pragma execution_character_set("utf-8")//设置执行汉字字符集

	GLFWwindow* window = glfwCreateWindow(600, 600, "嗨!踉跄前行", NULL, NULL);//负责创建GLFW窗口
	glfwMakeContextCurrent(window);//调用OpenGL上下文关联
	if (glewInit() != GLEW_OK) { exit(EXIT_FAILURE); }
	glfwSwapInterval(1);//用来开启垂直同步(Vsync)--GLFW窗口默认是双缓冲的
	init(window);
	while (!glfwWindowShouldClose(window)){
		display(window, glfwGetTime());//调用display()方法
		glfwSwapBuffers(window);//调用方法以绘制屏幕
		glfwPollEvents();//调用方法处理窗口相关事件

	}
	glfwDestroyWindow(window);//销毁窗口
	glfwTerminate();//终止运行
	exit(EXIT_SUCCESS);
	

}

○前面说过本教材是扫描版,这代码可是一个字母一个字母敲出来的,摘选教材中每个语句的说明附在后面作为注释,回过头来再看也就方便了。和上面博客一样改了窗口标题,重新设置了字符集

#pragma execution_character_set("utf-8")//设置执行汉字字符集

 GLFWwindow* window = glfwCreateWindow(600, 600, "嗨!踉跄前行", NULL, NULL);//负责创建GLFW窗口

○运行时出现了点状况,前面的头文件引用include<>还有先后顺序问题,编译虽然顺利通过,运行时会报错。

○运行结果

20221205_110347

今天就到这

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


分享标题:第一个C++OpenGL程序(计算机图形学程序2.1)-创新互联
分享地址:http://myzitong.com/article/ccgohs.html