Trails

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::
  1. GLSurfaceView 和 GLSurfaceView.Renderer,前者在Activity里实例化用来setContentView,后者在前者构造时实例化用来setRenderer,
    getApplication()用来做context,都set完以后,就等着这两个实例的事件函数被Android系统之后执行的代码调用(所以这两个类应该继承使用,以重载事件响应函数)。
  2. GLSurfaceView可以捕获触摸屏事件,而GLSurfaceView.Renderer则需要实现onSurfaceCreated、onDrawFrame、onSurfaceChanged三个函数。
  3. onSurfaceCreated,在GLSurfaceView创建时被调用一次,所以里面可以放只执行一次的代码,例如设置环境变量或初始化图形对象;
    onDrawFrame,在每一次GLSurfaceView redraw的时候被调用,这个函数是主要的绘图代码执行点;
    onSurfaceChanged,在GLSurfaceView size改变或设备屏幕方向变化时被调用,例如从横拿手机变成竖着拿。应该在这个函数里调整绘图的内容。
  4. OpenGL APIs,javax.microedition.khronos.opengles包提供标准的OpenGL ES 1.0/1.1实现;
    android.opengl包提供OpenGL ES 1.0/1.1更高性能的实现;
    android.opengl.GLES20提供OpenGL ES 2.0接口,需要API Level 8以上。
  5. 在AndroidManifest.xml文件里声明应用程序对OpenGL版本和材质压缩格式的需求。
posted on 2012-11-03 14:36  mrr  阅读(158)  评论(0)    收藏  举报