OpenGL

Android通过OpenGL,特别是OpenGL ES API,来支持高级的2D或3D绘图。OpenGL是一个跨平台的接口,它为3D硬件图像处理提供了一个标准的软件接口。OpenGL ES是OpenGL的一个专门为嵌入式设备而设计的。从Android1.0开始,Android就支持OpenGL ES1.0以及1.1。从Android2.2开始,android框架开始支持OpenGL ES 2.0.
注意:由Android框架提供的API跟J2ME JSR239中的OpenGl ES API.但是并不是完全一样的,参数有改变。
The Basics
Android既通过框架的API来支持OpengGL,也通过NDK来支持。这里我们主要讨论Android 框架接口。要了解NDK相关的信息,查看 Android NDK.
要通过OpenGLES来创建和操作图形,Android框架中有两个基本的类: GLSurfaceView and GLSurfaceView.Renderer.如果你的目地是在你的应用中使用OpenGL,你的首要目地是要了解在你的Activity中实现这些类.
GLSurfaceView
这是一个View,你可以在上面使用OpengGL的API来绘制和操作,和SurfaceView类似。你可以通过创建一个GLSurfaceView的实例,并添加一个Renderer到里面来使用他。但是,如果你想捕获触摸屏事件,你需要继承GLSurfaceView类来实现触摸监听接口。Responding to Touch Events培训课程有提到。
GLSurfaceView.Renderer
这个接口定义了在GLSurfaceView中绘制图形要使用的方法。你必须单独实现该接口为一个独立的类,并且通过GLSurfaceView.setRenderer()来把它设置到你的GLSurfaceView上面。
GLSurfaceView.Renderer 接口需要你实现如下方法:
onSurfaceCreated():系统会在创建GLSurfaceView的时候调用该方法一次。我们在这个方法里面处理只需要发生一次的动作,如设置OpenGL的环境 变量已经初始化OpenGL图像对象。
onDrawFrame()
系统回调该方法,在每次重绘GLSurfaceView的时候。使用这个方法来作为绘制图形(或重绘)对象的主要点。
onSurfaceChanged():
当GLSurfaceView变化的时候,系统回调该方法。这个变化包括GLSurfaceView的大小或者设备屏的方向变化。例如,当系统从竖屏变为横屏的时候,系统会调用这个方法。使用这个方法来使GLSurfaceView做相应的改变.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值