0. 前言

首先,无论是在youtube还是网站上,许多OpenGL的环境配置都是在VS studio里配置的,个人比较喜欢使用VS code,以及Cmake.

下文给出了一个Cmake版本关于 GLFW GLAD 的编译环境。

另外,感谢分享知识的人。

具体的代码已放入 github 中, 代码地址 https://github.com/Alex-gift-hit/OpenGL-with-GLFW-GLAD-and-CMAKE

1. GLFW

  1. 下载源代码放入 3rdparty 中。

  2. 在项目主 CMakeLists.txt 加入下面的代码,这些代码的来源是GLFW的官方文档 Building applications.

cmake_minimum_required(VERSION 3.14)
project(my_app) find_package(OpenGL REQUIRED) set(GLFW_BUILD_DOCS OFF CACHE BOOL "" FORCE)
set(GLFW_BUILD_TESTS OFF CACHE BOOL "" FORCE)
set(GLFW_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE) add_subdirectory(3rdparty/glfw-3.3.8) add_executable(my_app main.cpp) target_link_libraries(my_app OpenGL::GL)
target_link_libraries(my_app glfw)

3 GLAD

GLAD是一个 OpenGL Loading Library。 与之相同的是GLEW。详情请见 OpenGL Loading Library

具体怎么生成这里不便再说,有兴趣可以去看 learnopengl.

需要注意的是,我们的GLAD是用的 GL3.3, 所以别在代码里写2的东西。

  1. 下载include, src3rdparty/glad/
  2. 在项目主 CMakeLists.txt 加入下面的代码,这些代码的来源是GLAD的Issue How to use directly from CMAKE
add_subdirectory(3rdparty/glad)
target_link_libraries(my_app glad)
  1. 3rdparty/glad/里添加如下camke代码
cmake_minimum_required(VERSION 3.0)
project(Glad) add_library(glad include/glad/glad.h src/glad.c)
target_include_directories(glad PUBLIC include/)

3 main.cpp

实际是 LearnOpenGl.com 的 Hello Window.

4. Cmake Compile

cmake -S . -B build
cmake --build build

X. Refference

  1. https://github.com/Dav1dde/glad/issues/186
  2. https://learnopengl.com/Getting-started/Hello-Window
  3. https://glad.dav1d.de/
  4. https://www.glfw.org/

