OpenGL ES 2.0 编程指南 学习

【原理+实战+视频+源码】抖音,快手大热背后——Android 贴心的音视频学习指南来咯! 导语 Android 音视频开发这块目前的确没有比较系统的教程或者书籍,网上的博客文章也都是比较零散的。只能通过一点点的学习和积累把这块的知识串联积累起来。 音视频的开发,往往是比较难的,而这个比较难的技术就是NDK里面的技术。音视频/高清大图片/人工智能/直播/抖音等等这年与用户最紧密,与我们生活最相关的技术一直都在寻找最终的技术落地平台,以前是windows系统,而现在则是移动系统了,移动系统中又是以Android占比绝大部分为前提,所以AndroidNDK技术已经是我们必备技能了。 要学习好NDK,其 阅读详情

OpenGL ES 2.0 Programme Guide 

基础内容学习小结

1. OverView 

ES2.0绘图管线示意图:

VertexArray 绘图场景中所有的物体空间位置由点坐标数组构成。

VertexShader: 对每个点的位置进行变换计算光照方程式生成每点的颜色,生成或者变换纹理坐标。基本结构示意图:

Attributes  ---- 采用点向量数组形式传入的每个点的数据。

Uniforms  ---- vertex shader 使用常量数量。

Sampler  ---  表示纹理的特殊常量。可选。

Varying Variable -- Vertex Shader的输出变量,作为Fragment Shader的输入。必须与Fragment Shader中的输入Varying一一对应。

gl_Position 是每个点固有的Varying .表示点的空间位置。

Primitive Assembly : 管线中这个流程是对所有的点数据进行点线面等基础图元的组装。这个过程会对所有的图元进行剪切和筛选。对于不在视区空间中的部分进行剪切,对于不可见的面进行筛选。

Rasterization : 光栅化的过程就是对所有的经过Primitive Assembly图元转换成屏幕上可以显示的二维Fragment。 

Fragment Shader:通过shader程序对Fragment进行处理。基本结构如下图:

Per-Fragment Operations :每个Fragment的操作。每个Fragment在屏幕上都有一个显示坐标(wx,wy)。基本流程:

这些流程基本是一些在frame buffer 中的2D像素操作。 

2  OPENGL ES 2.0 1.1的兼容性

2.01.1 不兼容。

1.1 几乎可看作是OPENGL的子集。采用固定管线编程。

2.0 则全部采用Shader语言来操作。

3  EGL 

ES2.0绘图需要一个上下文context 和 绘图surface . Context用来存储ES2.0的管线状态机,surface则表示绘图的缓冲及其属性。EGL是一个介于OPENGL ES 绘图语言和本地视窗系统之间的中间层。因此EGL使得OPENG ES 的平台无关性。

基本流程:

1) Query the displays that are available on the device and initialize them. 

2) Create a rendering surface.

3) Create a rendering context.   Attach context before start doing graphic .

Eg:

eglDisplay = eglGetDisplay((EGLNativeDisplayType)0); //获取默认显示设备

eglInitialize(eglDisplay, &iMajorVersion, &iMinorVersion); //初始化,返回版本号

eglChooseConfig(eglDisplay, pi32ConfigAttribs, &eglConfig, 1, &iConfigs); //选择一个配置。eglConfig是返回的配置,pi32ConfigAttribs是输入的配置属性,是一个int数组,以key-value的顺序存放属性和值。

eglSurface = eglCreateWindowSurface(eglDisplay, eglConfig, (EGLNativeWindowType) NULL, NULL);//根据egl配置创建显示Surface

eglContext = eglCreateContext(eglDisplay, eglConfig, NULL, pi32ContextAttribs); //根据egl配置和上下文配置创建上下文。pi32ContextAttribs也是一个int数组,以key-value的顺序存放属性和值。

