windows下的OpenGL视频播放器开发环境
目录
一、GLFW
二、GLAD
三、新建VS工程
四、配置VS工程
五、一个简单的Demo程序
六、编译运行
本文记录VS2017开发OpenGL的环境。
首先,选择OpengGL的库,glfw+glad
一、GLFW
GLFW是一个开源的多平台库,用于桌面上的 OpenGL、OpenGL ES 和 Vulkan 开发。它提供了一个简单的 API,用于创建窗口、上下文和表面,接收输入和事件。
GLFW 是用 C 语言编写的,支持 Windows、macOS、X11 和 Wayland。
为了便捷,我会直接下载windows的预编译头文件和库文件
Download | GLFWGLFW source code and binary distribution download links.https://www.glfw.org/download.html
二、GLAD
GLAD是继GL3W,GLEW之后,当前最新的用来访问OpenGL规范接口的第三方库。
接口文件在线生成。url:https://glad.dav1d.de/Web generator for the Glad toolhttps://glad.dav1d.de/
点击以后,生成zip,下载下来,就包括头文件和glad.c
三、新建VS工程
此处使用了VS2017,关于GLFW和GLAD的头文件和lib存放的文件结构,如下图所示:
1.创建控制台程序
2.将glfw解压后直接存放到工程目录的libs
3.将glfw和glad解压后的include下文件放入工程目录的include
4.将glad.c导入vs工程,我选择了x64,为什么是x64而不是x86,可能是认为x64能支持更高的分辨率,也没有验证过,反正就任性地选择了x64,如下图
四、配置VS工程
也就是,配置include路径和libs路径,以便在编译时,VS2017知道去哪里找他需要的头文件和lib文件。
五、一个简单的Demo程序
写一个简单的Demo程序,用来测试环境是否正常
//YUV_OpenGL_Demo.cpp#include <iostream>#include "glad/glad.h"
#include "GLFW/glfw3.h"#pragma comment(lib, "glfw3.lib")#define g_FrameW 7680
#define g_FrameH 4320static void error_callback(int error, const char* description)
{fprintf(stderr, "Error: %s\n", description);
}int main()
{std::cout << "Hello OpenGL!\n";const int pixel_w = g_FrameW;const int pixel_h = g_FrameH;// GLFWGLFWwindow* window;glfwSetErrorCallback(error_callback);if (!glfwInit()){exit(EXIT_FAILURE);}window = glfwCreateWindow(1280, 720, "OpenGL Player", NULL, NULL);if (!window){glfwTerminate();exit(EXIT_FAILURE);}glfwMakeContextCurrent(window);gladLoadGLLoader((GLADloadproc)glfwGetProcAddress);glfwSwapInterval(2);while (!glfwWindowShouldClose(window)){glfwSwapBuffers(window);glfwPollEvents();}glfwTerminate();exit(EXIT_SUCCESS);
}
六、编译运行
参考:
开源项目推荐:OpenGL之gult/freeglut/glew/glfw/glad的联系与区别_$firecat全宏的代码足迹$-CSDN博客
OpenGL第三方库:GLAD入门篇_zjz-CSDN博客_glad
windows下的OpenGL视频播放器开发环境相关推荐
- Android之Windows下搭建React Native Android开发环境(差不多搞了一天)
Android之Windows下搭建React Native Android开发环境 穷逼买不起mac,但是他们都说React Native Android只能在mac下面 ...
- windows下搭建Apache+Mysql+PHP开发环境
原文:windows下搭建Apache+Mysql+PHP开发环境 要求 必备知识 熟悉基本编程环境搭建. 运行环境 windows 7(64位); Apache2.2; MySQL Server 5 ...
- 单片机(一):VScode+SDCC+Make的Windows下51(CH552)单片开发环境搭建
CH552芯片是一款兼容 MCS51 指令集的增强型 E8051 内核单片机.CH552既然是51单片机,按照以前的惯例都是用Keil来进行开发.但是本次决定抛弃Keil的开发环境,主要原因是Keil ...
- Windows下Eclipse+PyDev安装Python开发环境
1.简介 Eclipse是一款基于Java的可扩展开发平台.其官方下载中包括J2EE方向版本.Java方向版本.C/C++方向版本.移动应用方向版本等诸多版本.除此之外,Eclipse还可以通过安装插 ...
- Windows下搭建Eclipse+Android4.0开发环境
官方搭建步骤: http://developer.android.com/index.html 搭建好开发环境之前须要下载以下几个文件包: 一.安装Java执行环境JRE(没这个Eclipse执行不起 ...
- Windows下ARM Linux应用程序开发环境搭建说明
这是因为工作写的一个文档,主要是我们开发人员都不会Linux不会vi也不会命令行,于是研究了一下Windows系统调试ARM Linux程序的办法,在这共享一下. 1. 概述 嵌入式Linux系统的应 ...
- windows下用eclipse配置c++开发环境
主要是windows下安装MinGW编译环境以及Eclispse编辑器安装CDT,C/C++ Development Tools两大步骤 通过网上收集的资料 将最终成功的方法总结下 一:win7下安装 ...
- 搭建Windows下的Cocos2d-3.X的开发环境
一.搭建环境之前,准备 Cocos2d-3.x压缩包,我用的是Cocos2d- 3.11,Python2.7.11,开发工具 VS2015 1.vs2015下载路径+番茄小助手 Download Vi ...
- Windows下配置Hadoop的Java开发环境以及用Java API操作HDFS
场景 HDFS的访问方式之HDFS shell的常用命令: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/119351218 在上 ...
最新文章
- AI开发者们,2017年你们过得好吗?
- gradle编译很慢解决方法
- enumerate()函数用法
- 题目1049:字符串去特定字符
- 【牛客NOIP模拟】牛半仙的魔塔(增强版)【贪心】【并查集】
- Linux 命令之 sudoedit -- 以另外一个用户身份编辑文件
- linux redis客户端_10个 Linux 顶级开源缓存工具
- 线程和Application.DoEvents()
- 【转】浅论ViewState及其与Session的关系
- 【Anylogic智能体状态转移】
- 2020 CUMCM全国大学生数学建模竞赛 B题 Notes
- 软件工程项目学生管理系统
- 客户关系管理软件的作用是什么?
- 浅谈stm32的低功耗模式
- AnyTrans for Mac(ios数据传输工具)
- 图像处理gamma修正(伽马γ校正)的原理和实现算法
- 预留度数Rx表达式的推导
- mac SCp上传文件到阿里云服务器centos
- 如何借助分布式存储 JuiceFS 加速 AI 模型训练
- 蛋糕瓜分殆尽 谁会成为下一个手游造富的加速器?