关于设置游戏帧率的问题

直接说结果吧.

电脑浏览器环境

在60帧电脑屏幕下.
cc.game.setFrameRate(x)方法可以设置任意帧率.(60以内)

在144帧电脑屏幕下
cc.game.setFrameRate(x)方法. 当x不为30和60的时候. 实际帧率就是设定的帧率.
但是, 如果设置 60, 那么实际就是满帧率(144), 设置30就是144的一半72帧.

我想问一下,这个是不是太合理?
因为我没有高帧率的手机. 所以不好测试在手机上的表现.

我想的是,现在有很多手机都是有高刷新率, 我们的游戏也有一些逻辑是在update里面实现的功能.
这个刷新率不同的机器帧率不一样, 那游戏功能很多都会跟着改变了.

当然,我也可以设置成 非 60和30. 这样也能实现不同的机器体验是一样的.
但是这还是不太合理了, 我的目的是把整个游戏固定在60帧.

有没有大佬说说这个事,讨论一下指点一下.

https://developer.mozilla.org/en-US/docs/Web/API/window/requestAnimationFrame

查找引擎源码有关 requestAnimationFrame 的部分, 你就知道为什么 60是 100% 30是 50% 了

我设置为61…

我后来看了源码. 只是我不明白,为什么要这么设计. 这就等于吧60帧和30帧给摘出去了.
这不就等于在一些情况下,这2个帧率就废弃了嘛.

浏览器无法返回当前正确帧率, 只有 requestAnimationFrame 能提供流畅的刷新
其他方式都无法保证时间稳定
感觉这是没有办法的办法