eglMakeCurrent(eglDisplay, 

OpenGL ES 2.0 编程指南 中文版》PDF OpenGL ES 2.0 编程指南 中文版》 立即下载

相关推荐

OpenGL ES 2.0 编程指南 中文版》.pdf

OpenGL ES 2.0 编程指南 中文版, 留个备份,好东西。

opengl es 2.0编程指南_《OpenGL编程指南(原书第8版)》——计算着色器

摘要:《OpenGL编程指南(原书第8版)》针对OpenGL4.3版本的各种特性进行了全新阐述,并全面介绍了OpenGLOpenGL着色语言,第一次将着色器的技术与函数功能为中心的经典技术介绍相结合,呈现最新的OpenGL编程技术。概述由于图形处理器每秒能够进行数以亿计次的计算,它已成为一种性能十分惊人的器件。过去,这种处理器主要被设计用于承担实时图形渲染中海量的数学运算。然而,其潜在的计算能力...

weixin_39898550的博客 509

OpenGL ES 2.0 编程指南 中文版》

OpenGL ESOpenGL ES 2.0 编程指南 中文版》2.0 编程指南 中文版》

OPENGL ES 3.0编程指南》原书第2版 中文版 学习笔记

OPENGL ES 3.0编程指南》原书第2版 中文版 学习笔记 去发现同类优质开源项目:https://gitcode.com/ 此仓库提供《OPENGL ES 3.0编程指南》原书第2版 中文版的学习笔记资料,旨在帮助开发者更好地理解和掌握OPENGL ES 3.0的相关知识和应用。 资源简介 标题:《OPENGL ES 3.0编程指南》原书第2版 中文版 笔记1 内容摘要: 窗口创建:...

gitblog_06705的博客 293

opengl es2.0编程指南_《图形编程技术学习》(十一)OpenGL基本语法

.OpenGL 函数的命名规则1.void glVertex3fv(Glfloat *vertex);2.前缀gl,glu,glut ---- 该函数属于哪个函数库3.后缀. 2, 3, 4 -----参数的维度. b, s, l, f, d, ub, us, ui------参数的数据类型. v ---- 以数组方式传递参数二.OpenGL的数据类型数据类型名称 GLbyte,GLi...

weixin_39745724的博客 196

深入掌握OpenGL ES 3.0:探索《OPENGLES3.0编程指南》原书第2版中文版学习笔记

深入掌握OpenGL ES 3.0:探索《OPENGLES3.0编程指南》原书第2版中文版学习笔记 去发现同类优质开源项目:https://gitcode.com/ 项目核心功能/场景 掌握OpenGL ES 3.0核心知识,通过实例解析学习编程技巧。 项目介绍 在计算机图形学领域,OpenGL ES 3.0是一个重要的图形API,广泛应用于嵌入式系统和移动设备。今天,我们将介绍一个开源项目——《...

gitblog_06778的博客 386

opengl es 3.0编程指南(原书第2版)_《图形编程技术学习》(九)OpenGL的功能及其两种学习路线...

.OpenGL是什么?.Open Graphics Library(开放的图形编程库).调用图形硬件的程序接口 .大约150个函数组成,用户可以调用来完成各种绘图任务二.OpenGL能做什么?.变换(几何变化,投影,视口变换).光照与材质.纹理映射.图形功能(anti-aliasing(反混淆),fog, blending(混合)....特效(Depth Cue(深度暗示),Motion...

weixin_30940057的博客 751

OpenGLES2.0ProgrammingGuidePDF及全平台源码:掌握OpenGL ES 2.0编程的艺术

OpenGLES2.0ProgrammingGuidePDF及全平台源码:掌握OpenGL ES 2.0编程的艺术 去发现同类优质开源项目:https://gitcode.com/ 项目介绍 在图形程序开发领域,OpenGL ES 2.0无疑是一个重要的技术标准,它为移动设备和其他嵌入式系统提供高性能的2D和3D图形渲染能力。《OpenGL ES 2.0 Programming Guide》PDF...

gitblog_06739的博客 926

OpenGL+ES+2.0+编程指南+中文版

OpenGL+ES+2.0+编程指南+中文版,讲解opengles的好书

OpenGL ES 2.0 Programming Guide中文版.pdf

OpenGL ES 2.0 Programming Guide中文版!

OpenGL ES 2.0游戏与图形编程:适用于iOS和Android 完整版 pdf

作者: (美) 马鲁基-弗伊诺(Marucchi-Foino, R.) 著 出版社: 清华大学出版社 副标题: 适用于iOS和Android 原作名: Game and Graphics Programming for iOS and Android with OpenGL ES 2.0 译者: 王净 译. 出版年: 2014-2 页数: 288 装帧: 平装 ISBN: 9787302352303

OpenGL ES 2.0 Programming Guide》PDF及全平台源码

OpenGL ES 2.0 Programming Guide》PDF及全平台源码 去发现同类优质开源项目:https://gitcode.com/ 欢迎来到本资源库!这里为您提供《OpenGL ES 2.0 Programming Guide》的PDF版本以及对应的书籍源码。本书是OpenGL ES 2.0编程的权威指南,适用于希望在多个平台上进行图形程序开发的朋友们。 资源简介 PDF书籍...

gitblog_06776的博客 767

【亲测免费】 OpenGL ES 3.0编程指南2版[中文][PDF]

OpenGL ES 3.0编程指南2版[中文][PDF] 【下载地址】OpenGLES3.0编程指南2版中文PDF 本仓库提供《OpenGL ES 3.0编程指南2版》的中文PDF版本下载。该书由资深OpenGL技术专家亲笔撰写,全面介绍OpenGL ES 3.0的各种特性及新增功能。书中通过大量已经编译和测试过的...

gitblog_09761的博客 980

OPENGL ES 3.0编程指南2版 中文版》资源下载介绍

OPENGL ES 3.0编程指南2版 中文版》资源下载介绍 去发现同类优质开源项目:https://gitcode.com/ 《OPENGL ES 3.0编程指南2版 中文版》是关于OPENGL ES编程经典之作。OpenGL ES (OpenGL for Embedded Systems) 是 OpenGL 三维图形 API 的子集,专门为手机、PDA和游戏主机等嵌入式设备设计。这...

gitblog_06770的博客 345

OpenGL ES 2.0 编程指南 中文版》PDF下载

OpenGL ES 2.0 编程指南 中文版》PDF下载 去发现同类优质开源项目:https://gitcode.com/ 此仓库提供了《OpenGL ES 2.0 编程指南 中文版》的PDF资源下载,这是一本深入介绍OpenGL ES 2.0编程的书籍,适合对移动设备图形编程感兴趣的读者学习和参考。 书中详细讲解了OpenGL ES 2.0的基本概念、渲染管线、着色器编程、纹理处理等关键知识,...

gitblog_06726的博客 347

b样条曲面绘制 opengl_《图形编程技术学习》(十一)OpenGL基本语法

.OpenGL 函数的命名规则1.void glVertex3fv(Glfloat *vertex);2.前缀gl,glu,glut ---- 该函数属于哪个函数库3.后缀. 2, 3, 4 -----参数的维度. b, s, l, f, d, ub, us, ui------参数的数据类型. v ---- 以数组方式传递参数二.OpenGL的数据类型数据类型名称 GLbyte,GLi...

weixin_39874366的博客 375

OpenGLES 2.0 Programming Guide》学习笔记(持续更新)

OpenGLES 2.0 Programming Guide》 学习笔记 1 介绍OpenGLES gles由KhronosGroup创立,目前有3个版本1.0,1.1(统称1.x)和2.0ES1.0,1.1由OpenGL1.3,1.5继承而来,ES2.0OpenGL2.0继承而来。 OpenGLES 2.0的specifications有两份:theOpenGL ES 2.0 ...

v5qqcom 423
下一篇: OMAP3530下bc-cat 编程
beelike
博客等级 码龄18年 8粉丝 2原创
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值