opengl es的render的研究
opengl es的render的研究
蚂蚁的世界 发表于3年前
opengl es的render的研究
  • 发表于 3年前
  • 阅读 18
  • 收藏 0
  • 点赞 0
  • 评论 0

新睿云服务器60天免费使用,快来体验!>>>   

在研究Renderer的onDrawFrame函数时,好奇参数GL10类型的gl对象是不是在每次onDrawFrame被执行时都是一个。于是在函数中打日志Log.i(TAG, "[surface_drawed][gl:"+gl+"]");,查看logcat时,发现每次日志都是[surface_drawed][gl:com.google.android.gles_jni.GLImpl@421cc310]。所以断定gl对象每次都是一个。

02-13 11:54:02.823    3522-3538/com.sunhang.opengl I/SimpleRender﹕ [surface_drawed][gl:com.google.android.gles_jni.GLImpl@421cc310]
02-13 11:54:02.839    3522-3538/com.sunhang.opengl I/SimpleRender﹕ [surface_drawed][gl:com.google.android.gles_jni.GLImpl@421cc310]
02-13 11:54:02.856    3522-3538/com.sunhang.opengl I/SimpleRender﹕ [surface_drawed][gl:com.google.android.gles_jni.GLImpl@421cc310]
02-13 11:54:02.872    3522-3538/com.sunhang.opengl I/SimpleRender﹕ [surface_drawed]


我在界面中改变一下GLSurfaceView的布局,Renderer会执行onSurfaceChanged,但是不会执行onSurfaceCreated.

02-13 12:38:30.283    6889-6920/com.sunhang.opengl I/SimpleRender﹕ surface created
02-13 12:38:30.283    6889-6920/com.sunhang.opengl I/SimpleRender﹕ surface changed
02-13 12:38:34.328    6889-6920/com.sunhang.opengl I/SimpleRender﹕ surface changed


在SurfaceView中添加了一个Renderer,研究一下它的onSurfaceCreated和onSurfaceChanged在什么情况下 执行。发现在屏幕关闭和开启后,onSurfaceCreated和onSurfaceChanged不会被执行,在屏幕翻转时,created和 changed会先后被执行。

  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 5
博文 25
码字总数 7187
×
蚂蚁的世界
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: