OpenGL ES之GLFW窗口搭建 - Plato - 博客园概述 本章节主要总结如何使用GLFW来创建Opengl窗口。主要包括如下内容: OpenGl窗口创建介绍 GLFW Window版编译介绍 GLFW简单工程源码介绍 OpenGL窗口创建介绍 能用于Ohttps://www.cnblogs.com/feng-sc/p/5093262.htmlOpenGL ES Windows 搭建环境(MFC版本) - 简书目录 一.OpenGL 和 OpenGL ES[#%E4%B8%80OpenGL_%E5%92%8C_OpenGL_ES]1.OpenGL[#1OpenGL]2.OpenGL...https://www.jianshu.com/p/564460f5722eOpenGL ES EGL eglChooseConfig_猿说编程的博客-CSDN博客系统显示类型,标识你所开发设备的物理屏幕,DX/OPenGL ES/Metal/Vulkan….– 系统窗口,渲染显示的窗口句柄EGLDisplay– 关联 EGLNativeDisplayType 系统物理屏幕的通用数据类型,是平台上 WGL / GLX / AGL 的等价物EGLSurface– 渲染区域,系统窗口或 frame buffer 句柄 ,可以理解为一个后端的渲染目标窗口EGLConfig。https://blog.csdn.net/ZhaDeNianQu/article/details/127003252OpenGL 之 EGL 使用实践_音视频开发进阶的博客-CSDN博客OpenGL 是跨平台的、专业的图形编程接口,而接口的实现是由厂商来完成的。而当我们使用这组接口完成绘制之后,要把结果显示在屏幕上,就要用到 EGL 来完成这个转换工作。EGL 是 Ope...https://blog.csdn.net/zhying719/article/details/121154722?spm=1001.2101.3001.6650.2&utm_medium=distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-2-121154722-blog-127003252.pc_relevant_multi_platform_whitelistv4&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-2-121154722-blog-127003252.pc_relevant_multi_platform_whitelistv4&utm_relevant_index=3Opengl - Win32 apps | Microsoft Learn作为图形硬件的软件接口,OpenGL 将多维对象呈现为框架缓冲区。https://learn.microsoft.com/zh-cn/windows/win32/opengl/opengl开源项目推荐:OpenGL之gult/freeglut/glew/glfw/glad的联系与区别-阿里云开发者社区开源项目推荐:OpenGL之gult/freeglut/glew/glfw/glad的联系与区别https://developer.aliyun.com/article/804916OpenGL ES 2.0 中文API_flycatdeng的博客-CSDN博客_openglesapi中文大部分都是谷歌翻译的,只是自己看API的时候顺便将其翻译的结果整理了一下,贴出来方便自己以后看,他人可以看,看到有问题的翻译可以指点。glActiveTextureglAttachShaderglBindAttribLocationglBindBufferglBindFramebufferglBindRenderbufferglBindTextureglBlendColorglBlendEqu...https://blog.csdn.net/flycatdeng/article/details/825889031.opengl和opengl es
opengl定义了一个跨编程语言,跨平台的应用程序接口,opengl es是opengl的嵌入式版本,用于ios和android,后来一些追求高性能的设备也开始用这种api,opengl es是opengl的子集,区别在于opengl es删减了opengl一切低效能的操作方式,有高性能的绝不留低效能的,即只求效能不追求兼容性,opengl es能实现的,opengl也能实现,opengl部分api,opengl es不支持。opengl只有框架没有实现,只有函数声明没有源文件实现,类似于接口,所有的实现由显卡生产商提供。
2.egl
EGL 是渲染 API(如 OpenGL ES)和原生窗口系统之间的接口。通常来说,OpenGL 是一个操作 GPU 的 API,它通过驱动向 GPU 发送相关指令,控制图形渲染管线状态机的运行状态,但是当涉及到与本地窗口系统进行交互时,就需要这么一个中间层,因此 EGL 被设计出来,作为 OpenGL 和原生窗口系统之间的桥梁,且它与平台无关的。
3.glfw,sdl,glut
能用于OpenGL的窗口库有很多,常见的有glut、freeglut、SDL、GLFW等。glut基本已经被废弃,其他几个再不同场合都有不同的应用。GLFW为opengl superbible 6th & 7th中推荐的第三方开源窗口库。
OpenGL ES在嵌入式开发中实际比在PC上开发opengl的环境搭建似乎要复杂很多,通常嵌入式开发中使用EGL创建OpenGL渲染的surface,使用wayland创建窗口的surface来实现。在实际开发过程中,我们想通过在PC上开发EGL + OpenGl ES的程序,这个时候,如果平台不同,我们往往在不同平台上实现不同的窗口,如:
window 窗口系统、X11窗口和wayland窗口的创建和窗口事件获取及处理方式各不相同,而GLFW所做的事情,就是提供统一的窗口创建的方法,使我们能在GLFW上开发与平台无关的OpenGL ES代码。
4.glew
glew包含了OpenGL所需的核心。openGL的实现是显卡生产商,那么系统如何才能找到这些实现好的函数呢?而且不同的平台函数存放地方还不同,文件结构也不同。有没有一种方式能够自动找到OpenGL的函数?这就是glew的作用:用来找openGL的函数,并初始化,这样我们就能直接调用OpenGL的函数了。