加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Cocos2D中的Framerate状态

发布时间:2020-12-14 16:37:12 所属栏目:百科 来源:网络整理
导读:对于额外绘制调试物理引擎的支持,Cocos2D同样可以绘制概述计数器,尤其是帧速率(framerate)显示. 为了启用这些概述计数器标签,你只需添加如下一行代码,比如说在AppDelegate.m里: [CCDirector sharedDirector].displayStats = YES; Cocos2D将在左下角会绘制3个

对于额外绘制调试物理引擎的支持,Cocos2D同样可以绘制概述计数器,尤其是帧速率(framerate)显示.

为了启用这些概述计数器标签,你只需添加如下一行代码,比如说在AppDelegate.m里:

[CCDirector sharedDirector].displayStats = YES;

Cocos2D将在左下角会绘制3个标签,从上至下依次为:

  • 绘制调用(draw call)计数:绘制调用一般发生在OpenGL每次需要绘制一个不同纹理的时候,但是可能也有其他原因导致绘制调用.每个绘制调用会引起性能下降,所以目标是该调用尽可能少.可以用Sprite Sheet去实现这个目的,精灵Sheet可以合并多个图片到一个纹理中,从而使得减少Sprite Sheet的数量.在这个例子中绘制调用为一个合理低的值12,你将看到性能急剧恶化如果绘制调用数量接近或超过100.
  • 秒每帧(Seconds per frame):其表示完成update循环每帧的平均值,其中包括处理游戏逻辑,物理引擎和渲染.为了达到60帧每秒(fps),该值必须少于或等于0.0166(1/60).如果你的fps为30则时间加倍.该值主要应用的地方为检查发生绘制掉帧之前还可以添加多少游戏逻辑.
  • 帧每秒(Frames per second):在iOS模拟器中因为其使用软件渲染所以你会看到fps非常低,但是在实际设备上可以运行到最多60fps.同样注意该值是最近帧的平均值,所以如果fps为45着实际意味着其中一半的帧在0.0166秒中渲染完毕(60fps)而另一半会占用更多时间(30fps).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读