OpenGL入门

第一章 OpenGL和GLFW配置

1 OpenGL 和 GLFW简介

OpenGL(英语:Open Graphics Library,译名:开放图形库或者“开放式图形库”)是用于渲染2D3D矢量图形的跨语言跨平台应用程序编程接口(API)

详情见:20分钟让你了解OpenGL——OpenGL全流程详细解读 - 知乎 (zhihu.com)

GLFW是一个开源的多平台库,用于桌面上的OpenGL,OpenGL ES和Vulkan开发。它提供了一个简单的 API,用于创建窗口、上下文和图面、接收输入和事件。

详情见:GLFW: 主页

2 GLFW 下载

下载地址:OpenGL 库|断续器 (glfw.org)

OpenGL入门

3 项目搭建

使用 vs 创建项目,项目名为glfw

在该项目目录文件下创建Dependecies/GLFW文件夹。

OpenGL入门

 GLFW文件夹中,包括inlcude文件和lib-vc2019.

OpenGL入门

 其中inlude就是glfw下载列表的include(将其复制过来)

lib-vc2019则是glfw中的lib-vc2019仅保留glfw3.h。如图所示:

OpenGL入门

 4 环境搭建

 在glfw中创建src文件,并在src中创建application.cpp

将glfw中的示例代码复制粘贴:

#include <GLFW/glfw3.h>

int main(void)
{
    GLFWwindow* window;

    /* Initialize the library */
    if (!glfwInit())
        return -1;

    /* Create a windowed mode window and its OpenGL context */
    window = glfwCreateWindow(640, 480, "Hello World", NULL, NULL);
    if (!window)
    {
        glfwTerminate();
        return -1;
    }

    /* Make the window's context current */
    glfwMakeContextCurrent(window);

    /* Loop until the user closes the window */
    while (!glfwWindowShouldClose(window))
    {
        /* Render here */
        glClear(GL_COLOR_BUFFER_BIT);

        /* Swap front and back buffers */
        glfwSwapBuffers(window);

        /* Poll for and process events */
        glfwPollEvents();
    }

    glfwTerminate();
    return 0;
}

右击glfw,选中属性

OpenGL入门

 a.  在C++  -> 常规  中编辑附加常规目录为:$(SolutionDir)Dependencies\GLFW\includeOpenGL入门

b. 在linker -> 常规 中编辑附加库目录为:$(SulotionDir)Dependencies\GLFW\lib-vc2019

OpenGL入门

 c. linker -> input 中编辑附加依赖项为:

glfw3.lib
opengl32.lib
User32.lib
Gdi32.lib
shell32.lib

OpenGL入门

 三个设置均 点击应用后生效。且在设置时注意 配置和平台的选择;

OpenGL入门

 5 运行案例

OpenGL入门

上一篇:windowManager向window添加、更新、删除view过程


下一篇:WinForm界面控件DevExpress入门指南 - Window Service