第一个C++OpenGL程序(计算机图形学程序2.1)

●本帖教程

○教材程序 2.1

#include <GL/glew.h>
#include <GLFW/glfw3.h>
 #include <iostream>
 
using 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

今天就到这

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值