opengl,opengl es,egl,glfw,glew

news/2024/4/27 11:57:46/文章来源:https://blog.csdn.net/u012193416/article/details/128093066

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的程序,这个时候,如果平台不同,我们往往在不同平台上实现不同的窗口,如:

  1. window:OpenGL ES + EGL + Window系统窗口(实际运行还需要加OpenGL ES的模拟器,OpenGL.ES.3.0.Programming.Guide中有介绍高通芯片等模拟器的使用的章节);
  2. Linux: OpenGL ES + EGL + X11窗口;
  3. ARM: OpenGL ES + EGL + wayland窗口;

  window 窗口系统、X11窗口和wayland窗口的创建和窗口事件获取及处理方式各不相同,而GLFW所做的事情,就是提供统一的窗口创建的方法,使我们能在GLFW上开发与平台无关的OpenGL ES代码。

4.glew

glew包含了OpenGL所需的核心。openGL的实现是显卡生产商,那么系统如何才能找到这些实现好的函数呢?而且不同的平台函数存放地方还不同,文件结构也不同。有没有一种方式能够自动找到OpenGL的函数?这就是glew的作用:用来找openGL的函数,并初始化,这样我们就能直接调用OpenGL的函数了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_39120.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2022-11-30 Github Forking 工作流模式

Forking 工作流 fork 操作是在个人远程仓库新建一份目标远程仓库的副本,流程如下: 比如在 GitHub 上操作时,在项目的主页点击 fork 按钮(页面右上角),即可拷贝该目标远程仓库。 假设开发者 A 拥有一个远程仓…

电脑怎么提取图片中的文字?

图片记录着我们生活的点点滴滴,比如各种办公截图、查快递单号、布置的课堂作业等等,都离不开这种便捷的方法。而我们有时难免需要从图片中提取想要的文字,总不能就靠打字打到手软吧,那么电脑怎么提取图片中的文字呢?有需要的朋友…

终于有阿里p8进行了大汇总(Redis+JVM+MySQL+Spring)还有面试题解全在这里了!

Redis特性 Redis是一直基于键值对的NoSQL数据库; Redis支持5种主要数据结构:string、hash、list、set、zset以及bitmaps、hyperLoglog、GEO等特化的数据结构; Redis是内存数据库,因此它有足够好的读写性能; Redis支持…

verilog实现分频(奇数分频和偶数分频,通用版)

大家好,最近写了一些分频器的设计,发现奇数分频和偶数分频是比较常用分频效果,所以写了一个比较简单的分频代码,适用于奇数分频和偶数分频(不考虑占空比),代码已经经过测试,需要可自…

如何应对Redis并发访问带来的问题

前言 我们在使用Redis的过程中,难免会遇到并发访问及数据更新的问题。但很多场景对数据的并发修改是很敏感的,比如库存数据如果没有做好并发读取和更新的版本控制,就会导致严重的业务问题。今天就来说说应该如何做好并发访问及数据更新问题。…

ROS2--概述

ROS2概述1 ROS2对比ROS12 ROS2 通信3 核心概念4 ros2 安装5 话题、服务、动作6 参数参考1 ROS2对比ROS1 多机器人系统:未来机器人一定不会是独立的个体,机器人和机器人之间也需要通信和协作,ROS2为多机器人系统的应用提供了标准方法和通信机…

Windows系统--AD域控--DHCP服务器

Windows系统--AD域控--DHCP服务器 虚拟机网络准备 1.将VMware网络编辑器的NAT模式--取消勾选 使用本地DHCP服务器; 从机(win10)将内置网卡的IPv4网络改为 自动获取IP地址、自动获取DNS AD服务器 部署 DHCP服务器

VF01销售开票发票金额控制增强

实施隐式增强 全部代码如下: method IF_EX_BADI_SD_BILLING~INVOICE_DOCUMENT_CHECK. CALL FUNCTION ‘SIPT_DOC_CHECK_SD’ EXPORTING it_xvbrk fxvbrk it_xvbrp fxvbrp it_xkomv fxkomv it_xvbpa fxvbpa IMPORTING ev_bad_data fbad_data. “”“”“”“…

Word控件Spire.Doc 【图像形状】教程(8): 如何借助C#/VB.NET在 Word 中插入艺术字

Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库。在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建、编辑、转换和打印 Microsoft Word 文档。拥有近10年专业开发经验Spire系列办公文档开发工具,专注于创建、编辑、转…

