首页 > 其他 > 详细

openGL error 跟踪

时间:2016-12-27 13:28:10      阅读:230      评论:0      收藏:0      [点我收藏+]

opengGL的开发比较麻烦的一点就是错误查找不好跟踪。glGetError()会返回最前面的一个错误码,注意这不一定是最后的gl函数调用所产生的错误码。opengl的错误码是按照先进先出的方式处理。

 

我在开发安卓播放器(MediaCodec + opengl)的时候遇到很糗的一件事,在rk3228运行的时候,黑屏,Trace出来一个warning:

bingTextureImage:clearing gl error 0x500. 开始的时候一直以为是glBindTexutre的错误,根据错误码,好像是不支持OES类型的纹理导致,以为是不是这个芯片不支持,很长时间,直到我看到了SurfaceTexture.UpdateTexImage()源代码才知道,报的警告是这个函数处理的,但是并不是这个函数有问题,而是前一次调用opengl的渲染函数(一堆)时产生的,它在这里做了清除(所以叫clearing)。所以查错集中在渲染部分,一个个的查,终于找到问题了。

 

有时候修正问题并不难,难的是“定位”问题在哪里,就行治病一样,你得知道病灶在哪,然后才能治病啊!

openGL error 跟踪

原文:http://www.cnblogs.com/slowtech/p/6225294.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!