通过之前的教程,我们已经拥有了开发环境,但是在真正开发程序之前,我们首先了解下Opengl的基本概念。
Opengl是什么?
通常网上会说Opengl是一种规范,一种接口,但是这种说法有点抽象,我们不妨先看看下面这个简单的gl流程文章来源:https://www.toymoban.com/news/detail-501445.html
#include <glad/glad.h>
#include <GLFW/glfw3.h>
#include <iostream>
using namespace std;
int main()
{
//glfw的初始化和设置
// -----------------------------------------------------
//调用glfwInit函数来初始化GLFW
glfwInit();
//配置GLFW,第一个参数代表选项的名称,第二个参数接受一个整型,用来设置这个选项的值
//此处设置表示使用的OpenGL版本号3.3
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
//glfwWindowHint作为窗口创建的一种提示,可以设置窗口的多种属性,包括透明度等等,感兴趣的可以在glfw文档中查询
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
//使用流水线配置模式
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
//glfw窗口创建
// -----------------------------------------------------
//glfwCreateWindow函数需要窗口的宽和高作为它的前两个参数,第三个参数表示这个窗口的名称,最后两个参数我们暂时忽略,它返还一个GLFWwindow对象
GLFWwindow* window = glfwCreateWindow(800, 800, "OpenGL", NULL, NULL);
//创建完窗口,通知GLFW将我们窗口的上下文设置为当前线程的主上下文了
glfwMakeContextCurrent(window);
while (!glfwWindowShouldClose(window))
{
//OpenGL采用双缓冲来渲染窗口
glfwSwapBuffers(window);
//处理按键事件
glfwPollEvents();
}
return 0;
}
代码中可能有人对GLFW_OPENGL_PROFILE这类参数感到疑惑,或者对glfwWindowHint的更多设置感兴趣,你可以在glfw窗口官方文文章来源地址https://www.toymoban.com/news/detail-501445.html
到了这里,关于Opengl入门基础-基础知识的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!