http://www.eoeandroid.com/forum.php?mod=viewthread&tid=155420
原文转自:http://www.cnblogs.com/sunnychuh/archive/2011/07/20/2112110.html
官方网站:http://www.khronos.org/opengles
博客链接:http://www.cnblogs.com/dwinter/
一、设置OpenGL ES视图
设置OpenGL视图并不难,Android上也较简单。我们一般只需要2个步骤。
GLSurfaceView
我们要为GLSurfaceView提供一个专门用于渲染的接口
public void setRenderer(GLSurfaceView.Renderer renderer)
GLSurfaceView.Renderer
GLSurfaceView.Renderer是一个通用渲染接口。我们必须实现下面的三个抽象方法:
// 画面创建
public void onSurfaceCreated(GL10 gl, EGLConfig config)
// 画面绘制
public void onDrawFrame(GL10 gl)
// 画面改变
public void onSurfaceChanged(GL10 gl, int width, int height)
onSurfaceCreated
在这里我们主要进行一些初始化工作,比如对透视进行修正、设置清屏所用颜色等。
onDrawFrame
绘制当前画面
onSurfaceChanged
当设备水平或者垂直变化时调用此方法,设置新的显示比例
案例代码:
实现renderer需要更多的设置
只要加入这段代码到OpenGLDemo class里就可实现全屏
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
设置完视图后,即可编译运行,可以看到一个“漂亮”的黑屏 = =!