俺发现在某些android手机上跑不满60帧(FPS只有40左右),遂查看JAVA代码。Cocos2dxRender.java 的 onDrawFrame函数。
通过加println,俺发现Cocos2dxRenderer.nativeRender();这一句的耗时在6ms左右。
这一句应该是c++的一帧耗时,自然包括了CCDirector::drawScene诸如此类。
6ms很短,应该不是问题所在。
真正的问题在于,onDrawFrame和上一次onDrawFrame之间的时间间隔达到了25ms左右。
想再深入查已经没有代码可看了。
遂请教各位大师, 请问是否能理解为,在这些android手机上,是卡在GPU而非CPU吗?俺如何让app帧率达到接近60?
另,一帧里,draw的次数(g_uNumberOfDraws)也只不过在50左右。