OpenGL with GLFW GLAD and CMAKE
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
下载源代码放入
3rdparty
中。在项目主
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的东西。
- 下载
include, src
到3rdparty/glad/
- 在项目主
CMakeLists.txt
加入下面的代码,这些代码的来源是GLAD的Issue How to use directly from CMAKE
add_subdirectory(3rdparty/glad)
target_link_libraries(my_app glad)
- 在
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
- https://github.com/Dav1dde/glad/issues/186
- https://learnopengl.com/Getting-started/Hello-Window
- https://glad.dav1d.de/
- https://www.glfw.org/
OpenGL with GLFW GLAD and CMAKE的更多相关文章
- OpenGL开发学习指南二(glfw+glad)
版权声明:本文为博主原创文章,未经博主允许不得转载.blog.liujunliang.com.cn https://blog.csdn.net/qq_33747722/article/details/ ...
- GLFW+GLAD OpenGL Mac开发环境搭建
前言 OpenGL 是什么?The Industry Standard for High Performance Graphics 这是官方解释.说白了他就是一套标准接口.对,是接口,并没有实现具体的 ...
- [OpenGL]配置GLFW
注:本文可转载,转载请著名出处:http://www.cnblogs.com/collectionne/p/6937644.html.本文还会修改,如果不在博客园(cnblogs)发现本文,建议访问上 ...
- Mac平台Clion配置GLFW+GLAD的项目
前期的准备工作详见LearnOpenGL CN 看这篇教程的前提是假设你已经编译好了GLFW文件夹以及下载好了GLAD,不会的话可以看我的另一篇 文章的前部分: 配置 Clion新建一个项目,CMak ...
- [OpenGL]配置GLFW(超详细)
注:本文可转载,转载请著名出处:http://www.cnblogs.com/collectionne/p/6937644.html.本文还会修改,如果不在博客园(cnblogs)发现本文,建议访问上 ...
- 获取显示屏的个数和分辨率 --- 通过使用OpenGL的GLFW库
获取显示屏的个数和分辨率 - 通过使用OpenGL的GLFW库 程序 #include <iostream> // GLFW #include <GLFW/glfw3.h> i ...
- OpenGL 使用GLFW创建全屏窗口
OpenGL 使用GLFW创建全屏窗口 GLFW库里面的glfwCreateWindow()函数是用来创建窗口的函数. 这样函数的原型是: GLFWwindow* glfwCreateWindow(i ...
- Windows10+VS2017 用GLFW+GLAD 搭建OpenGL开发环境
本文参考:https://learnopengl-cn.github.io/ 一 下载GLFW(https://www.glfw.org/download.html) 和 GLAD(https:// ...
- Xcode环境下OpenGL C++ GLFW开发环境搭建
操作系统版本:MacOS Mavericks 10.9.2 Xcode版本:5.0.1 OpenGL版本:4.10 GLFW版本:3.0.4 一.GLFW编译 1.下载并安装cmake(当前最新版本为 ...
- OpenGL ES之GLFW窗口搭建
概述 本章节主要总结如何使用GLFW来创建Opengl窗口.主要包括如下内容: OpenGl窗口创建介绍 GLFW Window版编译介绍 GLFW简单工程源码介绍 OpenGL窗口创建介绍 能用于O ...
随机推荐
- 【共建开源】手把手教你贡献一个 SeaTunnel PR,超级详细教程!
Apache SeaTunnel是一个非常易于使用的.超高性能的分布式数据集成平台,支持海量数据的实时同步.每天可稳定高效同步数百亿数据,已被近百家企业投入生产使用. 现在的版本不支持通过jtds的方 ...
- 电脑打不开CHM格式文件解决办法
如图所示 比如说jdk1.8的api 双击打开后,这个样子 就ok了
- 手把手教你实现Scrapy-Redis分布式爬虫:从配置到最终运行的实战指南
## 1.scrapy-redis的环境准备 pip install scrapy-redis 安装完毕之后确保其可以正常导入使用即可. 2. 实现 接下来我们只需要简单的几步操作就可以实现分布式爬虫 ...
- Linux与windows共享文件的神器:samba
一.什么是samba? 搭建Samba服务器是为了实现Linux共享目录之后,在Windows可以直接访问该共享目录. 现在介绍如何在ubuntu 16.04系统中搭建Samba服务. 二 .samb ...
- Vue开发转到React开发,Prettier - Code formatter失效的问题
Vue转到React,Prettier - Code formatter失效,按下Ctrl+S无效,需要手动格式化一次 然后选择默认的格式化方式 之后按下Ctrl+S就可以进行格式化啦!!!
- 我的 mac 生产力工具
应用名称 说明 安装命令 Homebrew mac 上的强大包管理器 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com ...
- Go channel 介绍
Go 语言(Golang)中的 chan 是通道(channel)的缩写,用于在不同的 goroutine 之间进行通信.通道允许你在 goroutine 之间传递数据,从而实现同步和共享内存.下面是 ...
- [学习笔记] 2-SAT
引入 有 \(n\) 个变量 \(x_1 \cdots x_n\),每个变量的取值范围为 \(\{0,1\}\),另有 \(m\) 个条件,每个条件都是对其中两个变量的取值限制,形如要么 \(x_i ...
- 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的论文. ...
- ASP.NET Core – ADO.NET
前言 自从用 Entity Framework 就再也没有用过 ADO.NET 了. 很多年前写过 基础 ADO.NET 访问MYSQL 与 MSSQL 数据库例子. 今天刚好想做个单侧, 那就顺便翻 ...