OpenGL第三方库:GLAD入门篇

您所在的位置:网站首页 glad的中文意思 OpenGL第三方库:GLAD入门篇

OpenGL第三方库:GLAD入门篇

2023-09-08 14:09| 来源: 网络整理| 查看: 265

前言:GLAD是继GL3W,GLEW之后,当前最新的用来访问OpenGL规范接口的第三方库。官方网址为https://glad.dav1d.de/。

GLAD使用步骤:GLAD可以使OpenGL基础渲染变得十分简单,只需要简单四个步骤就可以完成基础渲染。流程如下: 1.初始化GLAD库,加载所有OpenGL函数指针。 2.创建着色器并附加到着色器程序。 3.构建缓冲对象并附加到顶点属性。 4.使用着色器程序,利用渲染接口将缓冲对象按照指定图元类型渲染出来。

初始化GLAD库:常用接口如下: int gladLoadGLLoader(GLADloadproc load):任何的OpenGL接口调用都必须在初始化GLAD库后才可以正常访问。如果成功的话,该接口将返回GL_TRUE,否则就会返回GL_FALSE。 其中GLADloadproc函数声明如下: void* (*GLADloadproc)(const char* name)

GLAD绘制方式:由于篇幅较多,已经另外写了一篇博客来记录。详细内容请参考https://blog.csdn.net/zjz520yy/article/details/83904360

在线例子:以下提供一个包含GLAD基础渲染操作的大部分接口的在线例子。

#include #include #include void framebuffer_size_callback(GLFWwindow* window, int width, int height); void processInput(GLFWwindow *window); // settings const unsigned int SCR_WIDTH = 800; const unsigned int SCR_HEIGHT = 600; const char *vertexShaderSource = "#version 330 core\n" "layout (location = 0) in vec3 aPos;\n" "void main()\n" "{\n" " gl_Position = vec4(aPos.x, aPos.y, aPos.z, 1.0);\n" "}\0"; const char *fragmentShaderSource = "#version 330 core\n" "out vec4 FragColor;\n" "void main()\n" "{\n" " FragColor = vec4(1.0f, 0.5f, 0.2f, 1.0f);\n" "}\n\0"; int main() { // glfw: initialize and configure // ------------------------------ glfwInit(); glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3); glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3); glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE); #ifdef __APPLE__ glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE); // uncomment this statement to fix compilation on OS X #endif // glfw window creation // -------------------- GLFWwindow* window = glfwCreateWindow(SCR_WIDTH, SCR_HEIGHT, "LearnOpenGL", NULL, NULL); if (window == NULL) { std::cout


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3