android下的OpenGL图形开发学习【前言】之为什么要学习OpenGL.

来源:互联网 发布:matlab mac 激活 编辑:程序博客网 时间:2024/05/17 06:03

首先来说,我开始写关于OpenGL的博客不是教大家,因为我也是初学者,写博客的目的重在总结和交流.学习目标是,实现跨平台的OpenGL控件,在随后的日子里,我会持续更新相关博客.

今天我开始第一天基于android平台OpenGL学习的旅程,所以先写点简单的内容.

做过android开发的人都知道,我们UI中使用的基本画面元素是View,但是用系统中提供View去实现一个自定义视图存在以下三个缺点:(这里不包括SufaceView和GLsurfaceView)

1,从效率角度讲,View的效率是很低的,为什么?因为它是运行在UI线程的,当我们更新一个View视图我们不得不去占用UI线程,占用UI线程更新View会导致一些问题:比如说更新画面时间一旦过长,UI线程此时被占用就无法响应按键,触屏的事件.

2,View提供除了用系统自带的View视图外,你还可以重写View,但是这些视图实现复杂的效果是很困难的,比如说一些3D控件,带有动画效果的控件等.

3,最后,也是最重要的一个缺点,它是不能跨平台的.比如说你用java语言重写了一个很炫的控件在android平台上面,但是现在系统是ios,你是不能重用这个控件的.

所以基于以上三点,我们需要学习OpenGL去实现自己想要的控件.当然OpenGL不但可以做控件,他可以绘制任何你想要的图像效果,而且它与平台无关,与语言无关,它是一套抽象

的api.很多游戏引擎都是基于它实现的.



0 0
原创粉丝点击