您当前的位置: 首页 > 技术文章 > 移动开发

OpenGL ES入门指南(一)

作者: 时间:2023-10-01阅读数:人阅读

OpenGL ES入门指南(一) -- 引言

一、OpenGL ES 基础简介
    OpenGL ES(OpenGL for Embedded Systems)是从OpenGL裁剪定制而来的,去除了glBegin/glEnd,四边形(GL_QUADS)、多边形(GL_POLYGONS)等复杂图元等许多非绝对必要的特性。

  • OpenGL 和 OpenGL ES的区别
之所以会推出OpenGL-ES版本 ,主要是应对嵌入式环境和应用的要求。

嵌入式设备一般工作于较恶劣的环境,包括:温度、湿度、振动、冲击、酸碱腐蚀等。例如:中国的酸兩气候就给很多室外电子设备带来了新的难题,中东地区的风沙也使得美军必
须采用更先进的非IT技术来保护他们的电子设备。需要人机界面的嵌入式应用,由于受环境受环境因素的影,一般不能提供有缘电源,在有限的电能限制下工作,如何
以更低的功耗完成人机交互界面,成为OpenGL必须要面对的问题,进而推出了OpenGL-ES标准。应该说在高效完成2D/3D果面的同时,达到了降低功耗的效果。

当然,事物均具有两面性,OpenGL-ES硬加速也有缺点,即增加了设备成本。这方面主要取决于其应用是否需要强劲的性能,即对人机交互界面的更高性能的追求。
OpenGL ES相对OpenGL删减了一切低效能的操作方式,有高性能的決不留低效能的:

>没有double型数据类型,但加入了高性能的定点小数数据类型:

>没有glBegin/glEnd/glVertex,只能用glDrawArrays等

>没有实时将非压缩图片数据转成压缩贴图的功能,程序必须直接提供压缩好的贴图;

二、为什么需要OpenGL或者说OpenGL ES?

OpenGL ES入门指南(一)(图1)

对比相同的算法处理在GPU和CPU上的差异:

OpenGL ES入门指南(一)(图2)

 有了GPU,在手机上面最开始用的跟GPU交互的语言就是OpenGL ES:

OpenGL ES入门指南(一)(图3)

        修图软件早期也有是用OpenGL ES来处理,但是大多数场景还都是C++的算法,直到相机的像素和处理器越来越牛逼,出现了在相机场景下3D贴图等效果。以及开始进行人脸/人体的3D重建(比如瘦脸、瘦身、增高等),再到后面图像和视频的场景也都多了起来。

 OpenGL ES入门指南(一)(图4)

本站所有文章、数据、图片均来自互联网,一切版权均归源网站或源作者所有。

如果侵犯了你的权益请来信告知我们删除。邮箱:licqi@yunshuaiweb.com

标签: 图形渲染 ios
加载中~
如果您对我们的成果表示认同并且觉得对你有所帮助可以给我们捐赠。您的帮助是对我们最大的支持和动力!
捐赠我们
扫码支持 扫码支持
扫码捐赠,你说多少就多少
2
5
10
20
50
自定义
您当前余额:元
支付宝
微信
余额

打开支付宝扫一扫,即可进行扫码捐赠哦

打开微信扫一扫,即可进行扫码捐赠哦

打开QQ钱包扫一扫,即可进行扫码捐赠哦