OpenGL with GLFW GLAD and CMAKE的更多相关文章

  1. OpenGL开发学习指南二(glfw+glad)

    版权声明:本文为博主原创文章,未经博主允许不得转载.blog.liujunliang.com.cn https://blog.csdn.net/qq_33747722/article/details/ ...

  2. GLFW+GLAD OpenGL Mac开发环境搭建

    前言 OpenGL 是什么?The Industry Standard for High Performance Graphics 这是官方解释.说白了他就是一套标准接口.对,是接口,并没有实现具体的 ...

  3. [OpenGL]配置GLFW

    注:本文可转载,转载请著名出处:http://www.cnblogs.com/collectionne/p/6937644.html.本文还会修改,如果不在博客园(cnblogs)发现本文,建议访问上 ...

  4. Mac平台Clion配置GLFW+GLAD的项目

    前期的准备工作详见LearnOpenGL CN 看这篇教程的前提是假设你已经编译好了GLFW文件夹以及下载好了GLAD,不会的话可以看我的另一篇 文章的前部分: 配置 Clion新建一个项目,CMak ...

  5. [OpenGL]配置GLFW(超详细)

    注:本文可转载,转载请著名出处:http://www.cnblogs.com/collectionne/p/6937644.html.本文还会修改,如果不在博客园(cnblogs)发现本文,建议访问上 ...

  6. 获取显示屏的个数和分辨率 --- 通过使用OpenGL的GLFW库

    获取显示屏的个数和分辨率 - 通过使用OpenGL的GLFW库 程序 #include <iostream> // GLFW #include <GLFW/glfw3.h> i ...

  7. OpenGL 使用GLFW创建全屏窗口

    OpenGL 使用GLFW创建全屏窗口 GLFW库里面的glfwCreateWindow()函数是用来创建窗口的函数. 这样函数的原型是: GLFWwindow* glfwCreateWindow(i ...

  8. Windows10+VS2017 用GLFW+GLAD 搭建OpenGL开发环境

    本文参考:https://learnopengl-cn.github.io/ 一 下载GLFW(https://www.glfw.org/download.html)  和 GLAD(https:// ...

  9. Xcode环境下OpenGL C++ GLFW开发环境搭建

    操作系统版本:MacOS Mavericks 10.9.2 Xcode版本:5.0.1 OpenGL版本:4.10 GLFW版本:3.0.4 一.GLFW编译 1.下载并安装cmake(当前最新版本为 ...

  10. OpenGL ES之GLFW窗口搭建

    概述 本章节主要总结如何使用GLFW来创建Opengl窗口.主要包括如下内容: OpenGl窗口创建介绍 GLFW Window版编译介绍 GLFW简单工程源码介绍 OpenGL窗口创建介绍 能用于O ...

随机推荐

  1. 【共建开源】手把手教你贡献一个 SeaTunnel PR,超级详细教程!

    Apache SeaTunnel是一个非常易于使用的.超高性能的分布式数据集成平台,支持海量数据的实时同步.每天可稳定高效同步数百亿数据,已被近百家企业投入生产使用. 现在的版本不支持通过jtds的方 ...

  2. 电脑打不开CHM格式文件解决办法

    如图所示 比如说jdk1.8的api 双击打开后,这个样子 就ok了

  3. 手把手教你实现Scrapy-Redis分布式爬虫:从配置到最终运行的实战指南

    ## 1.scrapy-redis的环境准备 pip install scrapy-redis 安装完毕之后确保其可以正常导入使用即可. 2. 实现 接下来我们只需要简单的几步操作就可以实现分布式爬虫 ...

  4. Linux与windows共享文件的神器:samba

    一.什么是samba? 搭建Samba服务器是为了实现Linux共享目录之后,在Windows可以直接访问该共享目录. 现在介绍如何在ubuntu 16.04系统中搭建Samba服务. 二 .samb ...

  5. Vue开发转到React开发,Prettier - Code formatter失效的问题

    Vue转到React,Prettier - Code formatter失效,按下Ctrl+S无效,需要手动格式化一次 然后选择默认的格式化方式 之后按下Ctrl+S就可以进行格式化啦!!!

  6. 我的 mac 生产力工具

    应用名称 说明 安装命令 Homebrew mac 上的强大包管理器 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com ...

  7. Go channel 介绍

    Go 语言(Golang)中的 chan 是通道(channel)的缩写,用于在不同的 goroutine 之间进行通信.通道允许你在 goroutine 之间传递数据,从而实现同步和共享内存.下面是 ...

  8. [学习笔记] 2-SAT

    引入 有 \(n\) 个变量 \(x_1 \cdots x_n\),每个变量的取值范围为 \(\{0,1\}\),另有 \(m\) 个条件,每个条件都是对其中两个变量的取值限制,形如要么 \(x_i ...

  9. MOGA-Net: 多目标遗传算法求解复杂网络中的社区《A Multiobjective Genetic Algorithm to Find Communities in Complex Networks》(遗传算法、多目标优化算法、帕累托最优)

    论文:A Multiobjective Genetic Algorithm to Find Communities in Complex Networks GitHub: IEEE 2012的论文. ...

  10. ASP.NET Core – ADO.NET

    前言 自从用 Entity Framework 就再也没有用过 ADO.NET 了. 很多年前写过 基础 ADO.NET 访问MYSQL 与 MSSQL 数据库例子. 今天刚好想做个单侧, 那就顺便翻 ...