OpenGL ES EGL eglDestroyContext

目录

  • 一. EGL 前言
  • 二. EGL 绘制流程简介
  • 三.eglDestroyContext 函数简介
  • 四.eglDestroyContext 使用
  • 四.猜你喜欢

零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 基础

零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 特效

零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 转场

零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 函数

零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES GPUImage 使用

零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES GLSL 编程

一. EGL 前言

EGLNativeDisplayType – 系统显示类型,标识你所开发设备的物理屏幕,DX/OPenGL ES/Metal/Vulkan….

EGLNativeWindowType – 系统窗口,渲染显示的窗口句柄

EGLDisplay – 关联 EGLNativeDisplayType 系统物理屏幕的通用数据类型,是平台上 WGL / GLX / AGL 的等价物

EGLSurface – 渲染区域,相当于 OpenGL ES 绘图的画布 (一块内存空间),用户想绘制的信息首先都要先绘制到 EGLSurface 上,然后通过 EGLDisplay 显示

EGLConfig – 对 EGLSurface 的 EGL 配置,可以理解为绘制目标 framebuffer 的配置属性

EGLContext – OpenGL ES 图形上下文

二. EGL 绘制流程简介

  1. 获取 EGL Display 对象:eglGetDisplay
  2. 初始化与 EGLDisplay 之间的连接:eglInitialize
  3. 获取 EGLConfig 对象:eglChooseConfig / eglGetConfigs
  4. 创建 EGLContext 实例:eglCreateContext
  5. 创建 EGLSurface 实例:eglCreateWindowSurface / eglCreatePbufferSurface
  6. 连接 EGLContext 和 EGLSurface 上下文 eglMakeCurrent
  7. 使用 OpenGL ES API 绘制图形:gl_*
  8. 切换 front buffer 和 back buffer 显示:eglSwapBuffer
  9. 断开并释放与 EGLSurface 关联的 EGLContext 对象:eglRelease
  10. 删除 EGLSurface 对象 eglDestroySurface
  11. 删除 EGLContext 对象 eglDestroyContext
  12. 终止与 EGLDisplay 之间的连接

三.eglDestroyContext 函数简介

eglDestroyContext 用于销毁渲染 Context 上下文,如果有其它线程使用这个 Context 上下文时就要等到不使用时再销毁,否则立即销毁;

/*描述:用于销毁渲染 EGLContext*参数:*    display:指定显示的连接*    context:EGLContext 上下文**返回值:成功是返回 EGL_TRUE,失败时返回 EGL_FALSE*/EGLAPI EGLBoolean eglDestroyContext(EGLDisplay display,EGLContext context);

可能返回错误:

EGL_FALSE is returned if destruction of the context fails, EGL_TRUE otherwise.EGL_BAD_DISPLAY is generated if display is not an EGL display connection.EGL_NOT_INITIALIZED is generated if display has not been initialized.EGL_BAD_CONTEXT is generated if context is not an EGL rendering context.

在使用 eglDestroyContext 摧毁上下文之前一定要记得通过 eglMakeCurrent 绑定当前上下文;

四.eglDestroyContext 使用

