Android GLSurfaceView.Renderer

GLSurfaceView.Renderer

一个普通的渲染器接口

GLSurfaceView  客户端通常创建他们自己实现了这个接口的类,然后调用 setRenderer(GLSurfaceView.Renderer)  去注册这个GLSurfaceView  的渲染器.

Threading

这个渲染器将在一个分离的线程中被调用,因此,渲染性能是和UI线程解耦的.用户通常需要从UI线程中和这个渲染器进行通讯,因为在那里会收到输入事件.客户端可以使用java标准的线程间通信来完成这个操作,或者也可以直接调用queueEvent(Runnable) 这个便利的方法.

EGL Context Lost

在有些情况下,EGL渲染的context将会被丢失.这通常发生在当设备处于苏醒状态转变为待机状态的情况下.EGL渲染的context丢失,所有和Context进行关联的OpenGL资源(例如,纹理)将被自动删除.为了保持渲染的正确,一个渲染器必须重新创建任何它任然需要的丢失的资源. onSurfaceCreated(GL10, EGLConfig)  方法是一个做这些事情的好地方.

onSurfaceCreated(): 当创建 GLSurfaceView时,系统调用这个方法.使用这个方法去执行只需要发生一次的动作,例如设置OpenGL环境参数或者初始化OpenGL graphic 对象.

onDrawFrame() 当系统每一次重画 GLSurfaceView 时调用.使用这个方法去作为主要的绘制和重新绘制graphic  对象的执行点.

onSurfaceChanged(): 当 GLSurfaceView  几何学发生改变时系统调用这个方法.包括 GLSurfaceView  的大小发生改变或者横竖屏发生改变.使用这个方法去响应GLSurfaceView 容器的改变.


文章连接:http://blog.csdn.net/murongshusheng/article/details/7565788

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值