Kotlin高仿微信-第12篇-单聊-图片

Kotlin高仿微信-项目实践58篇详细讲解了各个功能点,包括:注册、登录、主页、单聊(文本、表情、语音、图片、小视频、视频通话、语音通话、红包、转账)、群聊、个人信息、朋友圈、支付服务、扫一扫、搜索好友、添加好友、开通VIP等众多功能。 Kotlin高仿…

【JavaEE】MyBatis

文章目录1.MyBatis介绍2.MyBatis快速入门3.Mapper代理开发4.MyBatis核心配置文件5.配置文件完成增删改查5.1 查询5.2 添加/修改5.3 删除6.MyBatis参数传递7.注解完成增删改查1.MyBatis介绍 1.什么是MyBatis? MyBatis是一款优秀的 持久层框架,用于简化JDBC开发MyBat…

入门力扣自学笔记208 C++ (题目编号:895)

895. 最大频率栈​​​​​​ 题目: 设计一个类似堆栈的数据结构,将元素推入堆栈,并从堆栈中弹出出现频率最高的元素。 实现 FreqStack 类: FreqStack() 构造一个空的堆栈。 void push(int val) 将一个整数 val 压入栈顶。 int pop() 删除…

Kotlin高仿微信-第11篇-单聊-语音

Kotlin高仿微信-项目实践58篇详细讲解了各个功能点,包括:注册、登录、主页、单聊(文本、表情、语音、图片、小视频、视频通话、语音通话、红包、转账)、群聊、个人信息、朋友圈、支付服务、扫一扫、搜索好友、添加好友、开通VIP等众多功能。 Kotlin高仿…

基于Tree-LSTM网络语义表示模型

TC;DR 目前的LSTM仅能对序列信息进行建模, 但是自然语言中通常由词组成的短语形成了句法依存的语义树。为了学习到树结构的语义信息。论文中提出了两种Tree-LSTM模型。Child-Sum、Tree-LSTM、和N-ary Tree LSTMs。实验部分的Tree-LSTM、对比多种LSTMs的…

nuxtjs中asyncData异步数据请求、代理配置、fetch网络请求、vuex的使用、中间件处理

文章目录1. asyncData异步数据请求2. 代理配置3. fetch网络请求4. vuex4.1 state中的数据展示4.2 同步方法与异步方法4.3 数据持久化处理5. 中间件处理1. asyncData异步数据请求 Nuxt.js 扩展了 Vue.js,增加了一个叫 asyncData 和 fetch 的方法,使得我们…

这或许是全网最详细的介绍预言机赛道的视频课程,通俗易通,有趣有料!

图片来源:由无界版图 AI 绘画工具生成有一句话在创业者中很流行:Web3创业三大坑,隐私、跨链、预言机……搞塌加密市场的DK和SBF还在豪华度假酒店里思考人生搞隐私,一毛钱没赚到的Tornado cash开发者却在吃牢饭……加密圈前十大资产…

力扣(LeetCode)895. 最大频率栈(C++)

设计 ①维护最大频率,②维护每个数的出现次数,③维护出现次数对应的栈。 压栈时,新数压入出现次数对应的栈,每次压入新数,维护最大频率(所有出现次数中的最大出现次数)。 弹栈时,找最大频率对应的栈&…

拖死项目的不是团队,可能是失败的管理

项目中的活动,归根结底是由人来完成的,如何发挥项目成员的能力,对于项目的成败起着至关重要的作用。如何充分地发挥团队成员的能力,对项目经理也是一个挑战。 在团队管理者我们会遇见这些难题: 1、团队凝聚力不足&a…

【MySQL 18】Docker 安装 MySQL8 .0.30

1、查看可用的 MySQL 版本 访问 MySQL 镜像库地址: https://hub.docker.com/_/mysql?tabtags 。2、拉取 MySQL 8.0.30 镜像 拉取官方的指定版本的镜像: docker pull mysql:8.0.30[rootlocalhost deploy]# docker pull mysql:8.0.30 8.0.30: Pulling…

云小课|云小课教您如何选择Redis实例类型

阅识风云是华为云信息大咖,擅长将复杂信息多元化呈现,其出品的一张图(云图说)、深入浅出的博文(云小课)或短视频(云视厅)总有一款能让您快速上手华为云。更多精彩内容请单击此处。 摘要:购买Redis实例时,实例类型有单机、主备、Pr…