OpenGL版本对应GLSL

OpenGL(Open Graphics Library)是用于渲染2D、3D矢量图形的跨编程语言、跨平台的编程图形程序接口(API)。

OpenGL 1.0~OpenGL 1.5是经典的固定管线时代;OpenGL 2.0~OpenGL 2.1是固定管线和可编程管线并存的时代;OpenGL 3.0~OpenGL 4.x开始是可编程管线崛起的时代。

核心模式:
在OpenGL的发展历程中,总是兼顾向下兼容的特性,但是到了一定的程度之后,部分旧有的OpenGL API不再适应时代的需要,在OpenGL 3.0时提出了profile这个概念,OpenGL 3.2真正划分为两种profile。
Core Profile:想要支持新版本的OpenGL必须实现的拓展,只包含最新的Shader相关的函数,程序必须使用Shader编写。
Compatibility Profile:可选的扩展,兼容之前OpenGL1.X的固定管线的内容。

OpenGL版本号 GLSL版本号 发布时间
1.0 1992年1月
1.1 1997年1月
1.2 1998年3月
1.3 2001年8月
1.4 2002年7月
1.5 2003年7月
2.0 110 2004年9月
2.1 120 2006年7月
3.0 130 2008年8月
3.1 140 2009年3月
3.2 150 2009年8月
3.3 330 2010年3月
4.0 400 2010年3月
4.1 410 2010年7月
4.2 420 2011年8月
4.3 430 2012年8月
4.4 440 2013年7月
4.5 450 2014年8月
4.6 460 2017年7月

OpenGL ES (OpenGL for Embedded Systems) 是OpenGL 三维图形 API 的子集,为兼容移动端和嵌入式平台设计。

OpenGL ES 1.x 针对固定管线硬件,OpenGL ES 2.x 3.x针对可编程管线硬件。

PS:OpenGL规范产生时由OpenGL架构评审委员会(ARB)维护。ARB由一些对创建一个统一的、普遍可用的API特别感兴趣的公司组成。在出现可编程管线的时代,OpenGL因为OpenGL ARB的臃肿而一度落后,取而代之的是Khronos Group管理的精简的OpenGL ES流行;最后ARB决定将OpenGL的接力棒交给Khronos Group。

OpenGL ES 版本号 GLSL ES 版本号 发布时间 对应OpenGL 版本号
1.0 2003年7月 1.3
1.1 2004年8月 1.5
2.0 100 2007年3月 2.0
3.0 300 2012年8月 4.2
3.1 310 2014年3月 4.3
3.2 320 2015年8月 4.5
posted @ 2024-01-19 14:34  学徒啊黑  阅读(19)  评论(0编辑  收藏  举报