/******************************************************************************************/
//@Author:猿说编程
//@Blog(个人博客地址): www.codersrc.com
//@File:OpenGL ES EGL eglDestroyContext
//@Time:2022/08/04 07:30
//@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
/******************************************************************************************/void egl_demo()
{EGLDisplay display = eglGetDisplay ( EGL_DEFAULT_DISPLAY );eglInitialize ( display , 0, 0);EGLConfig  config;eglChooseConfig ( display , attribs , & config , 1, & numConfigs );EGLSurface  surface = eglCreateWindowSurface ( display , config , ANativeWindow  , NULL );EGLContext  context = eglCreateContext ( display , config , NULL , NULL );eglMakeCurrent ( display , surface , surface , context )while(true){//opengl绘制glxx();eglSwapBuffers ( display , surface );}eglDestroyContext ( display , context );eglDestroySurface ( display , surface );eglTerminate ( display );
}

四.猜你喜欢

  1. OpenGL ES 简介
  2. OpenGL ES 版本介绍
  3. OpenGL ES 2.0 和 3.0 区别
  4. OpenGL ES 名词解释(一)
  5. OpenGL ES 名词解释(二)
  6. OpenGL ES GLSL 着色器使用过程
  7. OpenGL ES EGL 简介
  8. OpenGL ES EGL 名词解释
  9. OpenGL ES EGL eglGetDisplay
  10. OpenGL ES EGL eglInitialize
  11. OpenGL ES EGL eglGetConfigs
  12. OpenGL ES EGL eglChooseConfig
  13. OpenGL ES EGL eglGetError
  14. OpenGL ES EGL eglCreateContext
  15. OpenGL ES EGL eglCreateWindowSurface
  16. OpenGL ES EGL eglCreatePbufferSurface
  17. OpenGL ES EGL eglMakeCurrent
  18. OpenGL ES EGL eglSwapBuffer
  19. OpenGL ES EGL eglDestroySurface
  20. OpenGL ES EGL eglDestroyContext

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

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

相关文章

用Jenkins自动化搭建测试环境_jenkins基础搭建_入门试炼02

Jenkins基础: 本篇介绍Jenkins的安装、Jenkins中的常用插件的安装方法、Jenkins用户配置以及提醒邮件的配置。 接上一篇:使用Jenkins搭建自动化测试环境_环境准备_入门试炼01 https://blog.csdn.net/weixin_40816738/article/details/90280440 文章目录一…

OpenGL ES EGL eglQueryContext

目录 一. EGL 前言二. EGL 绘制流程简介三.eglQueryContext 函数简介 四.eglQueryContext 使用四.猜你喜欢 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 基础 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 特效 零基…

终于有人把5G和边缘计算的关系说清楚了 | 技术头条

戳蓝字“CSDN云计算”关注我们哦!技术头条:干货、简洁、多维全面。更多云计算精华知识尽在眼前,get要点、solve难题,统统不在话下!作者: pala来源:边缘计算社区5G三大应用场景为:增强…

Jenkins_安装基础软件_入门试炼03

应用部署服务器准备: 本章对Linux系统简介、安装Java环境、安装并配置 Git、安装并配置 Maven、安装并配置 Tomcat、以及将部署服务器配置到Jenkins上。 一、Linux操作系统需要做的准备 1. 确定IP地址2. 确认登录用户名密码3. 查看/启动ssh服务4. 确认可以远程连接…

Jenkins_GithubFork程序_入门试炼04

部署应用介绍与前期准备: 本章讲解Fork github上的应用、部署应用下载、简略分析部署应用、 数据库准备、本地运行部署应用、将更新后的代码上传到github。 一、Github的介绍 GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版…

用Jenkins自动化搭建测试环境_入门试炼05

Jenkins自动化部署任务开发: 本章简述自动化构建、部署过程、 创建Jenkins 任务,填写部署代码、实际运行部署任务。 一、部署过程介绍 简述自动化部署过程: 【开始】-【Git同步最新代码】-【maven打包编译】-【停止Tomcat】-【部署应用】-【…

OpenGL ES OpenGL WebGL EGL WGL 区别

目录 一.OpenGL二.OpenGL ES三.WebGL 四.EGL 和 WGL 五.猜你喜欢 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 基础 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 特效 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学…

用Jenkins自动化搭建测试环境_入门试炼06

本章研发修改程序代码、 运行Jenkins环境发布任务、新环境上验证研发更改。 实战 1. 修改部署应用源代码2. commit修改内容,push代码到github3.执行Jenkins自动化部署任务4. 待任务完成后,打开浏览器查看部署结果 【从修改代码】-到【推送git库】-再到…

为什么给黑洞拍照需要这么长时间?

戳蓝字“CSDN云计算”关注我们哦!技术头条:干货、简洁、多维全面。更多云计算精华知识尽在眼前,get要点、solve难题,统统不在话下!作者:中国科普博览;左文文(中科院上海天文台&#…

OpenGL ES freeglut 下载和使用

目录 一.freeglut 简介二.freeglut 下载五.猜你喜欢 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 基础 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 特效 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >…

使用Jenkins搭建自动化测试环境_环境准备_入门试炼01

平台介绍: 前置准备环境:数据库MySQL,测试环境OS CentOS。 文章目录1. 平台介绍2. 自动化测试环境部署带来的幸福感:2.1. 程序自动部署,节约时间2.2. 环境一键部署,不怕研发频繁修改代码1. 平台介绍 2. 自动化测试环境…

与云原生及开源大神们的第二次亲密接触 | 全议程重磅发布

戳蓝字“CSDN云计算”关注我们哦!CNCF主办的中国最大规模开源与云原生大会有来自阿里巴巴、百度、华为、腾讯和雅虎日本的演讲嘉宾,加上Linux基金会的Open Source Summit。加利福尼亚州旧金山,2019年4月10日 —— 云原生计算基金会&#xff0…

OpenGL ES glew 下载和使用

目录 一.glew 简介二.glew 下载五.猜你喜欢 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 基础 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 特效 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> Op…

Storm精华问答 | 遇到这些错误日志该如何解决?

分布式的实时计算系统,能够可信任的处理大量的流式数据,就好比Hadoop对于批量数据进行的处理一样;通常来说,Hadoop能够进行大批量数据的离线处理,但是在实时计算上的表现实在是不尽如人意;而Storm就可以担当…

企业实战(Jenkins+GitLab+SonarQube)_01_Jenkins下载

Jenkins是一个独立的开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。前身是Hudson是一个可扩展的持续集成引擎。可用于自动化各种任务&#x…

OpenGL ES glfw 下载和使用

目录 一.glfw 简介二.glfw 下载三.glfw 编译四.glfw 使用 1.OpenGL glfw glad 效果演示2.OpenGL glfw glad 《源码下载》 五.猜你喜欢 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 基础 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 &…

企业实战(Jenkins+GitLab+SonarQube)_04_Jenkins安装推荐插件

Jenkins如何安装推荐插件? 接上一篇: 企业实战03_Jenkins登录https://blog.csdn.net/weixin_40816738/article/details/90383694 文章目录一、首次插件安装1. 选择推荐的插件进行安装(首次建议使用)2. 安装推荐的插件下载中二、企业级推荐插件安装2.1.2.…

OpenStack绝非昨日黄花 | 人物志

戳蓝字“CSDN云计算”关注我们哦!人物志:观云、盘点、对话英雄。以云计算风云人物为核心,聚焦个人成长、技术创新、产业发展,还原真实与鲜活!OpenStack,这个迄今为止最为成功的开源项目,已经走过…

PyQt5和Qt designer的详细安装教程

Qt designer界面和所有组件功能的详细介绍参考:https://blog.csdn.net/qq_43811536/article/details/135186862?spm1001.2014.3001.5501 目录 0. 写在前面1. Anaconda创建虚拟环境2. 安装PyQt5和Qt designer3. 测试安装成功 0. 写在前面 Qt Designer是Qt提供的一种…

OpenGL ES glut glew glfw glad freeglut

目录 一.简介 1.freeglut2.glew3.glut4.glfw5.glad 二.分类 1.窗口管理2.函数加载 三.组合使用 1.freeglut glew2.glfw glew3.glfw glad 四.猜你喜欢 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 基础 零基础 OpenGL ES 学习路线推荐 : OpenGL…