美文网首页
OpenGL ES 简介

OpenGL ES 简介

作者: 猿说编程 | 来源:发表于2022-09-12 07:28 被阅读0次

    目录

    零基础 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 编程

    一.前言

    1.WebGL

    WebGL 是基于 OpenGL ES 2.0 的 Javascript API,被各大 web 浏览器厂商广泛支持,使用 JavaScript 语言提供 API ,不使用插件的情况下在兼容的 web 浏览器的 Canvas 上呈现交互式 3D 图形;

    因此对于 OpenGL ES 2.0 熟悉的程序员,掌握 WebGL 是完全没有什么障碍的;反过来,如果仅仅是 Web 前端技术熟悉的话,那么至少要补上 OpenGL 和 GLSL 这两课。

    2.OpenCV

    跨平台开源计算机视觉库,图像处理和计算机视觉方面的很多通用算法,应用领域:

    • 人机互动;
    • 物体识别;
    • 图像分割;
    • 人脸识别;
    • 动作识别;
    • 运动跟踪;
    • 机器人;
    • 运动分析;
    • 机器视觉;
    • 结构分析;
    • 汽车安全驾驶;

    OpenCV 和 OpenGL 区别就在于:

    OpenCV 是从图像到数据,主要是提供图像处理和视频处理的基础算法库,还涉及一些机器学习的算法。比如你想实现视频的降噪、运动物体的跟踪、目标(比如人脸)的识别这些都是 CV 的领域;专注于从采集到的视觉图像中获取信息,是用机器来理解图像;

    OpenGL 是从数据到图像;主要用于生成二维、三维图像,绘制合适的视觉图像给人看;

    3.Direct3D

    Direct3D 是由微软公司创建的多媒体编程接口。由 C++ 编程语言实现,遵循 COM 。被广泛使用于 Microsoft Windows、Microsoft XBOX、Microsoft XBOX 360 和 Microsoft XBOX ONE 电子游戏开发,并且只能支持这些平台。

    4.OpenGL

    OpenGL(全写 Open Graphics Library)是个定义了一个跨编程语言、跨平台的应用程序接口(API)的规格,它用于生成二维、三维图像。OpenGL 广泛用于 PC 平台(windows、Linux、Unix、Mac OS X);

    5.OpenGL ES 和 OpenGL

    早先定义 OpenGL ES 是 OpenGL 的嵌入式设备版本,用于移动端平台(Android、iOS),但由于嵌入式设备要求的是高性能,所以一些其它纯追求高性能的设备也开始用这种 API 方式;

    OpenGL ES 是 OpenGL 的子集,区别在于 OpenGL ES 删减了 OpenGL 一切低效能的操作方式,有高性能的决不留低效能的,即只求效能不求兼容性。(即:OpenGL ES 能实现的,OpenGL 也能实现;OpenGL 部分 API,OpenGL ES 不支持)

    二.OpenGL ES 跨平台

    1.OpenGL ES

    OpenGL ES 是个与硬件无关的软件接口,可以在不同的平台如 Windows、Unix、Linux、MacOS、IOS、Android 之间进行移植。因此,支持 OpenGL ES 的软件具有很好的移植性,可以获得非常广泛的应用。

    2.Metal

    在 WWDC 2014 上,Apple 为游戏开发者推出了新的平台技术 Metal,该技术能够为 3D 图像提高 10 倍的渲染性能,并支持大家熟悉的游戏引擎及公司。Metal 是一种低层次的渲染应用程序编程接口,提供了软件所需的最低层,保证软件可以运行在不同的图形芯片上。Metal 提升了苹果 A 系列处理器效能,让其性能完全发挥。

    Metal 是一项全新的技术,专为开发高临场感主机游戏的开发者打造,可让开发者全力发挥芯片的性能。虽然苹果一直强调 Metal 很强悍,但是依然与 DX 一样,这不是一个跨平台支持的 API,只针对 iOS、macOS 苹果自家的操作系统。

    3.**Vulkan **

    Vulkan 是一个免费开放的、跨平台的、底层的图形 API,Vulkan 支持的操作系统包括:Linux, Windows XP to Windows 10, android 等。

    Vulkan 的最大任务不是竞争 DirectX ,而是取代 OpenGL,Vulkan 在改善功耗、多核优化提升绘图调用上之于前辈 OpenGL 有着非常明显的优势,但是 Vulkan 跟偏向于底层,比 OpenGL 更加复杂!建议是:OpenGL 和 Vulkan 都要学!

    三.OpenGL ES 使用场景

    1. 图片处理。比如图片色调转换、美颜等。视频滤镜、音频滤镜.
    2. 摄像头预览效果处理。比如美颜相机、恶搞相机等。
    3. 视频处理。摄像头预览效果处理可以,这个自然也不在话下了。
    4. 3D 游戏。比如神庙逃亡、都市赛车等。

    四.OpenGL/OpenGL ES/WebGL

    五.猜你喜欢

    1. OpenGL ES 简介
    2. OpenGL ES 版本介绍

    本文由博客 - 猿说编程 猿说编程 发布!

    相关文章

      网友评论

          本文标题:OpenGL ES 简介

          本文链接:https://www.haomeiwen.com/subject/qkbcortx.html