OpenGL_ES是khronos协会从OpenGL裁剪定制而来的,专为手机,游戏机等嵌入式设备而设计。它的接口其实和Open_GL很类似。
OpenGL_ES有几个主要版本,但对游戏开发来说,需要关注的只有两个:
OpenGL_ES_1.x_和OpenGL_ES_2.x
两者的特性和主要区别如下:
OpenGL_ES_1.x:
为固定渲染管线(Fixed_Function)而设计。
子版本包括:1.0,1.1。
1.0从OpenGL_1.3裁减而来;1.1从OpenGL_1.5裁减而来。1.1向下兼容1.0。
经研究,1.1因为更先进,而且相比1.0增加的特性也都很有用,所以基本上不用考虑1.0了。
1.1和1.0的变化不算很大,应该芯片的价格也不会高出很多?当然我并不确定。
1.1的技术规范参见:es_full_spec.1.1.12.pdf
或者:es_cm_spec_1.1.12.pdf(篇幅较短,只叙述了相比OpenGL_1.5的差异)
OpenGL_ES_2.x
为可编程渲染管线(Programmable)而设计。
目前只有2.0这一个子版本,从OpenGL_2.0裁减而来。
和1.x的区别是可以支持vertex和pixel shader,因此能够实现更多的特效。
另外2.0就不再支持1.x里面的固定管线功能了,也就是说2.x并不向下兼容1.x。
技术规范参见:es_full_spec_2.0.22.pdf
或者:es_cm_spec_2.0.22.pdf(篇幅较短,只叙述了相比OpenGL_2.0的差异)
=========================
所以,我们其实就是在1.1和2.0之间做出选择。
1.1就能达到甚至略超过PSP的效果了(PSP实际上是一个PS2的简化版,它也不支持vertex或pixel shader)。
2.x能达到更好的效果(大约接近DX9),但开发复杂程度(包括程序和美术)必然更高。
查新闻发现,AMD于2008年6月12号才率先通过2.0的认证,所以可以认为2.0的芯片还是很先进很高端的,想必这类芯片价格会很高?
总的来说还是一个选择问题:如果希望更低的成本(包括软件和硬件两方面)那就选择1.1,并且其实1.1也已经能实现非常好的效果了;而如果追求最顶尖和图形质量和效果,定位为高端产品,那么就可以选择2.0,但成本和开发周期会很高。
我个人推荐选择1.1的芯片,我认为基本上2.x的接口是针对游戏主机而非掌机设计的,据说PS3就采用了ES_2.x。
毕竟无论是以掌机(或者手机等便携设备)的耗电量,成本,还是屏幕尺寸来看,1.x都更有优势。jsr184标准的硬件实现就是ES_1.x。
即使在以后来看,1.x的芯片由于有着特殊的意义,也不会消亡,khronos官方也声称未来还会推出1.2。
分享到:
相关推荐
OpenGL ES 3.x游戏开发上 下卷案例源程序
OpenGL ES 3.x 游戏开发 上卷 吴亚峰
《OpenGL ES 3.x游戏开发 上卷》的源码, Eclipse工程
Opengl ES 3.x游戏开发(上)的全部源码,可以在eclipse和android studio的环境下运行
opengl es 3.x,书籍,上卷,下卷还有。
内容覆盖了学习OpenGL ES 3.x的必知必会的知识到基于OpenGL ES 3.x实现各种基础特效的技术 ● 介绍了OpenGL ES 3.x渲染管线的知识和使用OpenGL ES 3.x的着色语言 ● 介绍了OpenGL ES 3.x中的光照、纹理映射、3 D ...
OpenGL ES 3.x游戏开发 上卷
OpenGL ES 3.x游戏开发 上卷 吴亚峰 源码, 如果现实乱码,编码方式选择GB2312
OpenGL ES 3.x游戏开发 下卷 ,吴亚峰 学习OpenGL ES很好的书籍。
OpenGL ES 3.x游戏开发 下卷 ,吴亚峰 案例源程序 OpenGL ES 3.x游戏开发 下卷 ,吴亚峰 案例源程序
Opengl Es3.x游戏开发上卷源码 这是一部分因为上传限制
OpenGL ES 3.x游戏开发 下卷 ,吴亚峰
OpenGL ES 3.x游戏开发 上卷 ,吴亚峰.pdf
本书共分14章,内容涵盖了从OpenGL ES 3.x着色器的使用技巧到高级光影效果以及物理模拟问题的解决。介绍了OpenGL ES 3.x中的各种缓冲区对象和顶点着色器与片元着色器的使用技巧,以及高级光影效果的实现,如凹凸映射...
OpenGL ES 3.x游戏开发 上卷 吴亚峰
OpenGL ES 3.x游戏开发 上卷 ,吴亚峰 学习OpenGL ES 3.x很好的书籍
opengl es 3.x 下卷,网上下的,别人太贵了,哥给最低分
https://blog.csdn.net/likesyourhttps://blog.csdn.net/likesyourhttps://blog.csdn.net/likesyour