前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >什么岗位需要学习 OpenGL ES ?说说 3.X 的新特性

什么岗位需要学习 OpenGL ES ?说说 3.X 的新特性

作者头像
字节流动
发布2024-05-27 17:10:18
1310
发布2024-05-27 17:10:18
举报
文章被收录于专栏:字节流动

什么是 OpenGL ES

OpenGL ES 是一种为嵌入式系统和移动设备设计的3D图形API(应用程序编程接口)。它是标准 OpenGL 3D 图形库的一个子集,专门为资源受限的环境(如手机、平板电脑、游戏机和其他便携式设备)进行了优化。

由于其在移动设备上的广泛适用性,OpenGL ES是学习移动3D图形编程的重要工具之一。

随着技术的发展,新的图形 API(如 Vulkan 和 Metal )也开始在移动平台上获得关注,但 OpenGL ES 仍然是一个重要的基准和学习起点。

为什么学习 OpenGL ES

音视频开发,渲染引擎,游戏开发,VR(XR),图像视频特效,这些方向的岗位都要求掌握 OpenGL 开发。

OpenGL 岗位需求

OpenGL ES 3.X 有什么新特性?

纹理

  • 2D 纹理数组和 3D 纹理,保存一组 2D 纹理的纹理目标。
  • sRGB 纹理,通常用于存储和显示经过 sRGB gamma 校正的图像,以获得更准确和更自然的颜色显示效果。
  • 浮点纹理,常用于计算着色器(Compute Shader)

着色器

几何形状

  • 变换反馈(Transform Feedback)可以在缓冲区对象中捕捉顶点着色器的输出。
  • 多实例渲染。OpenGL ES 3.0 引入了 glDrawArraysInstanced 和 glDrawElementsInstanced 函数,它们允许开发者在不同的位置上绘制多个具有相同网格的物体,每个物体可以有不同的变换、纹理和其他属性。这种技术可以显著提高渲染大量相似物体(如粒子系统、草叶、树木等)的效率。

缓冲区对象

帧缓冲区

OpenGL ES 3.x 着色器语言规范变化

OpenGL ES 2.0 着色器脚本

OpenGLES 3.x 着色器脚本

其中,#version 300 es 为 OpenGL ES 3.0 版本声明,3.0 中使用 in 和 out 关键字取代 attribute 和 varying ,layout 关键字直接为脚本中的属性指定位置,为属性赋值变成了:

而原来 2.0 的赋值方式为:

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-05-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 字节流动 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 为什么学习 OpenGL ES
  • OpenGL 岗位需求
  • OpenGL ES 3.X 有什么新特性?
    • 纹理
      • 着色器
        • 几何形状
          • 缓冲区对象
            • 帧缓冲区
              • OpenGL ES 3.x 着色器语言规范变化
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档